Knowledgebase Profitserver ծառայության հետ աշխատելու պարզ հրահանգներ
Հիմնական Knowledgebase 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. Firewall-ը թույլ է տալիս միացումներ 80 և 443 նավահանգիստներին: Եթե այս նավահանգիստները փակ են միացումների համար, ծառայությունն անհասանելի կլինի մուտքային կապերի համար: Firewall-ի շահագործման վերաբերյալ լրացուցիչ մանրամասների համար մենք դա քննարկեցինք հոդվածում Linux-ում firewall-ի տեղադրում.

Բոլոր պայմանները բավարարելուց հետո կարող եք ուղղակիորեն անցնել վկայականի տրամադրմանը: Մենք որպես օրինակ կդիտարկենք Nginx-ի միջոցով սերվերի վրա SSL վկայագիր ստանալու գործընթացը: Այնուամենայնիվ, եթե դուք օգտագործում եք Apache վեբ սերվեր, գործընթացը լիովին նույնական է:

Վկայական ստանալու համար անհրաժեշտ է մուտքագրել հրամանը.

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

Ի պատասխան՝ գործիքը կպահանջի՝ էլփոստի հասցե, համաձայնություն Let's Encrypt ծառայության օգտագործման պայմաններին և ծառայության և նրա գործընկերների անունից նամակներ ուղարկելու թույլտվություն:

SSL վկայագիր ստանալը Nginx-ի և Apache-ի համար

Դրանից հետո դուք պետք է նշեք դոմենի անունը, որի համար տրվում է վկայագիրը: Certbot-ը կարող է ավտոմատ կերպով որոշել տիրույթը, եթե այն նշված է server_name դաշտի համար Nginx կոնֆիգուրացիա կամ ServerName և ServerAlias- ը համար Apache. Եթե ​​այն նշված չէ, ծրագիրը կտեղեկացնի ձեզ և կխնդրի ձեռքով մուտքագրել տիրույթի անունը։ Այնուհետև կոմունալը կհարցնի, թե արդյոք միացնե՞լ հարցումների վերահղումը HTTP-ից դեպի HTTPS արձանագրություն: Ավտոմատ վերահղումը կարգավորելու համար դուք պետք է ընտրեք երկրորդ տարբերակը.

HTTP-ից HTTPS հարցումների վերահղում

Որոշ ժամանակ անց Certbot-ը ձեզ կտեղեկացնի նշված տիրույթի համար վկայագրի հաջող ձեռքբերման մասին: Այս պահից սկսած բոլոր մուտքային կապերը կվերահղվեն 80-րդ նավահանգստից դեպի 443: Գործիքը կցուցադրի դիրեկտորիաները, որոնցում կարող եք գտնել բոլոր վկայականի տվյալները և Let's Encrypt հաշվի մանրամասները.

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 ժամ), ինչը մեկնարկը դարձնում է ավելի պատահական և տարածում բեռը.
  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.   -- հանգիստ դրոշը ճնշում է ելքը՝ գործընթացը դարձնելով ավելի թաքնված և ավելի քիչ ներխուժելով համակարգի տեղեկամատյաններում կամ ցուցադրման մեջ:

Հրամանը ավելացնելուց հետո անհրաժեշտ է պահպանել փոփոխությունները ֆայլում։

Ինչպես Debian/Ubuntu-ի դեպքում, դուք կարող եք նաև նախաձեռնել վկայագրի նորացման հարկադիր ստուգում.

certbot renew --dry-run

Հրամանի հաջող կատարման արդյունքը հետևյալն է.

Նորացման հրամանի հաջող ստուգման արդյունքը

Եզրափակում

Մենք ուսումնասիրել ենք Linux սերվերի վրա Certbot-ի տեղադրման և կազմաձևման համապարփակ գործընթացը: Հետևելով տրված հրահանգներին՝ դուք կարող եք հաջողությամբ ձեռք բերել SSL/TLS վկայագիր Let's Encrypt-ից, տեղադրել այն ձեր վեբ սերվերում և կարգավորել ավտոմատ թարմացումը՝ ապահովելու շարունակական պաշտպանություն և վստահություն ձեր վեբ ռեսուրսի նկատմամբ: Certbot-ի միջոցով դուք հեշտությամբ կարող եք ստեղծել հուսալի և անվտանգ միջավայր օգտատերերի համար:

❮ Նախորդ հոդված Սերվերի ծանրաբեռնվածության նվազեցում
Հաջորդ հոդվածը ❯ Linux փաթեթի կառավարիչներ

Հարցրեք մեզ VPS-ի մասին

Մենք միշտ պատրաստ ենք պատասխանել ձեր հարցերին օրվա կամ գիշերվա ցանկացած ժամի: