Jinsi ya Kulinda Apache na Cheti cha Bure cha Lets Encrypt SSL kwenye Ubuntu na Debian


Una jina la kikoa kipya lililosajiliwa na seva yako ya wavuti inafanya kazi kwa kutumia Cheti cha Kujiandikisha Kibinafsi cha SSL ambacho kinasababisha maumivu ya kichwa kwa wateja wako wanapotembelea kikoa kwa sababu ya hitilafu zinazozalishwa na cheti? Una bajeti ndogo na huna uwezo wa kununua cheti kilichotolewa na CA inayoaminika? Huu ndio wakati programu ya Let's Encrypt inapotokea na kuokoa siku.

Ikiwa unatafuta kusakinisha Hebu Tusimbe kwa Apache au Nginx kwenye RHEL, CentOS, Fedora au Ubuntu na Debian, fuata miongozo hii hapa chini:

Let's Encrypt ni Mamlaka ya Cheti (CA) ambayo hukuwezesha kupata vyeti vya bure vya SSL/TLS vinavyohitajika ili seva yako ifanye kazi kwa usalama, hivyo basi kuvinjari kwa urahisi kwa watumiaji wako, bila hitilafu zozote.

Hatua zote zinazohitajika ili kutoa cheti, mara nyingi, ni za kiotomatiki kwa seva ya wavuti ya Apache. Hata hivyo, licha ya programu yako ya seva ya wavuti, baadhi ya hatua lazima zifanywe wewe mwenyewe na vyeti lazima visakinishwe mwenyewe, hasa ikiwa maudhui ya tovuti yako yatatolewa na daemon ya Nginx.

Mafunzo haya yatakuongoza jinsi unavyoweza kusakinisha programu ya Let's Encrypt kwenye Ubuntu au Debian, kuzalisha na kupata cheti cha bila malipo kwa kikoa chako na jinsi unavyoweza kusakinisha cheti wewe mwenyewe katika seva za wavuti za Apache na Nginx.

  1. Jina la kikoa kilichosajiliwa na umma chenye A rekodi halali ili kuelekeza kwenye Anwani ya IP ya nje ya seva yako. Iwapo seva yako iko nyuma ya ngome chukua hatua zinazohitajika ili kuhakikisha kuwa seva yako inapatikana kwa maneno mengi kutoka kwa mtandao kwa kuongeza sheria za kusambaza lango kwenye upande wa kipanga njia.
  2. Seva ya wavuti ya Apache iliyosakinishwa na moduli ya SSL imewezeshwa na upangishaji pepe umewezeshwa, iwapo utapangisha vikoa au vikoa vidogo.

Hatua ya 1: Sakinisha Apache na Wezesha Moduli ya SSL

1. Iwapo huna Apache webserver tayari iliyosakinishwa kwenye mashine yako toa amri ifuatayo ya kusakinisha apache daemon.

$ sudo apt-get install apache2

2. Uwezeshaji wa moduli ya SSL kwa seva ya wavuti ya Apache kwenye Ubuntu au Debian ni moja kwa moja. Washa moduli ya SSL na uwashe seva pangishi ya apache chaguo-msingi ya SSL kwa kutoa amri zilizo hapa chini:

$ sudo a2enmod ssl
$ sudo a2ensite default-ssl.conf
$ sudo service apache2 restart
or
$ sudo systemctl restart apache2.service

Wageni sasa wanaweza kufikia jina la kikoa chako kupitia itifaki ya HTTPS. Hata hivyo, kwa sababu cheti chako kilichosainiwa na seva hakijatolewa na mamlaka ya cheti kinachoaminika, tahadhari ya hitilafu itaonyeshwa kwenye vivinjari vyao kama inavyoonyeshwa kwenye picha hapa chini.

https://yourdomain.com

Hatua ya 2: Sakinisha Bure Tusimbe Mteja

3. Ili kusakinisha programu ya Let's Encrypt kwenye seva yako unahitaji kuwa na git package iliyosakinishwa kwenye mfumo wako. Toa amri ifuatayo ya kusakinisha programu ya git:

$ sudo apt-get -y install git

4. Kisha, chagua saraka kutoka kwa daraja la mfumo wako ambapo ungependa kufananisha na Hebu Tusimba hazina ya git. Katika somo hili tutatumia saraka ya /usr/local/ kama njia ya usakinishaji ya Let's Encrypt.

Badili hadi /usr/local saraka na usakinishe letsencrypt mteja kwa kutoa amri zifuatazo:

$ cd /usr/local
$ sudo git clone https://github.com/letsencrypt/letsencrypt

