ამ სტატიაში განვიხილავთ ინსტალაციისა და კონფიგურაციის პროცესს სერტბოტი Linux სერვერზე. ჩვენ დეტალურად აგიხსნით როგორ მივიღოთ Let's Encrypt SSL/TLS სერთიფიკატი თქვენი დომენისთვის. ჩვენ ასევე აღვწერთ, თუ როგორ უნდა დააინსტალიროთ იგი ვებ სერვერზე (როგორიცაა Nginx ან Apache) და დავაყენოთ სერტიფიკატის ავტომატური განახლება, რათა უზრუნველყოთ უწყვეტი უსაფრთხო კავშირი თქვენს ვებ რესურსთან.
სერტბოტი არის უფასო, ღია წყაროს ინსტრუმენტი, რომელიც შექმნილია ავტომატური შეძენისა და განახლებისთვის 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

ახლა ჩვენ ვაგრძელებთ სერთიფიკატის მიღებას. მაგალითად, ჩვენ მივიღებთ სერთიფიკატს ა ვირტუალური სერვერი უფასო მესამე დონის დომენისთვის, როგორიცაა yourusername.pserver.space
პირველ რიგში, თქვენ უნდა შეიყვანოთ ბრძანება:
certbot certonly
საპასუხოდ, პროგრამა მოგთხოვთ აირჩიოთ მეთოდი დომენის საკუთრების დასადასტურებლად:

პირველი ვარიანტი მოსახერხებელია, თუ არ გაქვთ კონფიგურირებული ვებ სერვერი ან არ გსურთ ცვლილებების შეტანა არსებულში. ეს მეთოდი ქმნის დროებით ვებ სერვერს დომენზე თქვენი უფლების დასადასტურებლად. იდეალურია მარტივი და სწრაფი დაყენებისთვის. ამ მეთოდის არჩევისას მნიშვნელოვანია, რომ პორტი 80 თავისუფალი იყოს.
მეორე ვარიანტი სასურველია, თუ თქვენ უკვე გაქვთ ვებ სერვერი მოქმედი და გსურთ მისი გამოყენება დომენის უფლების დასადასტურებლად. Certbot ათავსებს სპეციალურ ფაილებს თქვენს სერვერზე არსებულ საქაღალდეში, რომლებიც შემდეგ მოწმდება სერტიფიცირების ცენტრის მიერ.
ჩვენ ვირჩევთ პირველ ვარიანტს და დააჭირეთ შემდეგს. ამ ეტაპზე დაგჭირდებათ:
- შეიყვანეთ ელექტრონული ფოსტის მისამართი;
- ეთანხმებით მომსახურების პირობებს;
- დაეთანხმეთ ან უარს აცხადებთ ელ.ფოსტის მიღებაზე კომპანიისა და მისი პარტნიორების სახელით;
- მიუთითეთ დომენის სახელი, რომელზეც გაიცემა სერთიფიკატი.

Certbot ინსტრუმენტით სერთიფიკატის გაცემის პროცესის დასრულების შემდეგ, ის მიუთითებს იმ დირექტორიასკენ მიმავალ გზაზე, სადაც ინახება გაცემული სერთიფიკატი და თქვენი ანგარიშის მონაცემები:

რჩება მხოლოდ მიღებული სერტიფიკატის დაკავშირება საჭირო სერვისთან.
სერთიფიკატის დაყენება Nginx-ისთვის ან Apache-სთვის
ეს ნაწილი ვარაუდობს, რომ გარკვეული ფუნდამენტური პირობები დაკმაყოფილებულია:
- თქვენ უკვე დააინსტალირეთ და დააკონფიგურირეთ ვებ სერვერი, ან Nginx ან Apache. ის ხელმისაწვდომი უნდა იყოს ინტერნეტიდან იმ დომენის სახელით, რომლისთვისაც აპირებთ სერტიფიკატის მიღებას;
- ხელსაწყოს ინსტალაციის დროს თქვენ ასევე დააინსტალირეთ დანამატი Nginx-ისთვის ან Apache-სთვის შესაბამისი ბრძანების გამოყენებით;
- Firewall საშუალებას აძლევს კავშირებს 80 და 443 პორტებზე. თუ ეს პორტები დახურულია კავშირებისთვის, სერვისი მიუწვდომელი იქნება შემომავალი კავშირებისთვის. firewall-ის მუშაობის შესახებ დამატებითი ინფორმაციისთვის, ჩვენ განვიხილეთ ეს სტატიაში Linux-ზე firewall-ის დაყენება.
ყველა პირობის დაკმაყოფილების შემდეგ, შეგიძლიათ პირდაპირ გადახვიდეთ სერტიფიკატის გაცემაზე. ჩვენ განვიხილავთ სერვერზე SSL სერთიფიკატის მოპოვების პროცესს Nginx-ის გამოყენებით. თუმცა, თუ იყენებთ Apache ვებ სერვერს, პროცესი სრულიად იდენტურია.
სერთიფიკატის მისაღებად, თქვენ უნდა შეიყვანოთ ბრძანება:
certbot --nginx # for Nginx certbot --apache # for Apache
საპასუხოდ, ინსტრუმენტი მოითხოვს: ელ.ფოსტის მისამართს, თანხმობას Let's Encrypt სერვისის გამოყენების პირობებზე და ნებართვას, გაგზავნოს წერილები სერვისისა და მისი პარტნიორების სახელით.

