У овом чланку ћемо истражити процес инсталирања и конфигурисања Цертбот на Линук серверу. Објаснићемо детаљно како да добијете Лет'с Енцрипт ССЛ/ТЛС сертификат за ваш домен. Такође ћемо описати како да га инсталирате на веб сервер (као што је Нгинк или Апацхе) и да подесите аутоматско обнављање сертификата да бисте обезбедили сталну безбедну везу са вашим веб ресурсом.
Цертбот је бесплатна алатка отвореног кода дизајнирана за аутоматску набавку и обнављање ССЛ/ТЛС сертификати. Он игра кључну улогу у обезбеђивању везе између сервера и клијента, штитећи податке од неовлашћеног приступа. Цертбот поједностављује процес инсталације и обнове ССЛ сертификата. Сертификат не само да побољшава безбедност, већ и повећава поверење корисника у ваш веб ресурс, чиме се побољшава и репутација сајта и његово рангирање на претраживачима.
Инсталирање Цертбота
Цертбот је подразумевано укључен у већину дистрибуција, тако да га можете инсталирати Дебиан / Убунту система, потребно је само да ажурирате листу пакета:
apt update
Затим покрените процес инсталације:
apt install certbot
Цертбот подржава додатке који олакшавају подешавање и конфигурацију сертификата за веб сервер. Да бисте инсталирали ове додатке, користите одговарајућу команду:
apt install certbot python3-certbot-nginx # for Nginx
apt install certbot python3-certbot-apache # for Apache
Процес инсталације за rED ХАТ системи (као нпр РХЕЛ, Убунту, федора) је мало другачији. У почетку морате да додате ЕПЕЛ спремиште:
yum install epel-release
Затим инсталирајте алат:
yum install certbot
Слично томе, постоји опција да изаберете додатак за одређени веб сервер:
yum install python3-certbot-nginx # for Nginx
yum install python3-certbot-apache # for Apache
Након инсталације, можете одмах наставити са добијањем сертификата.
Добијање ССЛ сертификата
У овом одељку ћемо разговарати о процесу добијања сертификата независно од одређеног веб сервера, а затим ћемо описати процес инсталирања сертификата за Нгинк и Апацхе. Међутим, неопходно је прво разумети синтаксу и функционалност програма. Појављује се на следећи начин:
certbot command option -d domain
Главне команде укључују:
certbot certonly - Преузима сертификат, али га не инсталира.certbot certificates - Ова команда приказује листу свих инсталираних сертификата.certbot renew - Проширује постојећи сертификат.certbot revoke - Опозива постојећи сертификат.certbot delete - Брише постојећи сертификат.
Најчешће коришћене опције су:
--nginx - Користи Нгинк конфигурационе скрипте за верификацију домена.--apache - Користи Апацхе конфигурационе скрипте за верификацију домена.-d - Списак домена за које се захтева сертификат.--standalone - Користи самостални режим за верификацију домена.--manual - Врши ручну верификацију домена.
Ово је само пример најчешћих команди и опција. Можете се упознати са комплетном листом могућности програма у одељку помоћи:
certbot –help
Сада прелазимо на добијање сертификата. Као пример, добићемо сертификат за а виртуелни сервер за бесплатни домен трећег нивоа као што је ваше корисничко име.псервер.спаце
Прво морате да унесете команду:
certbot certonly
Као одговор, услужни програм ће од вас тражити да одаберете метод за верификацију власништва над доменом:
Прва опција је згодна ако немате конфигурисан веб сервер или не желите да мењате постојећи. Овај метод креира привремени веб сервер да потврди ваше право на домен. Идеалан је за једноставно и брзо подешавање. Када бирате овај метод, важно је да порт 80 остане слободан.
Друга опција је пожељнија ако већ имате веб сервер који ради и желите да га користите за верификацију права на домен. Цертбот поставља посебне датотеке у фасциклу на вашем серверу, које затим проверава центар за сертификацију.
Бирамо прву опцију и кликнемо даље. У овој фази, мораћете да:
- Унесите адресу е-поште;
- Слажете се са условима коришћења услуге;
- Пристати или одбити примање е-поште у име компаније и њених партнера;
- Наведите име домена за који се издаје сертификат.
Након што завршите процес издавања сертификата помоћу алатке Цертбот, она ће указати на путању до директоријума у којем се чувају издати сертификат и подаци за ваш налог:
Остаје само да добијени сертификат повежете са траженом услугом.
Инсталирање сертификата за Нгинк или Апацхе
Овај одељак претпоставља да су испуњени одређени основни услови:
- Већ сте инсталирали и конфигурисали веб сервер, било Нгинк или Апацхе. Мора бити доступан са интернета преко имена домена за који намеравате да добијете сертификат;
- Током инсталације алата, такође сте инсталирали додатак за Нгинк или Апацхе користећи одговарајућу команду;
- Заштитни зид дозвољава везе на портовима 80 и 443. Ако су ови портови затворени за везе, услуга ће бити недоступна за долазне везе. За више детаља о раду заштитног зида, о томе смо разговарали у чланку о постављање заштитног зида на Линук-у.
Када су сви услови испуњени, можете прећи директно на издавање сертификата. Размотрићемо процес добијања ССЛ сертификата на серверу користећи Нгинк као пример. Међутим, ако користите Апацхе веб сервер, процес је потпуно идентичан.
Да бисте добили сертификат, потребно је да унесете команду:
certbot --nginx # for Nginx
certbot --apache # for Apache
Као одговор, алат ће захтевати: адресу е-поште, сагласност са условима коришћења услуге Лет'с Енцрипт и дозволу за слање е-поште у име услуге и њених партнера.
Након тога, мораћете да наведете име домена за који се издаје сертификат. Цертбот може аутоматски одредити домен ако је наведен у сервер_наме поље за Нгинк конфигурацију или СерверНаме СерверАлиас za апацхе. Ако није наведено, програм ће вас обавестити и затражити да ручно унесете име домена. Затим ће услужни програм питати да ли да омогући преусмеравање захтева са ХТТП на ХТТПС протокол. Да бисте подесили аутоматско преусмеравање, требало би да изаберете другу опцију:
Након неког времена, Цертбот ће вас обавестити о успешном стицању сертификата за наведени домен. Од овог тренутка па надаље, све долазне везе ће бити преусмерене са порта 80 на 443. Алат ће приказати директоријуме у којима можете пронаћи све податке о сертификатима и детаље налога Лет'с Енцрипт:
У поруци ће се навести и период важења добијеног сертификата и важне опције за управљање свим активним сертификатима:
- цертонли. Ова опција се користи за добијање или ажурирање сертификата без аутоматске конфигурације веб сервера. Цертбот ће само захтевати или ажурирати сертификат, али неће вршити никакве аутоматске промене у конфигурацији сервера. Раније смо ову опцију користили за добијање сертификата без везивања за веб сервер.
- ренев се користи за аутоматско обнављање свих сертификата који су добијени преко Цертбота и који су у року важења. Програм ће проверити све сертификате и ако било који од њих истекне у року од 30 дана или мање, биће аутоматски обновљен.
Следеће у упутствима ћемо разговарати о томе како да подесите аутоматско обнављање сертификата без интервенције корисника свака три месеца.
Аутоматско обнављање сертификата у Цертбот-у
За Дебиан/Убунту
Када користите ове оперативне системе, Цертбот аутоматски додаје скрипту на листу задатака за аутоматско обнављање инсталираних сертификата. Функционалност скрипте можете проверити следећом командом:
systemctl status certbot.timer
Одговор ће приказати статус услуге, као и директоријум који садржи конфигурациону датотеку. Ово можете отворити користећи било који уређивач текста. Ако немате искуства са уређивачима текста у Линуку, препоручујемо да се упознате са њима наш преглед од најпопуларнијих решења. У овом случају користићемо нано:
nano /lib/systemd/system/certbot.timer
Сви важни параметри су истакнути:
- Распоред показује да ће услуга радити два пута дневно у 00:00 и 12:00;
- Друга вредност означава насумично кашњење у секундама које ће бити додато почетку тајмера. У овом случају, то је 43,200 секунди (12 сати), што чини лансирање насумичним и шири оптерећење;
- Овај параметар осигурава да ако је тајмер требало да се изврши током гашења система, он ће бити активиран одмах по покретању.
Такође можете покренути принудну проверу обнављања сертификата командом:
certbot renew --dry-run
Користећи ову команду, сертификати се неће ажурирати. Уместо тога, алатка ће обављати радње сличне добијању сертификата по његовом истеку. На овај начин можете осигурати функционалност услуге у погледу аутоматског обнављања.
За ЦентОС, Федору и друге
Процес омогућавања аутоматског ажурирања на системима породице Ред Хат мало се разликује. За разлику од Дебиан/Убунту-а, за ЦентОС и друге системе морате ручно да додате задатак у планер. За ово ћемо користити црон оруђе:
crontab -e
Затим у датотеци која се отвори додајте следећи ред:
0 12 * * * /usr/bin/certbot renew --quiet
Хајде да разложимо главне аргументе команде:
- Време извршења. У овом случају, команда ће се аутоматски покренути у 12:00 сваког дана;
- Команда за обнављање ССЛ/ТЛС сертификата помоћу Цертбот-а;
- --тихо флаг потискује излаз, чинећи процес скривенијим и мање наметљивим у системским евиденцијама или приказу.
Након додавања команде, потребно је да сачувате промене у датотеци.
Као и код Дебиан/Убунту-а, такође можете покренути принудну проверу обнове сертификата:
certbot renew --dry-run
Резултат успешног извршења команде изгледа овако:
Закључак
Истражили смо свеобухватан процес инсталирања и конфигурисања Цертбота на Линук серверу. Пратећи дата упутства, можете успешно да добијете ССЛ/ТЛС сертификат од Лет'с Енцрипт, да га инсталирате на свој веб сервер и да конфигуришете аутоматско обнављање да бисте обезбедили сталну заштиту и повећано поверење у ваш веб ресурс. Са Цертбот-ом можете лако да креирате поуздано и безбедно окружење за кориснике.