Білім қоры Profitserver қызметімен жұмыс істеуге арналған қарапайым нұсқаулар
басты Білім қоры Certbot: Let's Encrypt сертификатын орнату

Certbot: Let's Encrypt сертификатын орнату


Бұл мақалада біз орнату және конфигурациялау процесін қарастырамыз 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

үшін орнату процесі Red Hat жүйелер (мысалы 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
Certbot құралының анықтама бөлімі

Енді біз сертификат алуға кірісеміз. Мысал ретінде біз а үшін сертификат аламыз Виртуалды сервер yourusername.pserver.space сияқты тегін үшінші деңгейлі домен үшін

Алдымен пәрменді енгізу керек:

certbot certonly

Жауап ретінде утилита домен иелігін тексеру әдісін таңдауды сұрайды:

Certbot SSL сертификатын қалай алуға болады

Бірінші опция конфигурацияланған веб-серверіңіз болмаса немесе бар серверге өзгертулер енгізгіңіз келмесе ыңғайлы. Бұл әдіс доменге құқығыңызды растау үшін уақытша веб-серверді жасайды. Бұл қарапайым және жылдам орнату үшін өте қолайлы. Бұл әдісті таңдаған кезде 80 портын бос ұстау маңызды.

Егер сізде бұрыннан жұмыс істеп тұрған веб-сервер болса және оны доменге құқықты тексеру үшін пайдаланғыңыз келсе, екінші опция қолайлы. Certbot сервердегі қалтаға арнайы файлдарды орналастырады, содан кейін оларды сертификаттау орталығы тексереді.

Біз бірінші опцияны таңдап, келесі түймесін басыңыз. Бұл кезеңде сізге қажет:

  1. Электрондық пошта мекенжайын енгізіңіз;
  2. Қызмет көрсету шарттарымен келісіңіз;
  3. Компанияның және оның серіктестерінің атынан электрондық хаттарды алуға келісу немесе бас тарту;
  4. Куәлік берілген домен атауын көрсетіңіз.
SSL сертификатын алуға арналған деректер

Certbot құралымен сертификат беру процесін аяқтағаннан кейін ол берілген сертификат пен тіркелгіңізге арналған деректер сақталатын каталогқа жолды көрсетеді:

Алынған SSL сертификатының деректері

Алынған сертификатты қажетті қызметке байланыстыру ғана қалады.

Nginx немесе Apache үшін сертификатты орнату

Бұл бөлім белгілі бір негізгі шарттар орындалды деп болжайды:

  1. Nginx немесе Apache веб-серверін орнатып, конфигурациялап қойғансыз. Ол сертификатты алғыңыз келетін домендік атау арқылы интернеттен қолжетімді болуы керек;
  2. Құралды орнату кезінде сіз Nginx немесе Apache плагинін сәйкес пәрмен арқылы орнаттыңыз;
  3. Брандмауэр 80 және 443 порттарындағы қосылымдарға рұқсат береді. Бұл порттар қосылымдарға жабық болса, қызмет кіріс қосылымдары үшін қолжетімсіз болады. Брандмауэр жұмысы туралы қосымша мәліметтер алу үшін біз бұл туралы мақалада талқыладық Linux жүйесінде брандмауэр орнату.

Барлық шарттар орындалғаннан кейін сіз тікелей сертификатты беруге кірісе аласыз. Мысал ретінде Nginx көмегімен серверде SSL сертификатын алу процесін қарастырамыз. Дегенмен, егер сіз Apache веб-серверін пайдалансаңыз, процесс толығымен бірдей.

Сертификат алу үшін пәрменді енгізу керек:

certbot --nginx # for Nginx
certbot --apache # for Apache

Жауап ретінде құрал мыналарды сұрайды: электрондық пошта мекенжайы, Let's Encrypt қызметін пайдалану шарттарына келісім және қызмет пен оның серіктестері атынан электрондық хаттарды жіберуге рұқсат.

Nginx және Apache үшін SSL сертификатын алу

Осыдан кейін сізге сертификат берілетін домен атауын көрсету қажет. Certbot доменде көрсетілген болса, оны автоматты түрде анықтай алады server_name үшін өріс Nginx конфигурация немесе ServerName және ServerAlias үшін Apache. Егер ол көрсетілмесе, бағдарлама сізге хабарлайды және домен атауын қолмен енгізуді сұрайды. Содан кейін қызметтік бағдарлама сұрауларды HTTP протоколынан HTTPS протоколына қайта бағыттауды қосу-қосуды сұрайды. Автоматты қайта бағыттауды орнату үшін екінші опцияны таңдау керек:

Сұрауларды HTTP-ден HTTPS-ке қайта бағыттау

Біраз уақыттан кейін Certbot сізге көрсетілген домен үшін сертификаттың сәтті алынғаны туралы хабарлайды. Осы сәттен бастап барлық кіріс қосылымдары 80 порттан 443-ке қайта бағытталады. Құрал барлық сертификат деректерін және «Шифрлансын» тіркелгі мәліметтерін табуға болатын каталогтарды көрсетеді:

Certbot сертификатының сәтті шығарылуы

Хабарламада алынған сертификаттың жарамдылық мерзімі және барлық белсенді сертификаттарды басқарудың маңызды опциялары көрсетіледі:

  1. сөзсіз. Бұл опция автоматты веб-сервер конфигурациясынсыз сертификатты алу немесе жаңарту үшін пайдаланылады. Certbot тек сертификатты сұрайды немесе жаңартады, бірақ сервер конфигурациясына ешқандай автоматты өзгертулер жасамайды. Бұрын біз бұл опцияны веб-серверге қосылмай сертификат алу үшін пайдаландық.
  2. жаңартады Certbot арқылы алынған және олардың жарамдылық мерзімінде болатын барлық сертификаттарды автоматты түрде жаңарту үшін пайдаланылады. Бағдарлама барлық сертификаттарды тексереді және олардың кез келгенінің мерзімі 30 күн немесе одан аз уақыт ішінде аяқталса, ол автоматты түрде жаңартылады.

Келесі нұсқауларда біз пайдаланушының араласуынсыз сертификаттарды автоматты түрде жаңартуды үш ай сайын қалай орнату керектігін талқылаймыз.

Certbot-те сертификатты автоматты түрде жаңарту

Debian/Ubuntu үшін

Осы операциялық жүйелерді пайдаланған кезде Certbot орнатылған сертификаттарды автоматты түрде жаңарту үшін тапсырмалар тізіміне сценарийді автоматты түрде қосады. Сценарийдің функционалдығын келесі пәрмен арқылы тексеруге болады:

systemctl status certbot.timer
certbot.timer қызметінің күйін тексеру

Жауап қызметтің күйін, сондай-ақ конфигурация файлы бар каталогты көрсетеді. Оны кез келген мәтіндік редактордың көмегімен ашуға болады. Linux жүйесіндегі мәтіндік редакторлармен тәжірибеңіз болмаса, танысуды ұсынамыз біздің шолуымыз ең танымал шешімдердің бірі. Бұл жағдайда біз нано қолданамыз:

nano /lib/systemd/system/certbot.timer
certbot.timer конфигурациясын көру

Барлық маңызды параметрлер белгіленген:

  1. Кестеде қызмет күніне екі рет сағат 00:00 және 12:00 жұмыс істейтінін көрсетеді;
  2. Екінші мән таймердің іске қосылуына қосылатын секундтардағы кездейсоқ кідірісті көрсетеді. Бұл жағдайда ол 43,200 12 секунд (XNUMX сағат), бұл ұшыруды кездейсоқ етеді және жүктемені таратады;
  3. Бұл параметр жүйені өшіру кезінде таймер орындалуы керек болса, ол іске қосылған кезде бірден іске қосылатынын қамтамасыз етеді.

Сондай-ақ, келесі пәрмен арқылы сертификатты жаңартуды мәжбүрлі тексеруді орындауға болады:

certbot renew --dry-run

Бұл пәрменді пайдалану арқылы сертификаттар жаңартылмайды. Оның орнына, құрал жарамдылық мерзімі аяқталғаннан кейін сертификат алуға ұқсас әрекеттерді орындайды. Осылайша, қызметтің автоматты жаңартуға қатысты функционалдығын қамтамасыз ете аласыз.

CentOS, Fedora және басқалары үшін

Red Hat отбасылық жүйелерінде автоматты жаңартуларды қосу процесі аздап ерекшеленеді. Debian/Ubuntu-дан айырмашылығы, CentOS және басқа жүйелер үшін жоспарлаушыға тапсырманы қолмен қосу керек. Ол үшін біз пайдаланамыз Cron құрал:

crontab -e

Содан кейін ашылатын файлға келесі жолды қосыңыз:

0 12 * * * /usr/bin/certbot renew --quiet

Команданың негізгі аргументтерін бөліп көрейік:

  1. Орындау уақыты. Бұл жағдайда пәрмен автоматты түрде күн сайын сағат 12:00-де іске қосылады;
  2. Certbot көмегімен SSL/TLS сертификаттарын жаңарту пәрмені;
  3. The --тыныш жалауша шығаруды басады, бұл процесті жасырын етеді және жүйе журналдарында немесе дисплейде аз интрузивті етеді.

Пәрменді қосқаннан кейін файлдағы өзгерістерді сақтау керек.

Debian/Ubuntu сияқты, сіз сертификаттарды жаңартуды мәжбүрлі тексеруді де бастай аласыз:

certbot renew --dry-run

Команданың сәтті орындалуының нәтижесі келесідей көрінеді:

Жаңарту пәрменін сәтті тексерудің нәтижесі

қорытынды

Біз Linux серверінде Certbot орнату және конфигурациялаудың жан-жақты процесін зерттедік. Берілген нұсқауларды орындау арқылы сіз Let's Encrypt жүйесінен SSL/TLS сертификатын сәтті алуға, оны веб-серверіңізге орнатуға және веб-ресурсыңызға үздіксіз қорғауды және сенімділікті арттыруды қамтамасыз ету үшін автоматты жаңартуды конфигурациялауға болады. Certbot көмегімен сіз пайдаланушылар үшін сенімді және қауіпсіз ортаны оңай жасай аласыз.

❮ Алдыңғы мақала Сервер жүктемесін азайту
Келесі мақала ❯ Linux пакетінің менеджерлері

Бізден VPS туралы сұраңыз

Біз сіздің сұрақтарыңызға күннің немесе түннің кез келген уақытында жауап беруге дайынбыз.