ამის შემდეგ, თქვენ უნდა მიუთითოთ დომენის სახელი, რომელზეც გაიცემა სერთიფიკატი. Certbot-ს შეუძლია ავტომატურად განსაზღვროს დომენი, თუ ის მითითებულია სერვერის სახელი ველი ამისთვის ნინიქსი კონფიგურაცია ან Სერვერის სახელი მდე სერვერი ალია ამისთვის Apache. თუ ეს არ არის მითითებული, პროგრამა შეგატყობინებთ და მოგთხოვთ დომენის სახელის ხელით შეყვანას. შემდეგ, პროგრამა ითხოვს, ჩართოს თუ არა მოთხოვნის გადამისამართება HTTP-დან HTTPS პროტოკოლზე. ავტომატური გადამისამართების დასაყენებლად, თქვენ უნდა აირჩიოთ მეორე ვარიანტი:

გარკვეული პერიოდის შემდეგ, Certbot შეგატყობინებთ მითითებული დომენისთვის სერთიფიკატის წარმატებით შეძენის შესახებ. ამ მომენტიდან, ყველა შემომავალი კავშირი გადამისამართდება პორტიდან 80-დან 443-მდე. ხელსაწყო აჩვენებს დირექტორიებს, რომლებშიც შეგიძლიათ იპოვოთ სერტიფიკატის ყველა მონაცემი და Let's Encrypt ანგარიშის დეტალები:

შეტყობინებაში ასევე მითითებული იქნება მიღებული სერტიფიკატის მოქმედების პერიოდი და ყველა აქტიური სერტიფიკატის მართვის მნიშვნელოვანი პარამეტრები:
- რათქმაუნდა. ეს პარამეტრი გამოიყენება სერთიფიკატის მისაღებად ან განახლებისთვის ვებ სერვერის ავტომატური კონფიგურაციის გარეშე. 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 საათი), რაც გაშვებას უფრო შემთხვევით ხდის და ავრცელებს დატვირთვას;
- ეს პარამეტრი უზრუნველყოფს, რომ თუ ტაიმერი უნდა შესრულებულიყო სისტემის გამორთვის დროს, ის გააქტიურდება დაუყოვნებლივ გაშვებისთანავე.
თქვენ ასევე შეგიძლიათ განახორციელოთ სერტიფიკატის განახლების იძულებითი შემოწმება ბრძანებით:
certbot renew --dry-run
ამ ბრძანების გამოყენებით, სერთიფიკატები არ განახლდება. ამის ნაცვლად, ინსტრუმენტი შეასრულებს მსგავს ქმედებებს, როგორც სერთიფიკატის მიღების ვადის გასვლის შემდეგ. ამ გზით თქვენ შეგიძლიათ უზრუნველყოთ სერვისის ფუნქციონირება ავტომატურ განახლებასთან დაკავშირებით.
CentOS-ისთვის, Fedora-სთვის და სხვებისთვის
Red Hat ოჯახის სისტემებზე ავტომატური განახლებების ჩართვის პროცესი ოდნავ განსხვავდება. Debian/Ubuntu-სგან განსხვავებით, CentOS და სხვა სისტემებისთვის, თქვენ უნდა ხელით დაამატოთ დავალება გრაფიკზე. ამისთვის ჩვენ გამოვიყენებთ cron ინსტრუმენტი:
crontab -e
შემდეგ, ფაილში, რომელიც იხსნება, დაამატეთ შემდეგი ხაზი:
0 12 * * * /usr/bin/certbot renew --quiet
მოდით ჩამოვყოთ ბრძანების ძირითადი არგუმენტები:
- შესრულების დრო. ამ შემთხვევაში ბრძანება ავტომატურად იმუშავებს ყოველდღე 12:00 საათზე;
- ბრძანება SSL/TLS სერთიფიკატების განახლების შესახებ Certbot-ის გამოყენებით;
- ის -- მშვიდი დროშა თრგუნავს გამომავალს, ხდის პროცესს უფრო დამალული და ნაკლებად ინტრუზიული სისტემის ჟურნალებში ან ეკრანზე.
ბრძანების დამატების შემდეგ, თქვენ უნდა შეინახოთ ცვლილებები ფაილში.
ისევე, როგორც Debian/Ubuntu-სთან ერთად, თქვენ ასევე შეგიძლიათ დაიწყოთ სერტიფიკატის განახლების იძულებითი შემოწმება:
certbot renew --dry-run
ბრძანების წარმატებით შესრულების შედეგი ასე გამოიყურება:

დასკვნა
ჩვენ შევისწავლეთ Linux სერვერზე Certbot-ის ინსტალაციისა და კონფიგურაციის ყოვლისმომცველი პროცესი. მოწოდებული ინსტრუქციების დაცვით, შეგიძლიათ წარმატებით მიიღოთ SSL/TLS სერთიფიკატი Let's Encrypt-ისგან, დააინსტალიროთ იგი თქვენს ვებ სერვერზე და დააკონფიგურიროთ ავტომატური განახლება, რათა უზრუნველყოთ უწყვეტი დაცვა და გაზრდილი ნდობა თქვენი ვებ რესურსის მიმართ. Certbot-ის საშუალებით თქვენ შეგიძლიათ მარტივად შექმნათ საიმედო და უსაფრთხო გარემო მომხმარებლებისთვის.