Hatua ya 4: Tengeneza Cheti cha SSL kwa Apache

5. Mchakato wa kupata Cheti cha SSL kwa Apache unatokana na kiotomatiki kwa programu-jalizi ya Apache. Tengeneza cheti kwa kutoa amri ifuatayo dhidi ya jina la kikoa chako. Toa jina la kikoa chako kama kigezo kwa -d bendera.

$ cd /usr/local/letsencrypt
$ sudo ./letsencrypt-auto --apache -d your_domain.tld

Kwa mfano, ikiwa unahitaji cheti ili kufanya kazi kwenye vikoa vingi au vikoa vidogo viongeze vyote ukitumia alama ya -d kwa kila rekodi halali za DNS baada ya jina la msingi la kikoa.

$ sudo ./letsencrypt-auto --apache -d your_domain.tld  -d www. your_domain.tld 

6. Kubali leseni, weka anwani ya barua pepe kwa urejeshaji na uchague kama wateja wanaweza kuvinjari kikoa chako kwa kutumia itifaki za HTTP (salama na si salama) au uelekeze upya maombi yote yasiyo salama kwa HTTPS.

7. Baada ya usakinishaji kukamilika kwa mafanikio, ujumbe wa pongezi huonyeshwa kwenye kiweko chako ukikujulisha kuhusu tarehe ya mwisho wa matumizi na jinsi unavyoweza kujaribu usanidi kama inavyoonyeshwa kwenye picha za skrini zilizo hapa chini.

Sasa unapaswa kupata faili zako za cheti kwenye saraka ya /etc/letsencrypt/live yenye orodha rahisi ya saraka.

$ sudo ls /etc/letsencrypt/live

8. Hatimaye, ili kuthibitisha hali ya Cheti chako cha SSL tembelea kiungo kifuatacho. Badilisha jina la kikoa ipasavyo.

https://www.ssllabs.com/ssltest/analyze.html?d=your_domain.tld&latest

Pia, wageni sasa wanaweza kufikia jina la kikoa chako kwa kutumia itifaki ya HTTPS bila hitilafu yoyote kuonekana katika vivinjari vyao vya wavuti.

Hatua ya 4: Kusasisha Kiotomatiki Lets Encrypt Vyeti

9. Kwa chaguomsingi, vyeti vinavyotolewa na mamlaka ya Let’s Encrypt ni halali kwa siku 90. Ili kuweka upya cheti kabla ya tarehe ya mwisho wa matumizi ni lazima uendeshe mteja mwenyewe tena kwa kutumia alama na vigezo kama awali.

$ sudo ./letsencrypt-auto --apache -d your_domain.tld

Au ikiwa kuna vikoa vingi:

$ sudo ./letsencrypt-auto --apache -d your_domain.tld  -d www. your_domain.tld

10. Mchakato wa kusasisha cheti unaweza kujiendesha kiotomatiki chini ya siku 30 kabla ya tarehe ya mwisho wa matumizi kwa kutumia ratiba ya Linux cron daemon.

$ sudo crontab -e

Ongeza amri ifuatayo mwishoni mwa faili ya crontab kwa kutumia mstari mmoja tu:

0 1 1 */2 * cd /usr/local/letsencrypt && ./letsencrypt-auto certonly --apache --renew-by-default --apache -d domain.tld >> /var/log/domain.tld-renew.log 2>&1

11. Maelezo kuhusu faili yako ya usanidi wa kikoa upya kwa programu ya Let’s Encrypt yanaweza kupatikana katika /etc/letsencrypt/renewal/ directory.

$ cat /etc/letsencrypt/renewal/caeszar.tk.conf

Unapaswa pia kuangalia faili /etc/letsencrypt/options-ssl-apache.conf ili kuona faili mpya ya usanidi ya SSL ya Apache webserver.

12. Pia, Hebu tusimbe programu-jalizi ya apache kwa njia fiche hurekebisha baadhi ya faili katika usanidi wako wa seva ya tovuti. Ili kuangalia ni faili gani zilikuwa zimerekebishwa, orodhesha maudhui ya saraka ya /etc/apache2/sites-enabled.

# ls /etc/apache2/sites-enabled/
# sudo cat /etc/apache2/sites-enabled/000-default-le-ssl.conf

Ni hayo tu kwa sasa! Kwenye mfululizo unaofuata wa mafunzo utajadili jinsi unavyoweza kupata na kusakinisha cheti cha Let's Encrypt kwa Nginx webserver kwenye Ubuntu na Debian na kwenye CentOS pia.