de Karan Thakkar

Folosind Let’s Encrypt Certbot pentru a obține HTTPS pe caseta dvs. Amazon EC2 NGINX

Folosind Lets Encrypt Certbot pentru a obtine HTTPS pe caseta

Let’s Encrypt este o noutate Autoritate certificată care oferă certificate SSL gratuite (până la o anumită limită pe săptămână). A ieșit din beta în urmă cu o lună și este susținut de un o gamă largă de browsere.

Certbot este clientul oficial Let’s Encrypt, dezvoltat de Fundația Electronic Frontier. Face din preluarea și implementarea automată a certificatelor SSL / TLS pentru serverul dvs. web un proces relativ simplu.

Să începem.

Pasul 1

Asigurați-vă că ați deschis porturile 80 (HTTP) și 443 (HTTPS) în instanța dvs. Grupul de securitate publicului. Certbot va folosi acest lucru pentru a stabili conexiuni în timp ce vă generează certificatele.

Rețineți că am petrecut mult prea mult timp pentru a-mi da seama de ce nu puteam genera un certificat, în timp ce singura problemă era că nu deschisesem portul 443 în grupul meu de securitate al instanței EC2.

Folosind Lets Encrypt Certbot pentru a obtine HTTPS pe caseta
Intrare setări în grupul de securitate EC2

Pasul 2

Configurați domeniul dvs. Înregistrare CNAME a indica spre DNS public a instanței dvs. EC2.

1611458107 36 Folosind Lets Encrypt Certbot pentru a obtine HTTPS pe caseta
DNS public valoare în descrierea instanței dvs. EC2
1611458108 678 Folosind Lets Encrypt Certbot pentru a obtine HTTPS pe caseta
Această setare ar indica api.mydomain.com către instanța mea EC2

Pasul 3

Instalați Certbot pe instanța dvs. Pe baza sistemului dvs. de operare și a serverului, puteți afla cum să îl instalați Pagina principală a lui Certbot. Pentru NGINX pe Ubuntu 14.04, utilizare acest.

wget https://dl.eff.org/certbot-auto
chmod a+x certbot-auto

Rulați această comandă în directorul de acasă:

/home/ubtuntu

Pasul 4

Opriți orice servere existente care rulează pe porturile 80 și 443, deoarece acestea sunt utilizate de Certbot pentru a vă verifica domeniul și a genera certificate.

Puteți reporni acele servere după ce ați terminat de generat certificatele.

Pasul 5

Rulați următoarea comandă pentru a genera certificate pentru domeniul dvs.:

./certbot-auto certonly --standalone -d xyz.yourdomain.com

Puteți genera certificate pentru mai multe domenii folosind această abordare.

Pasul 6

Schimbați configurația NGINX în /etc/nginx/nginx.conf la activați SSL:

http {
  ##
  # Logging Settings
  ##
  
  access_log /var/log/nginx/access.log;
  error_log /var/log/nginx/error.log;
  
  server {
    listen 80;
    server_name xyz.yourdomain.com;
    location / {
      # Redirect any http requests to https
      return 301 https://$server_name$request_uri;
    }
  }
  
  server {
    listen 443 ssl;
    server_name xyz.yourdomain.com;
    ssl_certificate /etc/letsencrypt/live/xyz.yourdomain.com/fullchain.pem;
    ssl_certificate_key /etc/letsencrypt/live/xyz.yourdomain.com/privkey.pem;
    add_header Strict-Transport-Security “max-age=31536000”;
    location / {
      proxy_pass http://127.0.0.1:3000;
    }
  }
  
}

Strict-Transport-Securitate Antetul (HSTS) asigură că orice legături interne care nu sunt HTTPS vor fi să fie direcționat automat la versiunea HTTPS în timpul unei sesiuni HTTPS.

Pasul 7

În cele din urmă, reîncărcați configurația NGINX:

sudo service nginx reload

Felicitări! Site-ul tău xyz.example.com rulează acum cu succes pe HTTPS.

NOTĂ: Să criptăm certificatele sunt valabile numai timp de 3 luni de la eliberare. Deci, la fiecare 3 luni, este necesară reînnoirea. Iată cum puteți automatiza acest lucru folosind un job cron.

Dacă această postare v-a ajutat, apăsați butonul inimii de mai jos. ? Și dacă nu a făcut acest lucru, vă rog să lăsați un comentariu pentru a-mi spune cum o pot îmbunătăți.

PS: Mulțumesc lui Narendra N Shetty pentru corectură și sugestii.

1611458108 147 Folosind Lets Encrypt Certbot pentru a obtine HTTPS pe caseta

Karan Thakkar este liderul frontendului la Crowdfire – Colegul tău de marketing super-inteligent. A lui articol a fost anterior Recomandate pe The Huffington Post. Îi place să încerce noi tehnologii în timpul liber și a construit Tweetify (folosind React Native) și Afișați PR-urile mele (folosind Golang).

Alte articole scrise de el:

Cum am crescut de la 300 la 5k adepți în doar 3 săptămâni
#GrowthHacking contul meu Twitter pentru @Crowdfire Twitter Premier Leagueblog.markgrowth.comUn ghid ilustrat pentru configurarea site-ului dvs. web utilizând Github și Cloudflare
Ușor de configurat, implementare instantanee, HTTPS gratuit, suport HTTP2 / SPDY, redirecționare personalizată, expirare cache cache browser, securizare HTTP …medium.freecodecamp.org