Бул макалада биз орнотуу жана конфигурациялоо процессин карап чыгабыз certbot Linux серверинде. Биз майда-чүйдөсүнө чейин түшүндүрүп берет Let's Encrypt SSL/TLS сертификатын кантип алууга болот домениңиз үчүн. Биз ошондой эле аны веб-серверге (мисалы, Nginx же Apache) кантип орнотууну жана веб-ресурсуңуз менен үзгүлтүксүз коопсуз туташууну камсыз кылуу үчүн автоматтык түрдө тастыктамаларды жаңыртууларды кантип орнотууну сүрөттөп беребиз.
certbot автоматтык түрдө алуу жана жаңыртуу үчүн иштелип чыккан акысыз, ачык булак куралы SSL/TLS сертификаттары. Ал сервер менен кардар ортосундагы байланышты камсыз кылууда, маалыматтарды уруксатсыз кирүүдөн коргоодо маанилүү ролду ойнойт. Certbot SSL сертификатын орнотууну жана жаңылоо процессин жеңилдетет. Сертификат коопсуздукту гана жогорулатпастан, колдонуучунун веб-ресурсуңузга болгон ишенимин арттырып, ошону менен сайттын аброюн да, анын издөө системасынын рейтингин да жакшыртат.
Certbot орнотулууда
Certbot демейки боюнча көпчүлүк дистрибуцияларда камтылган, ошондуктан аны орнотуу үчүн Debian / Ubuntu системалар үчүн, сиз жөн гана топтом тизмесин жаңыртышыңыз керек:
apt update
Андан кийин, орнотуу жараянын баштоо:
apt install certbot
Certbot веб-сервер үчүн сертификатты орнотууну жана конфигурациялоону жеңилдеткен плагиндерди колдойт. Бул плагиндерди орнотуу үчүн, тиешелүү буйрукту колдонуңуз:
apt install certbot python3-certbot-nginx # for Nginx
apt install certbot python3-certbot-apache # for Apache
үчүн орнотуу процесси Кызыл шляпа системалары (мисалы RHEL, CentOS, Fedora) бир аз башкача. Башында, сиз EPEL репозиторийсин кошушуңуз керек:
yum install epel-release
Андан кийин куралды орнотуу:
yum install certbot
Ошо сыяктуу эле, белгилүү бир веб-сервер үчүн плагинди тандоо мүмкүнчүлүгү бар:
yum install python3-certbot-nginx # for Nginx
yum install python3-certbot-apache # for Apache
Орнотуудан кийин, сиз дароо сертификатты алууга өтсөңүз болот.
SSL сертификатын алуу
Бул бөлүмдө биз белгилүү бир веб-серверден көз карандысыз сертификат алуу процессин талкуулайбыз, андан кийин Nginx жана Apache үчүн сертификатты орнотуу процессин сүрөттөйбүз. Бирок, адегенде программанын синтаксисин жана функционалдуулугун түшүнүү зарыл. Ал төмөнкүдөй көрүнөт:
certbot command option -d domain
Негизги буйруктарга төмөнкүлөр кирет:
certbot certonly - Сертификатты чыгарып алат, бирок аны орнотпойт.certbot certificates - Бул буйрук бардык орнотулган сертификаттардын тизмесин көрсөтөт.certbot renew - Колдонуудагы күбөлүктүн мөөнөтүн узартат.certbot revoke - колдонуудагы күбөлүктү жокко чыгарат.certbot delete - Учурдагы сертификатты жок кылат.
Эң көп колдонулган варианттар:
--nginx - Доменди текшерүү үчүн Nginx конфигурация скрипттерин колдонот.--apache - Доменди текшерүү үчүн Apache конфигурация скрипттерин колдонот.-d - күбөлүк суралган домендердин тизмеси.--standalone - Доменди текшерүү үчүн өз алдынча режимди колдонот.--manual - Доменди кол менен текшерүүнү жүргүзөт.
Бул эң көп колдонулган буйруктардын жана опциялардын мисалы. Сиз жардам бөлүмүндө программанын мүмкүнчүлүктөрүнүн толук тизмеси менен тааныша аласыз:
certbot –help
Биз азыр сертификатты алууга киришебиз. Мисал катары, биз а үчүн күбөлүк алабыз жасалма Server yourusername.pserver.space сыяктуу бекер үчүнчү деңгээлдеги домен үчүн
Биринчиден, сиз буйрукту киргизүү керек:
certbot certonly
Жооп катары, утилита сизден доменге ээликти текшерүү ыкмасын тандоону суранат:
Эгерде сизде конфигурацияланган веб-сервер жок болсо же учурдагы серверге өзгөртүү киргизгиңиз келбесе, биринчи вариант ыңгайлуу. Бул ыкма доменге болгон укугуңузду ырастоо үчүн убактылуу веб-серверди түзөт. Бул жөнөкөй жана тез орнотуу үчүн идеалдуу келет. Бул ыкманы тандоодо 80-портту бош калтыруу маанилүү.
Эгер сизде мурунтан эле иштеп жаткан веб-сервер бар болсо жана аны доменге болгон укукту текшерүү үчүн колдонгуңуз келсе, экинчи вариант артык. Certbot атайын файлдарды сервериңиздеги папкага жайгаштырат, алар сертификаттоо борбору тарабынан текшерилет.
Биз биринчи параметрди тандап, кийинки чыкылдатыңыз. Бул этапта сизге керек болот:
- Электрондук почта дарегин киргизиңиз;
- Тейлөө шарттарына макул болуу;
- Компаниянын жана анын өнөктөштөрүнүн атынан электрондук каттарды алууга макул же баш тартуу;
- Сертификат берилген домендик аталышты көрсөтүңүз.
Certbot куралы менен сертификат берүү процессин аяктагандан кийин, ал берилген сертификат жана сиздин каттоо эсебиңиздин маалыматтары сакталган каталогдун жолун көрсөтөт:
Алынган сертификатты керектүү кызматка байланыштыруу гана калды.
Nginx же Apache үчүн күбөлүк орнотуу
Бул бөлүм белгилүү бир негизги шарттар аткарылды деп болжолдойт:
- Сиз мурунтан эле Nginx же Apache веб серверин орнотуп, конфигурациялагансыз. Бул сиз тастыктаманы алууну көздөгөн домендик аталыш аркылуу интернеттен жеткиликтүү болушу керек;
- Куралды орнотуу учурунда сиз Nginx же Apache үчүн тиешелүү буйрукту колдонуу менен плагинди орноттуңуз;
- Брандмауэр 80 жана 443 портторундагы туташууларга уруксат берет. Бул порттор туташууларга жабык болсо, кызмат кирүүчү байланыштар үчүн жеткиликсиз болот. Firewall иштеши жөнүндө көбүрөөк маалымат алуу үчүн, биз бул тууралуу макалада талкууладык Linux'та брандмауэрди орнотуу.
Бардык шарттар аткарылгандан кийин, сиз түздөн-түз күбөлүк берүүгө өтсөңүз болот. Мисал катары Nginx колдонуп серверде SSL сертификатын алуу процессин карап чыгабыз. Бирок, сиз Apache веб-серверин колдонуп жатсаңыз, процесс толугу менен окшош.
Сертификат алуу үчүн сиз буйрукту киргизишиңиз керек:
certbot --nginx # for Nginx
certbot --apache # for Apache
Жооп катары курал төмөнкүлөрдү сурайт: электрондук почта дареги, Let's Encrypt кызматын колдонуу шарттарына макулдук жана кызматтын жана анын өнөктөштөрүнүн атынан электрондук каттарды жөнөтүүгө уруксат.
Андан кийин, күбөлүк берилген домендик аталышты көрсөтүү керек болот. Certbot доменди автоматтык түрдө аныктай алат, эгерде ал доменде көрсөтүлгөн болсо сервердин аты үчүн талаа жөргөмүш конфигурация же Сервердин аты жана ServerAliases үчүн Apache. Эгерде ал көрсөтүлбөсө, анда программа сизге кабарлап, домен атын кол менен киргизүүнү суранат. Андан кийин, утилита HTTP протоколунан HTTPS протоколуна суроо-талаптарды кайра багыттоону иштетүүнү сурайт. Автоматтык түрдө кайра багыттоону орнотуу үчүн, сиз экинчи жолду тандаңыз:
Бир нече убакыт өткөндөн кийин, Certbot сизге көрсөтүлгөн домен үчүн сертификатты ийгиликтүү алуу жөнүндө кабарлайт. Ушул учурдан тартып, бардык кирүүчү байланыштар 80-порттон 443кө багытталат. Курал сиз бардык сертификат маалыматтарын жана Каттоо эсебинин чоо-жайын Шифрлейли таба турган каталогдорду көрсөтөт:
Билдирүүдө ошондой эле алынган сертификаттын жарактуу мөөнөтү жана бардык активдүү сертификаттарды башкаруунун маанилүү варианттары көрсөтүлөт:
- сөзсүз. Бул параметр автоматтык веб сервер конфигурациясы жок сертификатты алуу же жаңыртуу үчүн колдонулат. Certbot сертификатты гана сурайт же жаңыртат, бирок сервер конфигурациясына автоматтык түрдө эч кандай өзгөртүүлөрдү киргизбейт. Мурда биз бул опцияны веб-серверге байланбай туруп сертификат алуу үчүн колдончубуз.
- жаңылоо Certbot аркылуу алынган жана алардын жарактуу мөөнөтү ичинде болгон бардык сертификаттарды автоматтык түрдө жаңыртуу үчүн колдонулат. Программа бардык сертификаттарды текшерет жана алардын бирөөнүн мөөнөтү 30 күндүн ичинде же андан азыраак болсо, ал автоматтык түрдө жаңыртылат.
Кийинки нускамада биз ар бир үч ай сайын колдонуучунун кийлигишүүсүз сертификаттарды автоматтык түрдө узартууну кантип орнотууну талкуулайбыз.
Certbotта автоматтык түрдө сертификатты жаңылоо
Debian/Ubuntu үчүн
Бул операциялык системаларды колдонууда Certbot автоматтык түрдө орнотулган сертификаттарды автоматтык түрдө узартуу үчүн тапшырмалар тизмесине скрипт кошот. Төмөнкү буйрук менен скрипттин иштешин текшере аласыз:
systemctl status certbot.timer
Жооп кызматтын статусун, ошондой эле конфигурация файлын камтыган каталогду көрсөтөт. Сиз муну каалаган текст редакторунун жардамы менен ача аласыз. Эгерде сизде Linux'тун текст редакторлору боюнча тажрыйбаңыз жок болсо, биз менен таанышууну сунуштайбыз биздин сереп эң популярдуу чечимдердин бири. Бул учурда биз нано колдонобуз:
nano /lib/systemd/system/certbot.timer
Бардык маанилүү параметрлери баса белгиленет:
- Графикте кызмат күнүнө эки жолу саат 00:00 жана 12:00дө иштей тургандыгы көрсөтүлгөн;
- Экинчи маани таймердин башталышына кошула турган секундалардагы кокустук кечиктирүүнү көрсөтөт. Бул учурда, ал 43,200 12 секунд (XNUMX саат) болуп саналат, бул ишке көбүрөөк туш келди жана жүк таратат;
- Бул параметр таймер системаны өчүрүү учурунда аткарылышы керек болсо, ал ишке киргенде дароо иштетилерин камсыздайт.
Сиз ошондой эле буйрук менен сертификаттын жаңылануусун мажбурлап текшере аласыз:
certbot renew --dry-run
Бул буйрукту колдонуу менен сертификаттар жаңыртылбайт. Анын ордуна, курал анын мөөнөтү аяктагандан кийин күбөлүк алууга окшош аракеттерди жасайт. Ошентип, сиз автоматтык түрдө жаңыртууга байланыштуу кызматтын иштешин камсыздай аласыз.
CentOS, Fedora жана башкалар үчүн
Red Hat үй-бүлөлүк системаларында автоматтык жаңыртууларды иштетүү процесси бир аз айырмаланат. Debian/Ubuntuдан айырмаланып, CentOS жана башка системалар үчүн пландоочуга тапшырманы кол менен кошушуңуз керек. Бул үчүн, биз колдонобуз Мурунку куралы:
crontab -e
Андан кийин, ачылган файлга төмөнкү сапты кошуңуз:
0 12 * * * /usr/bin/certbot renew --quiet
Келгиле, буйруктун негизги аргументтерин бөлүп көрөлү:
- Аткаруу убактысы. Бул учурда, буйрук автоматтык түрдө күн сайын саат 12:00дө иштейт;
- Certbot аркылуу SSL/TLS сертификаттарын жаңыртуу буйругу;
- The --тынч желек чыгууну басат, бул процессти системалык журналдарда же дисплейде жашыруун жана азыраак кийлигишет.
Буйрукту кошкондон кийин, файлдагы өзгөртүүлөрдү сактоо керек.
Debian/Ubuntu сыяктуу эле, сиз да сертификаттарды жаңыртууларды мажбурлап текшерүүнү баштасаңыз болот:
certbot renew --dry-run
Буйруктун ийгиликтүү аткарылышынын натыйжасы төмөнкүдөй көрүнөт:
жыйынтыктоо
Биз Linux серверинде Certbotту орнотуунун жана конфигурациялоонун комплекстүү процессин изилдедик. Берилген нускамаларды аткаруу менен, сиз Let's Encrypt'тен SSL/TLS сертификатын ийгиликтүү алып, аны веб-сервериңизге орнотуп, үзгүлтүксүз коргоону жана веб-ресурсуңузга болгон ишенимди жогорулатууну камсыз кылуу үчүн автоматтык жаңыртууну конфигурациялай аласыз. Certbot менен сиз оңой колдонуучулар үчүн ишенимдүү жана коопсуз чөйрөнү түзө аласыз.