ΠΠ°ΠΊ Π΄Π° Π½Π°ΡΡΡΠΎΠΈΡΠ΅ SSL ΡΠ΅ΡΡΠΈΡΠΈΠΊΠ°Ρ Π² Nginx: ΠΡΠ»Π½ΠΎ ΡΡΠΊΠΎΠ²ΠΎΠ΄ΡΡΠ²ΠΎ ΡΡΡΠΏΠΊΠ° ΠΏΠΎ ΡΡΡΠΏΠΊΠ°
ΠΠ°ΡΠΈΡΠ°Π²Π°Π½Π΅ΡΠΎ Π½Π° Π²Π°ΡΠΈΡ ΡΠ΅Π±ΡΠ°ΠΉΡ Ρ SSL/TLS ΡΠ΅ΡΡΠΈΡΠΈΠΊΠ°Ρ Π²Π΅ΡΠ΅ Π½Π΅ Π΅ ΠΏΠΎ ΠΈΠ·Π±ΠΎΡ β ΡΠΎ Π΅ ΠΎΡΠ½ΠΎΠ²Π½ΠΎ ΠΈΠ·ΠΈΡΠΊΠ²Π°Π½Π΅ Π·Π° Π΄ΠΎΠ²Π΅ΡΠΈΠ΅ Π½Π° ΠΏΠΎΡΡΠ΅Π±ΠΈΡΠ΅Π»ΠΈΡΠ΅, Π·Π°ΡΠΈΡΠ° Π½Π° Π΄Π°Π½Π½ΠΈΡΠ΅ ΠΈ ΠΊΠ»Π°ΡΠΈΡΠ°Π½Π΅ Π² ΡΡΡΡΠ°ΡΠΊΠΈΡΠ΅. Google ΠΈΠ·ΡΠΈΡΠ½ΠΎ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π° HTTPS ΠΊΠ°ΡΠΎ ΡΠΈΠ³Π½Π°Π» Π·Π° ΠΊΠ»Π°ΡΠΈΡΠ°Π½Π΅ ΠΎΡ 2014 Π³., Π° ΡΡΠ²ΡΠ΅ΠΌΠ΅Π½Π½ΠΈΡΠ΅ Π±ΡΠ°ΡΠ·ΡΡΠΈ Π°ΠΊΡΠΈΠ²Π½ΠΎ ΠΏΡΠ΅Π΄ΡΠΏΡΠ΅ΠΆΠ΄Π°Π²Π°Ρ ΠΏΠΎΡΠ΅ΡΠΈΡΠ΅Π»ΠΈΡΠ΅, ΠΊΠΎΠ³Π°ΡΠΎ Π΄Π°Π΄Π΅Π½ ΡΠ°ΠΉΡ Π½ΡΠΌΠ° ΠΊΡΠΈΠΏΡΠΈΡΠ°Π½Π΅. ΠΠΊΠΎ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°ΡΠ΅ Nginx ΠΊΠ°ΡΠΎ ΡΠ΅Π± ΡΡΡΠ²ΡΡ, ΡΠΎΠ²Π° ΡΡΠΊΠΎΠ²ΠΎΠ΄ΡΡΠ²ΠΎ ΡΠ΅ Π²ΠΈ ΠΏΡΠ΅Π²Π΅Π΄Π΅ ΠΏΡΠ΅Π· Π²ΡΠΈΡΠΊΠΎ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ, Π·Π° Π΄Π° ΠΈΠ½ΡΡΠ°Π»ΠΈΡΠ°ΡΠ΅, ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠΈΡΠ°ΡΠ΅ ΠΈ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΠ·ΠΈΡΠ°ΡΠ΅ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ΡΠΎ Π½Π° SSL ΡΠ΅ΡΡΠΈΡΠΈΠΊΠ°ΡΠΈ Ρ ΠΏΠΎΠΌΠΎΡΡΠ° Π½Π° Certbot ΠΈ Letβs Encrypt.
ΠΠ΅Π·Π°Π²ΠΈΡΠΈΠΌΠΎ Π΄Π°Π»ΠΈ ΡΠΏΡΠ°Π²Π»ΡΠ²Π°ΡΠ΅ ΡΡΠ΅Π΄Π° Π·Π° VPS Π₯ΠΎΡΡΠΈΠ½Π³, dedicated ΡΡΡΠ²ΡΡ ΠΈΠ»ΠΈ ΡΠΏΠΎΠ΄Π΅Π»Π΅Π½ Ρ ΠΎΡΡΠΈΠ½Π³ ΠΏΠ»Π°Π½, ΠΏΡΠ°Π²ΠΈΠ»Π½ΠΎ ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠΈΡΠ°Π½ΠΈΡΡ SSL Π΅ Π·Π°Π΄ΡΠ»ΠΆΠΈΡΠ΅Π»Π΅Π½ Π·Π° Π²ΡΠ΅ΠΊΠΈ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΡΡΠ²Π΅Π½ ΡΠ΅Π±ΡΠ°ΠΉΡ.
ΠΠ°ΠΊΠ²ΠΎ Π΅ SSL ΡΠ΅ΡΡΠΈΡΠΈΠΊΠ°Ρ ΠΈ Π·Π°ΡΠΎ Nginx ΡΠ΅ Π½ΡΠΆΠ΄Π°Π΅ ΠΎΡ ΡΠ°ΠΊΡΠ²?
SSL (Secure Sockets Layer) ΡΠ΅ΡΡΠΈΡΠΈΠΊΠ°Ρ β ΠΏΠΎ-ΡΠΎΡΠ½ΠΎ Π½Π°ΡΠΈΡΠ°Π½ Π΄Π½Π΅Ρ TLS (Transport Layer Security) ΡΠ΅ΡΡΠΈΡΠΈΠΊΠ°Ρ β ΡΡΡΠ°Π½ΠΎΠ²ΡΠ²Π° ΠΊΡΠΈΠΏΡΠΈΡΠ°Π½Π° Π²ΡΡΠ·ΠΊΠ° ΠΌΠ΅ΠΆΠ΄Ρ Π²Π°ΡΠΈΡ ΡΠ΅Π± ΡΡΡΠ²ΡΡ ΠΈ Π±ΡΠ°ΡΠ·ΡΡΠ° Π½Π° ΠΏΠΎΡΠ΅ΡΠΈΡΠ΅Π»Ρ. Π’ΠΎΠ²Π° ΠΊΡΠΈΠΏΡΠΈΡΠ°Π½Π΅ Π³Π°ΡΠ°Π½ΡΠΈΡΠ°, ΡΠ΅ ΡΡΠ²ΡΡΠ²ΠΈΡΠ΅Π»Π½ΠΈ Π΄Π°Π½Π½ΠΈ ΠΊΠ°ΡΠΎ Π΄Π°Π½Π½ΠΈ Π·Π° Π²Ρ ΠΎΠ΄, ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ Π·Π° ΠΏΠ»Π°ΡΠ°Π½Π΅ ΠΈ Π»ΠΈΡΠ½ΠΈ Π΄Π°Π½Π½ΠΈ Π½Π΅ ΠΌΠΎΠ³Π°Ρ Π΄Π° Π±ΡΠ΄Π°Ρ ΠΏΡΠΈΡ Π²Π°Π½Π°ΡΠΈ ΠΎΡ Π·Π»ΠΎΠ½Π°ΠΌΠ΅ΡΠ΅Π½ΠΈ ΡΡΠ΅ΡΠΈ ΡΡΡΠ°Π½ΠΈ.
ΠΠ° Nginx ΠΊΠΎΠ½ΠΊΡΠ΅ΡΠ½ΠΎ, SSL ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΡΡΠ° Π²ΠΊΠ»ΡΡΠ²Π°:
- Π€Π°ΠΉΠ»ΠΎΠ²Π΅ Π½Π° ΡΠ΅ΡΡΠΈΡΠΈΠΊΠ°ΡΠ°: ΠΡΠ±Π»ΠΈΡΠ½Π°ΡΠ° Π²Π΅ΡΠΈΠ³Π° ΠΎΡ ΡΠ΅ΡΡΠΈΡΠΈΠΊΠ°ΡΠΈ, ΠΈΠ·Π΄Π°Π΄Π΅Π½Π° ΠΎΡ Π‘Π΅ΡΡΠΈΡΠΈΡΠΈΡΠ°Ρ ΠΎΡΠ³Π°Π½ (CA)
- Π§Π°ΡΡΠ΅Π½ ΠΊΠ»ΡΡ: ΠΡΠΈΠΏΡΠΎΠ³ΡΠ°ΡΡΠΊΠΈ Π³Π΅Π½Π΅ΡΠΈΡΠ°Π½ ΠΊΠ»ΡΡ, ΡΡΡ ΡΠ°Π½ΡΠ²Π°Π½ ΡΠΈΠ³ΡΡΠ½ΠΎ Π½Π° Π²Π°ΡΠΈΡ ΡΡΡΠ²ΡΡ
- ΠΠΈΡΠ΅ΠΊΡΠΈΠ²ΠΈ Π½Π° ΡΡΡΠ²ΡΡΠ½ΠΈΡ Π±Π»ΠΎΠΊ: ΠΠ½ΡΡΡΡΠΊΡΠΈΠΈ Π·Π° ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΡ Π½Π° Nginx, ΠΊΠΎΠΈΡΠΎ ΡΠ²ΡΡΠ·Π²Π°Ρ ΡΠ΅ΡΡΠΈΡΠΈΠΊΠ°ΡΠ° Ρ Π²Π°ΡΠΈΡ Π΄ΠΎΠΌΠ΅ΠΉΠ½
ΠΠ΅Π· SSL Π²Π°ΡΠΈΡΡ ΡΠ°ΠΉΡ ΡΠ΅ ΠΎΠ±ΡΠ»ΡΠΆΠ²Π° ΠΏΠΎ HTTP, ΠΊΠΎΠ΅ΡΠΎ ΠΎΠ·Π½Π°ΡΠ°Π²Π°, ΡΠ΅ ΡΠ΅Π»ΠΈΡΡ ΡΡΠ°ΡΠΈΠΊ ΡΠ΅ ΠΏΡΠ΅Π΄Π°Π²Π° Π² ΠΎΠ±ΠΈΠΊΠ½ΠΎΠ²Π΅Π½ ΡΠ΅ΠΊΡΡ. ΠΡΠΈ ΠΏΡΠ°Π²ΠΈΠ»Π½ΠΎ ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠΈΡΠ°Π½ SSL Π²Π°ΡΠΈΡΡ ΡΠ°ΠΉΡ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π° HTTPS β ΠΊΡΠΈΠΏΡΠΈΡΠ°Π½, ΡΠ΄ΠΎΡΡΠΎΠ²Π΅ΡΠ΅Π½ ΠΈ Π΄ΠΎΠ²Π΅ΡΠ΅Π½ ΠΎΡ Π±ΡΠ°ΡΠ·ΡΡΠΈ ΠΈ ΡΡΡΡΠ°ΡΠΊΠΈ.
> ΠΠΎΠ»Π΅Π·Π΅Π½ ΡΡΠ²Π΅Ρ: ΠΠΊΠΎ ΠΎΡΠ΅Π½ΡΠ²Π°ΡΠ΅ ΠΎΠΏΡΠΈΠΈ Π·Π° Ρ ΠΎΡΡΠΈΠ½Π³, AlexHost ΠΏΡΠ΅Π΄Π»Π°Π³Π° SSL Π‘Π΅ΡΡΠΈΡΠΈΠΊΠ°ΡΠΈ Π·Π° Π΄ΠΎΠΌΠ΅ΠΉΠ½ΠΈ ΠΎΡ Π²ΡΠΈΡΠΊΠΈ Π²ΠΈΠ΄ΠΎΠ²Π΅, Π²ΠΊΠ»ΡΡΠΈΡΠ΅Π»Π½ΠΎ ΡΠ΅ΡΡΠΈΡΠΈΠΊΠ°ΡΠΈ Π·Π° Π²Π°Π»ΠΈΠ΄ΠΈΡΠ°Π½Π΅ Π½Π° Π΄ΠΎΠΌΠ΅ΠΉΠ½ (DV), Π²Π°Π»ΠΈΠ΄ΠΈΡΠ°Π½Π΅ Π½Π° ΠΎΡΠ³Π°Π½ΠΈΠ·Π°ΡΠΈΡ (OV) ΠΈ ΡΠ°Π·ΡΠΈΡΠ΅Π½ΠΎ Π²Π°Π»ΠΈΠ΄ΠΈΡΠ°Π½Π΅ (EV).
ΠΡΠ΅Π΄Π²Π°ΡΠΈΡΠ΅Π»Π½ΠΈ ΠΈΠ·ΠΈΡΠΊΠ²Π°Π½ΠΈΡ ΠΏΡΠ΅Π΄ΠΈ Π΄Π° Π·Π°ΠΏΠΎΡΠ½Π΅ΡΠ΅
ΠΡΠ΅Π΄ΠΈ Π΄Π° ΡΠ΅ ΠΏΠΎΡΠΎΠΏΠΈΡΠ΅ Π² ΡΡΡΠΏΠΊΠΈΡΠ΅ Π·Π° ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΡ, ΡΠ²Π΅ΡΠ΅ΡΠ΅ ΡΠ΅, ΡΠ΅ ΡΠ° ΠΈΠ·ΠΏΡΠ»Π½Π΅Π½ΠΈ ΡΠ»Π΅Π΄Π½ΠΈΡΠ΅ ΡΡΠ»ΠΎΠ²ΠΈΡ:
- Π Π°Π±ΠΎΡΠ΅Ρ Nginx ΡΠ΅Π± ΡΡΡΠ²ΡΡ Π½Π° Linux-Π±Π°Π·ΠΈΡΠ°Π½Π° ΡΠΈΡΡΠ΅ΠΌΠ° (ΠΏΡΠ΅ΠΏΠΎΡΡΡΠ²Π° ΡΠ΅ Ubuntu 20.04/22.04 ΠΈΠ»ΠΈ Debian)
- Root ΠΈΠ»ΠΈ sudo Π΄ΠΎΡΡΡΠΏ Π΄ΠΎ Π²Π°ΡΠΈΡ ΡΡΡΠ²ΡΡ
- Π Π΅Π³ΠΈΡΡΡΠΈΡΠ°Π½ΠΎ Π΄ΠΎΠΌΠ΅Π½Π½ΠΎ ΠΈΠΌΠ΅, Π½Π°ΡΠΎΡΠ΅Π½ΠΎ ΠΊΡΠΌ IP Π°Π΄ΡΠ΅ΡΠ° Π½Π° Π²Π°ΡΠΈΡ ΡΡΡΠ²ΡΡ ΡΡΠ΅Π· DNS A Π·Π°ΠΏΠΈΡΠΈ β ΠΌΠΎΠΆΠ΅ΡΠ΅ Π΄Π° ΡΠ΅Π³ΠΈΡΡΡΠΈΡΠ°ΡΠ΅ ΡΠ°ΠΊΠΎΠ²Π° ΡΡΠ΅Π· Π Π΅Π³ΠΈΡΡΡΠ°ΡΠΈΡ Π½Π° Π΄ΠΎΠΌΠ΅ΠΉΠ½ΠΈ
- ΠΡΠ²ΠΎΡΠ΅Π½ΠΈ ΠΏΠΎΡΡΠΎΠ²Π΅ Π½Π° Π·Π°ΡΠΈΡΠ½Π°ΡΠ° ΡΡΠ΅Π½Π°: TCP ΠΏΠΎΡΡΠΎΠ²Π΅ 80 (HTTP) ΠΈ 443 (HTTPS) ΡΡΡΠ±Π²Π° Π΄Π° Π±ΡΠ΄Π°Ρ Π΄ΠΎΡΡΡΠΏΠ½ΠΈ
- ΠΠΎΡΡΠ΅Π±ΠΈΡΠ΅Π» Π±Π΅Π· root ΠΏΡΠ°Π²Π° ΡΡΡ sudo ΠΏΡΠΈΠ²ΠΈΠ»Π΅Π³ΠΈΠΈ (Π½Π°ΠΉ-Π΄ΠΎΠ±ΡΠ° ΠΏΡΠ°ΠΊΡΠΈΠΊΠ° Π·Π° ΡΠΈΠ³ΡΡΠ½ΠΎΡΡ Π½Π° ΡΡΡΠ²ΡΡΠ°)
ΠΠΎΠΆΠ΅ΡΠ΅ Π΄Π° ΠΏΡΠΎΠ²Π΅ΡΠΈΡΠ΅ Π΄Π°Π»ΠΈ Nginx ΡΠ°Π±ΠΎΡΠΈ Ρ:
sudo systemctl status nginxΠ Π΄Π° ΠΏΠΎΡΠ²ΡΡΠ΄ΠΈΡΠ΅, ΡΠ΅ Π²Π°ΡΠΈΡΡ Π΄ΠΎΠΌΠ΅ΠΉΠ½ ΡΠ΅ ΡΠ°Π·ΡΠ΅ΡΠ°Π²Π° ΠΏΡΠ°Π²ΠΈΠ»Π½ΠΎ, ΠΊΠ°ΡΠΎ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°ΡΠ΅:
dig yourdomain.com +shortΠ‘ΡΡΠΏΠΊΠ° 1: ΠΠ½ΡΡΠ°Π»ΠΈΡΠ°ΠΉΡΠ΅ Certbot Π½Π° Π²Π°ΡΠΈΡ ΡΡΡΠ²ΡΡ
Certbot Π΅ ΠΎΡΠΈΡΠΈΠ°Π»Π½ΠΈΡΡ ΠΊΠ»ΠΈΠ΅Π½Ρ Ρ ΠΎΡΠ²ΠΎΡΠ΅Π½ ΠΊΠΎΠ΄ Π·Π° Letβs Encrypt β Π±Π΅Π·ΠΏΠ»Π°ΡΠ΅Π½, Π°Π²ΡΠΎΠΌΠ°ΡΠΈΠ·ΠΈΡΠ°Π½ ΠΈ ΡΠΈΡΠΎΠΊΠΎ Π΄ΠΎΠ²Π΅ΡΠ΅Π½ Π‘Π΅ΡΡΠΈΡΠΈΡΠΈΡΠ°Ρ ΠΎΡΠ³Π°Π½. Π’ΠΎΠΉ ΠΎΠ±ΡΠ°Π±ΠΎΡΠ²Π° ΡΠ΅Π»ΠΈΡ ΠΏΡΠΎΡΠ΅Ρ Π½Π° ΠΈΠ·Π΄Π°Π²Π°Π½Π΅ Π½Π° ΡΠ΅ΡΡΠΈΡΠΈΠΊΠ°ΡΠΈ, Π²ΠΊΠ»ΡΡΠΈΡΠ΅Π»Π½ΠΎ Π²Π°Π»ΠΈΠ΄ΠΈΡΠ°Π½Π΅ Π½Π° Π΄ΠΎΠΌΠ΅ΠΉΠ½Π° ΠΈ Π°ΠΊΡΡΠ°Π»ΠΈΠ·Π°ΡΠΈΠΈ Π½Π° ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΡΡΠ° Π½Π° Nginx.
ΠΠΊΡΡΠ°Π»ΠΈΠ·ΠΈΡΠ°ΠΉΡΠ΅ ΠΈΠ½Π΄Π΅ΠΊΡΠ° Π½Π° ΠΏΠ°ΠΊΠ΅ΡΠΈΡΠ΅
ΠΠΈΠ½Π°Π³ΠΈ Π·Π°ΠΏΠΎΡΠ²Π°ΠΉΡΠ΅ Ρ ΠΎΠΏΡΠ΅ΡΠ½ΡΠ²Π°Π½Π΅ Π½Π° ΡΠΏΠΈΡΡΡΠΈΡΠ΅ Ρ ΠΏΠ°ΠΊΠ΅ΡΠΈ, Π·Π° Π΄Π° ΡΡΠ΅ ΡΠΈΠ³ΡΡΠ½ΠΈ, ΡΠ΅ ΠΈΠ½ΡΡΠ°Π»ΠΈΡΠ°ΡΠ΅ Π½Π°ΠΉ-Π½ΠΎΠ²ΠΈΡΠ΅ Π½Π°Π»ΠΈΡΠ½ΠΈ Π²Π΅ΡΡΠΈΠΈ:
sudo apt update && sudo apt upgrade -yΠΠ½ΡΡΠ°Π»ΠΈΡΠ°ΠΉΡΠ΅ Certbot ΠΈ ΠΏΠ»ΡΠ³ΠΈΠ½Π° Π·Π° Nginx
ΠΠ»ΡΠ³ΠΈΠ½ΡΡ python3-certbot-nginx ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ²Π° Π½Π° Certbot Π΄ΠΈΡΠ΅ΠΊΡΠ½ΠΎ Π΄Π° ΡΠ΅ΡΠ΅ ΠΈ ΠΌΠΎΠ΄ΠΈΡΠΈΡΠΈΡΠ° Π²Π°ΡΠΈΡΠ΅ ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΠΎΠ½Π½ΠΈ ΡΠ°ΠΉΠ»ΠΎΠ²Π΅ Π½Π° Nginx, Π°Π²ΡΠΎΠΌΠ°ΡΠΈΠ·ΠΈΡΠ°ΠΉΠΊΠΈ Π³ΠΎΠ»ΡΠΌΠ° ΡΠ°ΡΡ ΠΎΡ ΠΏΡΠΎΡΠ΅ΡΠ° Π½Π° Π½Π°ΡΡΡΠΎΠΉΠΊΠ°:
sudo apt install certbot python3-certbot-nginx -yΠΡΠΎΠ²Π΅ΡΠ΅ΡΠ΅ ΠΈΠ½ΡΡΠ°Π»Π°ΡΠΈΡΡΠ°
ΠΠΎΡΠ²ΡΡΠ΄Π΅ΡΠ΅, ΡΠ΅ Certbot Π΅ ΠΈΠ½ΡΡΠ°Π»ΠΈΡΠ°Π½ ΡΡΠΏΠ΅ΡΠ½ΠΎ, ΠΊΠ°ΡΠΎ ΠΏΡΠΎΠ²Π΅ΡΠΈΡΠ΅ Π²Π΅ΡΡΠΈΡΡΠ° ΠΌΡ:
certbot --versionΠ’ΡΡΠ±Π²Π° Π΄Π° Π²ΠΈΠ΄ΠΈΡΠ΅ ΠΈΠ·Ρ
ΠΎΠ΄, ΠΏΠΎΠ΄ΠΎΠ±Π΅Π½ Π½Π° certbot 2.x.x.
Π‘ΡΡΠΏΠΊΠ° 2: Π Π°Π·ΡΠ΅ΡΠ΅ΡΠ΅ HTTPS ΡΡΠ°ΡΠΈΠΊ ΠΏΡΠ΅Π· Π²Π°ΡΠ°ΡΠ° Π·Π°ΡΠΈΡΠ½Π° ΡΡΠ΅Π½Π°
ΠΠΊΠΎ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°ΡΠ΅ UFW (Uncomplicated Firewall), ΡΡΡΠ±Π²Π° ΠΈΠ·ΡΠΈΡΠ½ΠΎ Π΄Π° ΡΠ°Π·ΡΠ΅ΡΠΈΡΠ΅ HTTPS ΡΡΠ°ΡΠΈΠΊΠ°, ΠΏΡΠ΅Π΄ΠΈ Π΄Π° ΠΏΡΠΎΠ΄ΡΠ»ΠΆΠΈΡΠ΅:
sudo ufw allow 'Nginx Full'
sudo ufw delete allow 'Nginx HTTP'
sudo ufw statusΠΡΠΎΡΠΈΠ»ΡΡ Nginx Full ΡΠ°Π·ΡΠ΅ΡΠ°Π²Π° Π΅Π΄Π½ΠΎΠ²ΡΠ΅ΠΌΠ΅Π½Π½ΠΎ HTTP (ΠΏΠΎΡΡ 80) ΠΈ HTTPS (ΠΏΠΎΡΡ 443). ΠΡΠ΅ΠΌΠ°Ρ
Π²Π°Π½Π΅ΡΠΎ Π½Π° ΡΠ°ΠΌΠΎΡΡΠΎΡΡΠ΅Π»Π½ΠΎΡΠΎ HTTP ΠΏΡΠ°Π²ΠΈΠ»ΠΎ Π³Π°ΡΠ°Π½ΡΠΈΡΠ°, ΡΠ΅ ΡΠ»Π΅Π΄ ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠΈΡΠ°Π½Π΅ΡΠΎ Π½Π° SSL Π½Π΅ ΠΎΡΡΠ°Π²ΡΡΠ΅ Π½Π΅Π½ΡΠΆΠ½ΠΈ ΠΏΠΎΡΡΠΎΠ²Π΅ ΠΎΡΠ²ΠΎΡΠ΅Π½ΠΈ Π±Π΅Π· ΡΠ΅Π».
Π‘ΡΡΠΏΠΊΠ° 3: ΠΠΎΠ»ΡΡΠ΅ΡΠ΅ Π²Π°ΡΠΈΡ SSL ΡΠ΅ΡΡΠΈΡΠΈΠΊΠ°Ρ ΠΎΡ Letβs Encrypt
Π‘ ΠΈΠ½ΡΡΠ°Π»ΠΈΡΠ°Π½ Certbot ΠΈ ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠΈΡΠ°Π½Π° Π·Π°ΡΠΈΡΠ½Π° ΡΡΠ΅Π½Π° Π²Π΅ΡΠ΅ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π΄Π° Π·Π°ΡΠ²ΠΈΡΠ΅ ΡΠ΅ΡΡΠΈΡΠΈΠΊΠ°Ρ. Π€Π»Π°Π³ΡΡ --nginx ΠΊΠ°Π·Π²Π° Π½Π° Certbot Π΄Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π° ΠΏΠ»ΡΠ³ΠΈΠ½Π° Π·Π° Nginx, ΠΊΠΎΠΉΡΠΎ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ½ΠΎ ΠΎΠ±ΡΠ°Π±ΠΎΡΠ²Π° Π²Π΅ΡΠΈΡΠΈΠΊΠ°ΡΠΈΡΡΠ° Π½Π° ACME ΠΏΡΠ΅Π΄ΠΈΠ·Π²ΠΈΠΊΠ°ΡΠ΅Π»ΡΡΠ²ΠΎΡΠΎ ΠΈ Π°ΠΊΡΡΠ°Π»ΠΈΠ·ΠΈΡΠ° ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΡΡΠ° Π½Π° Π²Π°ΡΠΈΡ ΡΡΡΠ²ΡΡ.
sudo certbot --nginx -d yourdomain.com -d www.yourdomain.comΠΠ°ΠΊΠ²ΠΎ ΡΠ΅ ΡΠ»ΡΡΠ²Π° ΠΏΠΎ Π²ΡΠ΅ΠΌΠ΅ Π½Π° ΡΠΎΠ·ΠΈ ΠΏΡΠΎΡΠ΅Ρ?
- ΠΠ΅ΡΠΈΡΠΈΠΊΠ°ΡΠΈΡ Π½Π° ΡΠΎΠ±ΡΡΠ²Π΅Π½ΠΎΡΡΡΠ° Π½Π° Π΄ΠΎΠΌΠ΅ΠΉΠ½Π°: Certbot Π²ΡΠ΅ΠΌΠ΅Π½Π½ΠΎ ΠΌΠΎΠ΄ΠΈΡΠΈΡΠΈΡΠ° Π²Π°ΡΠ°ΡΠ° Nginx ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΡ, Π·Π° Π΄Π° ΠΎΠ±ΡΠ»ΡΠΆΠ²Π° ΡΠ°ΠΉΠ» Ρ ΠΏΡΠ΅Π΄ΠΈΠ·Π²ΠΈΠΊΠ°ΡΠ΅Π»ΡΡΠ²ΠΎ, Π΄ΠΎΠΊΠ°Π·Π²Π°ΠΉΠΊΠΈ Π½Π° Letβs Encrypt, ΡΠ΅ ΠΊΠΎΠ½ΡΡΠΎΠ»ΠΈΡΠ°ΡΠ΅ Π΄ΠΎΠΌΠ΅ΠΉΠ½Π°
- ΠΠ·Π΄Π°Π²Π°Π½Π΅ Π½Π° ΡΠ΅ΡΡΠΈΡΠΈΠΊΠ°Ρ: Letβs Encrypt ΠΈΠ·Π΄Π°Π²Π° ΠΏΠΎΠ΄ΠΏΠΈΡΠ°Π½ ΡΠ΅ΡΡΠΈΡΠΈΠΊΠ°Ρ, Π²Π°Π»ΠΈΠ΄Π΅Π½ Π·Π° 90 Π΄Π½ΠΈ
- ΠΠ²ΡΠΎΠΌΠ°ΡΠΈΡΠ½Π° Nginx ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΡ: Certbot Π°ΠΊΡΡΠ°Π»ΠΈΠ·ΠΈΡΠ° Π²Π°ΡΠΈΡ Nginx ΡΡΡΠ²ΡΡΠ΅Π½ Π±Π»ΠΎΠΊ, Π·Π° Π΄Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π° Π½ΠΎΠ²ΠΈΡΠ΅ ΡΠ°ΠΉΠ»ΠΎΠ²Π΅ Π½Π° ΡΠ΅ΡΡΠΈΡΠΈΠΊΠ°ΡΠ°
ΠΠ½ΡΠ΅ΡΠ°ΠΊΡΠΈΠ²Π½ΠΈ ΠΏΠΎΠ΄ΠΊΠ°Π½ΠΈ
ΠΠΎ Π²ΡΠ΅ΠΌΠ΅ Π½Π° ΠΏΡΠΎΡΠ΅ΡΠ° Certbot ΡΠ΅ ΠΏΠΎΠΈΡΠΊΠ°:
- ΠΠΌΠ΅ΠΉΠ» Π°Π΄ΡΠ΅Ρ Π·Π° ΡΠΏΠ΅ΡΠ½ΠΈ ΠΈΠ·Π²Π΅ΡΡΠΈΡ Π·Π° ΠΏΠΎΠ΄Π½ΠΎΠ²ΡΠ²Π°Π½Π΅ ΠΈ ΡΠΈΠ³ΡΡΠ½ΠΎΡΡ
- Π‘ΡΠ³Π»Π°ΡΠΈΠ΅ Ρ Π£ΡΠ»ΠΎΠ²ΠΈΡΡΠ° Π·Π° ΠΏΠΎΠ»Π·Π²Π°Π½Π΅
- ΠΠ°Π»ΠΈ Π΄Π° ΡΠ΅ ΠΏΡΠ΅Π½Π°ΡΠΎΡΠΈ HTTP ΠΊΡΠΌ HTTPS β Π²ΠΈΠ½Π°Π³ΠΈ ΠΈΠ·Π±ΠΈΡΠ°ΠΉΡΠ΅ ΠΎΠΏΡΠΈΡ 2 (Redirect), Π·Π° Π΄Π° Π½Π°Π»ΠΎΠΆΠΈΡΠ΅ HTTPS Π² ΡΠ΅Π»ΠΈΡ ΡΠ°ΠΉΡ
ΠΠ°ΡΠΈΡΠ΅ ΡΠ΅ΡΡΠΈΡΠΈΠΊΠ°ΡΠΈ ΡΠ΅ Π±ΡΠ΄Π°Ρ ΡΡΡ ΡΠ°Π½Π΅Π½ΠΈ Π²:
/etc/letsencrypt/live/yourdomain.com/ΠΠ»ΡΡΠΎΠ²ΠΈΡΠ΅ ΡΠ°ΠΉΠ»ΠΎΠ²Π΅ ΡΠ°:
| Π€Π°ΠΉΠ» | ΠΡΠ΅Π΄Π½Π°Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ |
|---|---|
fullchain.pem | ΠΠ°ΡΠΈΡΡ ΡΠ΅ΡΡΠΈΡΠΈΠΊΠ°Ρ + ΠΌΠ΅ΠΆΠ΄ΠΈΠ½Π½Π° Π²Π΅ΡΠΈΠ³Π° |
privkey.pem | ΠΠ°ΡΠΈΡΡ ΡΠ°ΡΡΠ΅Π½ ΠΊΠ»ΡΡ (ΠΏΠ°Π·Π΅ΡΠ΅ Π³ΠΎ Π² ΡΠ°ΠΉΠ½Π°) |
cert.pem | Π‘Π°ΠΌΠΎ Π²Π°ΡΠΈΡΡ Π΄ΠΎΠΌΠ΅ΠΉΠ½ ΡΠ΅ΡΡΠΈΡΠΈΠΊΠ°Ρ |
chain.pem | Π‘Π°ΠΌΠΎ ΠΌΠ΅ΠΆΠ΄ΠΈΠ½Π½ΠΈΡΠ΅ ΡΠ΅ΡΡΠΈΡΠΈΠΊΠ°ΡΠΈ |
Π‘ΡΡΠΏΠΊΠ° 4: Π ΡΡΠ½ΠΎ ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠΈΡΠ°ΠΉΡΠ΅ Nginx Π·Π° SSL (Π Π°Π·ΡΠΈΡΠ΅Π½ΠΎ)
ΠΠΎΠΊΠ°ΡΠΎ Certbot Π°Π²ΡΠΎΠΌΠ°ΡΠΈΠ·ΠΈΡΠ° ΠΏΠΎ-Π³ΠΎΠ»ΡΠΌΠ°ΡΠ° ΡΠ°ΡΡ ΠΎΡ ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΡΡΠ°, ΡΠ°Π·Π±ΠΈΡΠ°Π½Π΅ΡΠΎ Π½Π° ΡΡΡΠ½Π°ΡΠ° Π½Π°ΡΡΡΠΎΠΉΠΊΠ° Π²ΠΈ Π΄Π°Π²Π° ΠΏΡΠ»Π΅Π½ ΠΊΠΎΠ½ΡΡΠΎΠ» Π²ΡΡΡ Ρ Π²Π°ΡΠ°ΡΠ° SSL ΠΈΠΌΠΏΠ»Π΅ΠΌΠ΅Π½ΡΠ°ΡΠΈΡ β ΠΎΡ ΡΡΡΠ΅ΡΡΠ²Π΅Π½ΠΎ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ Π·Π° Π½Π°ΡΡΡΠΎΠΉΠΊΠ° Π½Π° ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»Π½ΠΎΡΡΡΠ°, ΡΠΊΡΠ΅ΠΏΠ²Π°Π½Π΅ Π½Π° ΡΠΈΠ³ΡΡΠ½ΠΎΡΡΡΠ° ΠΈ ΠΏΠ΅ΡΡΠΎΠ½Π°Π»ΠΈΠ·ΠΈΡΠ°Π½ΠΈ Π²Π½Π΅Π΄ΡΡΠ²Π°Π½ΠΈΡ.
ΠΡΠ²ΠΎΡΠ΅ΡΠ΅ ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΡΡΠ° Π½Π° Π²Π°ΡΠΈΡ Nginx ΡΡΡΠ²ΡΡΠ΅Π½ Π±Π»ΠΎΠΊ
sudo nano /etc/nginx/sites-available/yourdomain.comΠΠΊΠΎ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°ΡΠ΅ ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΠΎΠ½Π½ΠΈΡ ΡΠ°ΠΉΠ» ΠΏΠΎ ΠΏΠΎΠ΄ΡΠ°Π·Π±ΠΈΡΠ°Π½Π΅:
sudo nano /etc/nginx/sites-available/defaultΠΡΠ»Π½Π° ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΡ Π½Π° SSL ΡΡΡΠ²ΡΡΠ½ΠΈΡ Π±Π»ΠΎΠΊ
ΠΠ°ΠΌΠ΅Π½Π΅ΡΠ΅ ΠΈΠ»ΠΈ Π°ΠΊΡΡΠ°Π»ΠΈΠ·ΠΈΡΠ°ΠΉΡΠ΅ Π²Π°ΡΠ°ΡΠ° ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΡ ΡΡΡ ΡΠ»Π΅Π΄Π½ΠΈΡ ΡΠΊΡΠ΅ΠΏΠ΅Π½ ΠΏΡΠΈΠΌΠ΅Ρ:
# Redirect all HTTP traffic to HTTPS
server {
listen 80;
listen [::]:80;
server_name yourdomain.com www.yourdomain.com;
return 301 https://$host$request_uri;
}
# HTTPS server block
server {
listen 443 ssl http2;
listen [::]:443 ssl http2;
server_name yourdomain.com www.yourdomain.com;
# SSL Certificate Paths
ssl_certificate /etc/letsencrypt/live/yourdomain.com/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/yourdomain.com/privkey.pem;
# Recommended SSL parameters
ssl_protocols TLSv1.2 TLSv1.3;
ssl_prefer_server_ciphers on;
ssl_ciphers ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384;
ssl_session_cache shared:SSL:10m;
ssl_session_timeout 1d;
ssl_session_tickets off;
# OCSP Stapling
ssl_stapling on;
ssl_stapling_verify on;
ssl_trusted_certificate /etc/letsencrypt/live/yourdomain.com/chain.pem;
resolver 8.8.8.8 8.8.4.4 valid=300s;
resolver_timeout 5s;
# Security Headers
add_header Strict-Transport-Security "max-age=63072000; includeSubDomains; preload" always;
add_header X-Frame-Options DENY;
add_header X-Content-Type-Options nosniff;
add_header X-XSS-Protection "1; mode=block";
add_header Referrer-Policy "no-referrer-when-downgrade";
# Document root and index
root /var/www/yourdomain.com/html;
index index.html index.htm index.nginx-debian.html;
location / {
try_files $uri $uri/ =404;
}
}ΠΠ±ΡΡΠ½Π΅Π½ΠΈΠ΅ Π½Π° ΠΊΠ»ΡΡΠΎΠ²ΠΈΡΠ΅ ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΠΎΠ½Π½ΠΈ Π΄ΠΈΡΠ΅ΠΊΡΠΈΠ²ΠΈ
ssl_protocols TLSv1.2 TLSv1.3: ΠΠ΅Π°ΠΊΡΠΈΠ²ΠΈΡΠ° ΠΏΠΎ-ΡΡΠ°ΡΠΈ, ΡΡΠ·Π²ΠΈΠΌΠΈ ΠΏΡΠΎΡΠΎΠΊΠΎΠ»ΠΈ (SSLv3, TLS 1.0, TLS 1.1)ssl_ciphers: ΠΠ°Π΄Π°Π²Π° ΡΠΈΠ»Π΅Π½ Π½Π°Π±ΠΎΡ ΠΎΡ ΡΠΈΡΡΠΈ Ρ ΠΏΡΠΈΠΎΡΠΈΡΠ΅Ρ Π½Π° forward secrecyssl_stapling on: ΠΠΊΡΠΈΠ²ΠΈΡΠ° OCSP stapling, Π½Π°ΠΌΠ°Π»ΡΠ²Π°ΠΉΠΊΠΈ Π»Π°ΡΠ΅Π½ΡΠ½ΠΎΡΡΡΠ° ΠΏΡΠΈ SSL ΡΡΠΊΠΎΡΡΠΈΡΠΊΠ°Π½Π΅Strict-Transport-Security: ΠΠ½ΡΡΡΡΠΊΡΠΈΡΠ° Π±ΡΠ°ΡΠ·ΡΡΠΈΡΠ΅ Π²ΠΈΠ½Π°Π³ΠΈ Π΄Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Ρ HTTPS Π·Π° Π²Π°ΡΠΈΡ Π΄ΠΎΠΌΠ΅ΠΉΠ½ (HSTS)http2: ΠΠΊΡΠΈΠ²ΠΈΡΠ° HTTP/2 Π·Π° ΠΏΠΎΠ΄ΠΎΠ±ΡΠ΅Π½Π° ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»Π½ΠΎΡΡ ΠΏΡΠΈ HTTPS Π²ΡΡΠ·ΠΊΠΈ
Π‘ΡΡΠΏΠΊΠ° 5: Π’Π΅ΡΡΠ²Π°ΠΉΡΠ΅ Π²Π°ΡΠ°ΡΠ° Nginx ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΡ
ΠΡΠ΅Π΄ΠΈ Π΄Π° ΡΠ΅ΡΡΠ°ΡΡΠΈΡΠ°ΡΠ΅ Nginx, Π²ΠΈΠ½Π°Π³ΠΈ Π²Π°Π»ΠΈΠ΄ΠΈΡΠ°ΠΉΡΠ΅ ΡΠΈΠ½ΡΠ°ΠΊΡΠΈΡΠ° Π½Π° Π²Π°ΡΠ°ΡΠ° ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΡ, Π·Π° Π΄Π° Ρ Π²Π°Π½Π΅ΡΠ΅ Π³ΡΠ΅ΡΠΊΠΈ, ΠΊΠΎΠΈΡΠΎ Π±ΠΈΡ Π° ΠΌΠΎΠ³Π»ΠΈ Π΄Π° ΡΠ²Π°Π»ΡΡ ΡΠ°ΠΉΡΠ° Π²ΠΈ ΠΎΡΠ»Π°ΠΉΠ½:
sudo nginx -tΠ£ΡΠΏΠ΅ΡΠ½ΠΈΡΡ ΡΠ΅ΡΡ Π²ΡΡΡΠ°:
nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
nginx: configuration file /etc/nginx/nginx.conf test is successfulΠΠΊΠΎ ΡΡΠ΅ΡΠ½Π΅ΡΠ΅ Π³ΡΠ΅ΡΠΊΠΈ, ΠΏΡΠ΅Π³Π»Π΅Π΄Π°ΠΉΡΠ΅ Π²Π½ΠΈΠΌΠ°ΡΠ΅Π»Π½ΠΎ ΠΈΠ·Ρ ΠΎΠ΄Π° β Nginx ΡΠ΅ ΠΏΠΎΡΠΎΡΠΈ ΡΠ°ΠΉΠ»Π° ΠΈ Π½ΠΎΠΌΠ΅ΡΠ° Π½Π° ΡΠ΅Π΄Π°, ΠΊΡΠ΄Π΅ΡΠΎ ΡΡΡΠ΅ΡΡΠ²ΡΠ²Π° ΠΏΡΠΎΠ±Π»Π΅ΠΌΡΡ.
Π‘ΡΡΠΏΠΊΠ° 6: Π Π΅ΡΡΠ°ΡΡΠΈΡΠ°ΠΉΡΠ΅ Nginx Π·Π° ΠΏΡΠΈΠ»Π°Π³Π°Π½Π΅ Π½Π° ΠΏΡΠΎΠΌΠ΅Π½ΠΈΡΠ΅
Π‘Π»Π΅Π΄ ΠΊΠ°ΡΠΎ ΡΠ΅ΡΡΡΡ Π½Π° ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΡΡΠ° ΠΏΡΠ΅ΠΌΠΈΠ½Π΅ ΡΡΠΏΠ΅ΡΠ½ΠΎ, ΠΏΡΠ΅Π·Π°ΡΠ΅Π΄Π΅ΡΠ΅ ΠΈΠ»ΠΈ ΡΠ΅ΡΡΠ°ΡΡΠΈΡΠ°ΠΉΡΠ΅ Nginx:
# Graceful reload (preferred for production β no downtime)
sudo systemctl reload nginx
# Full restart (use if reload doesn't apply all changes)
sudo systemctl restart nginxΠΡΠΎΠ²Π΅ΡΠ΅ΡΠ΅ Π΄Π°Π»ΠΈ Nginx ΡΠ°Π±ΠΎΡΠΈ ΠΏΡΠ°Π²ΠΈΠ»Π½ΠΎ ΡΠ»Π΅Π΄ ΡΠ΅ΡΡΠ°ΡΡΠΈΡΠ°Π½Π΅ΡΠΎ:
sudo systemctl status nginxΠ‘ΡΡΠΏΠΊΠ° 7: ΠΠ°ΡΡΡΠΎΠΉΡΠ΅ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ½ΠΎ ΠΏΠΎΠ΄Π½ΠΎΠ²ΡΠ²Π°Π½Π΅ Π½Π° SSL ΡΠ΅ΡΡΠΈΡΠΈΠΊΠ°ΡΠ°
Π‘Π΅ΡΡΠΈΡΠΈΠΊΠ°ΡΠΈΡΠ΅ Π½Π° Letβs Encrypt ΠΈΠ·ΡΠΈΡΠ°Ρ ΡΠ»Π΅Π΄ 90 Π΄Π½ΠΈ. Π’ΠΎΠ·ΠΈ ΠΊΡΠ°ΡΡΠΊ ΠΏΠ΅ΡΠΈΠΎΠ΄ Π½Π° Π²Π°Π»ΠΈΠ΄Π½ΠΎΡΡ Π΅ ΡΠΌΠΈΡΠ»Π΅Π½ β ΡΠΎΠΉ ΠΎΠ³ΡΠ°Π½ΠΈΡΠ°Π²Π° ΡΠ΅ΡΠΈΡΠ΅ ΠΎΡ ΠΊΠΎΠΌΠΏΡΠΎΠΌΠ΅ΡΠΈΡΠ°Π½ΠΈ ΡΠ΅ΡΡΠΈΡΠΈΠΊΠ°ΡΠΈ ΠΈ Π½Π°ΡΡΡΡΠ°Π²Π° Π°Π²ΡΠΎΠΌΠ°ΡΠΈΠ·Π°ΡΠΈΡΡΠ°. Certbot Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ½ΠΎ ΠΈΠ½ΡΡΠ°Π»ΠΈΡΠ° systemd ΡΠ°ΠΉΠΌΠ΅Ρ (ΠΈΠ»ΠΈ cron Π·Π°Π΄Π°ΡΠ°) Π·Π° ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠ° Π½Π° ΠΏΠΎΠ΄Π½ΠΎΠ²ΡΠ²Π°Π½ΠΈΡΡΠ°, Π½ΠΎ ΡΡΡΠ±Π²Π° Π΄Π° Π³ΠΎ ΠΏΡΠΎΠ²Π΅ΡΠΈΡΠ΅ ΠΈ ΡΠ΅ΡΡΠ²Π°ΡΠ΅.
ΠΡΠΎΠ²Π΅ΡΠ΅ΡΠ΅ ΡΡΡΠ΅ΡΡΠ²ΡΠ²Π°ΡΠΈΡ ΡΠ°ΠΉΠΌΠ΅Ρ Π·Π° ΠΏΠΎΠ΄Π½ΠΎΠ²ΡΠ²Π°Π½Π΅
sudo systemctl status certbot.timerΠ’ΡΡΠ±Π²Π° Π΄Π° Π²ΠΈΠ΄ΠΈΡΠ΅, ΡΠ΅ ΡΠ°ΠΉΠΌΠ΅ΡΡΡ Π΅ Π°ΠΊΡΠΈΠ²Π΅Π½ ΠΈ ΠΏΠ»Π°Π½ΠΈΡΠ°Π½ Π΄Π° ΡΠ΅ ΠΈΠ·ΠΏΡΠ»Π½ΡΠ²Π° Π΄Π²Π° ΠΏΡΡΠΈ Π΄Π½Π΅Π²Π½ΠΎ.
Π’Π΅ΡΡΠ²Π°ΠΉΡΠ΅ ΠΏΡΠΎΡΠ΅ΡΠ° Π½Π° ΠΏΠΎΠ΄Π½ΠΎΠ²ΡΠ²Π°Π½Π΅
Π‘ΠΈΠΌΡΠ»ΠΈΡΠ°ΠΉΡΠ΅ ΠΏΠΎΠ΄Π½ΠΎΠ²ΡΠ²Π°Π½Π΅, Π±Π΅Π· Π΄Π΅ΠΉΡΡΠ²ΠΈΡΠ΅Π»Π½ΠΎ Π΄Π° ΠΌΠΎΠ΄ΠΈΡΠΈΡΠΈΡΠ°ΡΠ΅ ΡΠ΅ΡΡΠΈΡΠΈΠΊΠ°ΡΠΈ:
sudo certbot renew --dry-runΠ£ΡΠΏΠ΅ΡΠ½ΠΈΡΡ ΠΈΠ·Ρ ΠΎΠ΄ ΡΠ΅ Π²ΠΊΠ»ΡΡΠ²Π°:
Congratulations, all simulated renewals succeeded:
/etc/letsencrypt/live/yourdomain.com/fullchain.pem (success)ΠΠΎΠ±Π°Π²Π΅ΡΠ΅ hook ΡΠ»Π΅Π΄ ΠΏΠΎΠ΄Π½ΠΎΠ²ΡΠ²Π°Π½Π΅ Π·Π° ΠΏΡΠ΅Π·Π°ΡΠ΅ΠΆΠ΄Π°Π½Π΅ Π½Π° Nginx
Certbot Π½ΡΠΌΠ° Π΄Π° ΠΏΡΠ΅Π·Π°ΡΠ΅Π΄ΠΈ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ½ΠΎ Nginx ΡΠ»Π΅Π΄ ΠΏΠΎΠ΄Π½ΠΎΠ²ΡΠ²Π°Π½Π΅ Π½Π° ΡΠ΅ΡΡΠΈΡΠΈΠΊΠ°ΡΠΈΡΠ΅, ΠΎΡΠ²Π΅Π½ Π°ΠΊΠΎ Π½Π΅ ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠΈΡΠ°ΡΠ΅ deploy hook. Π‘ΡΠ·Π΄Π°ΠΉΡΠ΅ ΡΠ°ΠΊΡΠ² Ρ:
sudo nano /etc/letsencrypt/renewal-hooks/deploy/reload-nginx.shΠΠΎΠ±Π°Π²Π΅ΡΠ΅ ΡΠ»Π΅Π΄Π½ΠΎΡΠΎ ΡΡΠ΄ΡΡΠΆΠ°Π½ΠΈΠ΅:
#!/bin/bash
systemctl reload nginxΠΠ°ΠΏΡΠ°Π²Π΅ΡΠ΅ Π³ΠΎ ΠΈΠ·ΠΏΡΠ»Π½ΠΈΠΌ:
sudo chmod +x /etc/letsencrypt/renewal-hooks/deploy/reload-nginx.shΠ’ΠΎΠ²Π° Π³Π°ΡΠ°Π½ΡΠΈΡΠ°, ΡΠ΅ Nginx Π·Π°ΡΠ΅ΠΆΠ΄Π° Π½ΠΎΠ²ΠΈΡΠ΅ ΡΠ°ΠΉΠ»ΠΎΠ²Π΅ Π½Π° ΡΠ΅ΡΡΠΈΡΠΈΠΊΠ°ΡΠ° Π½Π΅Π·Π°Π±Π°Π²Π½ΠΎ ΡΠ»Π΅Π΄ Π²ΡΡΠΊΠΎ ΡΡΠΏΠ΅ΡΠ½ΠΎ ΠΏΠΎΠ΄Π½ΠΎΠ²ΡΠ²Π°Π½Π΅.
Π‘ΡΡΠΏΠΊΠ° 8: ΠΡΠΎΠ²Π΅ΡΠ΅ΡΠ΅ Π²Π°ΡΠ°ΡΠ° SSL ΠΈΠ½ΡΡΠ°Π»Π°ΡΠΈΡ
Π‘Π»Π΅Π΄ Π·Π°Π²ΡΡΡΠ²Π°Π½Π΅ Π½Π° Π½Π°ΡΡΡΠΎΠΉΠΊΠ°ΡΠ°, ΠΏΡΠΎΠ²Π΅ΡΠ΅ΡΠ΅ Π²Π°ΡΠ°ΡΠ° SSL ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΡ, ΠΊΠ°ΡΠΎ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°ΡΠ΅ ΡΠ»Π΅Π΄Π½ΠΈΡΠ΅ ΠΌΠ΅ΡΠΎΠ΄ΠΈ:
ΠΡΠΎΠ²Π΅ΡΠΊΠ° Π² Π±ΡΠ°ΡΠ·ΡΡΠ°
ΠΠ°Π²ΠΈΠ³ΠΈΡΠ°ΠΉΡΠ΅ Π΄ΠΎ https://yourdomain.com Π² Π±ΡΠ°ΡΠ·ΡΡΠ° ΡΠΈ. Π’ΡΡΠ±Π²Π° Π΄Π° Π²ΠΈΠ΄ΠΈΡΠ΅ ΠΈΠΊΠΎΠ½Π° Π½Π° ΠΊΠ°ΡΠΈΠ½Π°Ρ Π² Π°Π΄ΡΠ΅ΡΠ½Π°ΡΠ° Π»Π΅Π½ΡΠ°, ΡΠΊΠ°Π·Π²Π°ΡΠ° Π·Π°ΡΠΈΡΠ΅Π½Π° Π²ΡΡΠ·ΠΊΠ°.
ΠΠ½Π»Π°ΠΉΠ½ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΠΈ Π·Π° ΡΠ΅ΡΡΠ²Π°Π½Π΅ Π½Π° SSL
ΠΠ·ΠΏΠΎΠ»Π·Π²Π°ΠΉΡΠ΅ ΡΠ΅Π·ΠΈ Π±Π΅Π·ΠΏΠ»Π°ΡΠ½ΠΈ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΠΈ Π·Π° ΠΎΠ΄ΠΈΡ Π½Π° ΠΊΠ°ΡΠ΅ΡΡΠ²ΠΎΡΠΎ Π½Π° Π²Π°ΡΠ°ΡΠ° SSL ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΡ:
- SSL Labs (Qualys):
https://www.ssllabs.com/ssltest/β ΠΡΠ΅Π΄ΠΎΡΡΠ°Π²Ρ Π±ΡΠΊΠ²Π΅Π½Π° ΠΎΡΠ΅Π½ΠΊΠ° (ΡΡΡΠ΅ΠΌΠ΅ΡΠ΅ ΡΠ΅ ΠΊΡΠΌ A ΠΈΠ»ΠΈ A+) - Security Headers:
https://securityheaders.com/β ΠΠ΄ΠΈΡΠΈΡΠ° Π²Π°ΡΠΈΡΠ΅ HTTP Π·Π°Π³Π»Π°Π²ΠΊΠΈ Π·Π° ΡΠΈΠ³ΡΡΠ½ΠΎΡΡ - HSTS Preload:
https://hstspreload.org/β ΠΡΠΎΠ²Π΅ΡΡΠ²Π° Π΄ΠΎΠΏΡΡΡΠΈΠΌΠΎΡΡΡΠ° Π·Π° HSTS ΠΏΡΠ΅Π΄Π²Π°ΡΠΈΡΠ΅Π»Π½ΠΎ Π·Π°ΡΠ΅ΠΆΠ΄Π°Π½Π΅
ΠΠ΅ΡΠΈΡΠΈΠΊΠ°ΡΠΈΡ ΠΎΡ ΠΊΠΎΠΌΠ°Π½Π΄Π½ΠΈΡ ΡΠ΅Π΄
# Check certificate details
openssl s_client -connect yourdomain.com:443 -servername yourdomain.com
# Check certificate expiry date
echo | openssl s_client -connect yourdomain.com:443 2>/dev/null | openssl x509 -noout -datesΠΡΡΡΡΠ°Π½ΡΠ²Π°Π½Π΅ Π½Π° ΡΠ΅ΡΡΠΎ ΡΡΠ΅ΡΠ°Π½ΠΈ SSL ΠΏΡΠΎΠ±Π»Π΅ΠΌΠΈ Π² Nginx
| ΠΡΠΎΠ±Π»Π΅ΠΌ | ΠΠ΅ΡΠΎΡΡΠ½Π° ΠΏΡΠΈΡΠΈΠ½Π° | Π Π΅ΡΠ΅Π½ΠΈΠ΅ |
|---|---|---|
ERR_SSL_PROTOCOL_ERROR | Nginx Π½Π΅ ΡΠ»ΡΡΠ° Π½Π° ΠΏΠΎΡΡ 443 | ΠΡΠΎΠ²Π΅ΡΠ΅ΡΠ΅ Π΄ΠΈΡΠ΅ΠΊΡΠΈΠ²Π°ΡΠ° listen 443 ssl; ΠΈ ΠΏΡΠ°Π²ΠΈΠ»Π°ΡΠ° Π½Π° Π·Π°ΡΠΈΡΠ½Π°ΡΠ° ΡΡΠ΅Π½Π° |
NET::ERR_CERT_AUTHORITY_INVALID | ΠΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅ Π½Π° cert.pem Π²ΠΌΠ΅ΡΡΠΎ fullchain.pem | ΠΠΊΡΡΠ°Π»ΠΈΠ·ΠΈΡΠ°ΠΉΡΠ΅ ssl_certificate Π΄Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π° fullchain.pem |
| Π‘Π΅ΡΡΠΈΡΠΈΠΊΠ°ΡΡΡ Π½Π΅ ΡΠ΅ ΠΏΠΎΠ΄Π½ΠΎΠ²ΡΠ²Π° | Π’Π°ΠΉΠΌΠ΅ΡΡΡ Π½Π° Certbot Π΅ Π΄Π΅Π°ΠΊΡΠΈΠ²ΠΈΡΠ°Π½ ΠΈΠ»ΠΈ ΠΏΠΎΡΡ 80 Π΅ Π±Π»ΠΎΠΊΠΈΡΠ°Π½ | ΠΠ·ΠΏΡΠ»Π½Π΅ΡΠ΅ sudo certbot renew --dry-run ΠΈ ΠΏΡΠΎΠ²Π΅ΡΠ΅ΡΠ΅ Π»ΠΎΠ³ΠΎΠ²Π΅ΡΠ΅ |
| ΠΡΠ΅Π΄ΡΠΏΡΠ΅ΠΆΠ΄Π΅Π½ΠΈΡ Π·Π° ΡΠΌΠ΅ΡΠ΅Π½ΠΎ ΡΡΠ΄ΡΡΠΆΠ°Π½ΠΈΠ΅ | HTTP ΡΠ΅ΡΡΡΡΠΈ, Π·Π°ΡΠ΅Π΄Π΅Π½ΠΈ Π½Π° HTTPS ΡΡΡΠ°Π½ΠΈΡΠ° | ΠΠΊΡΡΠ°Π»ΠΈΠ·ΠΈΡΠ°ΠΉΡΠ΅ Π²ΡΠΈΡΠΊΠΈ Π²ΡΡΡΠ΅ΡΠ½ΠΈ Π²ΡΡΠ·ΠΊΠΈ ΠΈ URL Π°Π΄ΡΠ΅ΡΠΈ Π½Π° Π°ΠΊΡΠΈΠ²ΠΈ ΠΊΡΠΌ HTTPS |
SSL_ERROR_RX_RECORD_TOO_LONG | HTTP ΡΡΠ°ΡΠΈΠΊ, Π΄ΠΎΡΡΠΈΠ³Π°Ρ HTTPS ΠΏΠΎΡΡΠ° | Π£Π²Π΅ΡΠ΅ΡΠ΅ ΡΠ΅, ΡΠ΅ ΠΏΡΠ΅Π½Π°ΡΠΎΡΠ²Π°Π½Π΅ΡΠΎ ΠΎΡ ΠΏΠΎΡΡ 80 ΠΊΡΠΌ 443 Π΅ ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠΈΡΠ°Π½ΠΎ |
ΠΠ·Π±ΠΎΡ Π½Π° ΠΏΡΠ°Π²ΠΈΠ»Π½Π°ΡΠ° Ρ ΠΎΡΡΠΈΠ½Π³ ΡΡΠ΅Π΄Π° Π·Π° SSL
ΠΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»Π½ΠΎΡΡΡΠ° ΠΈ Π½Π°Π΄Π΅ΠΆΠ΄Π½ΠΎΡΡΡΠ° Π½Π° Π²Π°ΡΠ°ΡΠ° SSL ΠΈΠΌΠΏΠ»Π΅ΠΌΠ΅Π½ΡΠ°ΡΠΈΡ Π·Π°Π²ΠΈΡΡΡ Π² Π³ΠΎΠ»ΡΠΌΠ° ΡΡΠ΅ΠΏΠ΅Π½ ΠΎΡ Π²Π°ΡΠ°ΡΠ° Ρ ΠΎΡΡΠΈΠ½Π³ ΡΡΠ΅Π΄Π°. ΠΡΠΎ ΠΊΡΠ°ΡΡΠΊ ΠΏΡΠ΅Π³Π»Π΅Π΄:
- VPS Π₯ΠΎΡΡΠΈΠ½Π³: ΠΡΠ»Π½ΠΈΡΡ root Π΄ΠΎΡΡΡΠΏ Π²ΠΈ Π΄Π°Π²Π° ΠΏΡΠ»Π΅Π½ ΠΊΠΎΠ½ΡΡΠΎΠ» Π²ΡΡΡ Ρ ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΡΡΠ° Π½Π° Nginx, SSL ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠΈΡΠ΅ ΠΈ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ΡΠΎ Π½Π° ΡΠ΅ΡΡΠΈΡΠΈΠΊΠ°ΡΠΈ β ΠΈΠ΄Π΅Π°Π»Π΅Π½ Π·Π° ΡΠΎΠ²Π° ΡΡΠΊΠΎΠ²ΠΎΠ΄ΡΡΠ²ΠΎ
- Dedicated Π‘ΡΡΠ²ΡΡΠΈ: ΠΠ°ΠΊΡΠΈΠΌΠ°Π»Π½Π° ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»Π½ΠΎΡΡ ΠΈ ΠΈΠ·ΠΎΠ»Π°ΡΠΈΡ Π·Π° ΡΠ°ΠΉΡΠΎΠ²Π΅ Ρ Π³ΠΎΠ»ΡΠΌ ΡΡΠ°ΡΠΈΠΊ, ΠΈΠ·ΠΈΡΠΊΠ²Π°ΡΠΈ SSL ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΠΈ ΠΎΡ ΠΊΠΎΡΠΏΠΎΡΠ°ΡΠΈΠ²Π΅Π½ ΠΊΠ»Π°Ρ
- Π‘ΠΏΠΎΠ΄Π΅Π»Π΅Π½ Π£Π΅Π± Π₯ΠΎΡΡΠΈΠ½Π³: SSL ΠΎΠ±ΠΈΠΊΠ½ΠΎΠ²Π΅Π½ΠΎ ΡΠ΅ ΡΠΏΡΠ°Π²Π»ΡΠ²Π° ΡΡΠ΅Π· ΠΊΠΎΠ½ΡΡΠΎΠ»Π΅Π½ ΠΏΠ°Π½Π΅Π»; ΡΡΡΠ½Π°ΡΠ° ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΡ Π½Π° Certbot ΠΌΠΎΠΆΠ΅ Π΄Π° Π½Π΅ Π΅ Π½Π°Π»ΠΈΡΠ½Π°
- VPS Ρ cPanel: ΠΠΏΡΠΎΡΡΡΠ²Π° ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ΡΠΎ Π½Π° SSL ΡΡΠ΅Π· Π³ΡΠ°ΡΠΈΡΠ΅Π½ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡ, ΠΊΠ°ΡΠΎ ΡΡΡΠ΅Π²ΡΠ΅ΠΌΠ΅Π½Π½ΠΎ Π·Π°ΠΏΠ°Π·Π²Π° ΠΊΠΎΠ½ΡΡΠΎΠ» Π½Π° Π½ΠΈΠ²ΠΎ VPS
ΠΠ° ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΡΠΈ ΠΈ ΡΠΈΡΡΠ΅ΠΌΠ½ΠΈ Π°Π΄ΠΌΠΈΠ½ΠΈΡΡΡΠ°ΡΠΎΡΠΈ, ΠΊΠΎΠΈΡΠΎ ΡΠ΅ Π½ΡΠΆΠ΄Π°ΡΡ ΠΎΡ ΠΏΡΠ»Π΅Π½ ΠΊΠΎΠ½ΡΡΠΎΠ» Π²ΡΡΡ Ρ ΡΠ²ΠΎΡ SSL ΡΡΠ΅ΠΊ, VPS ΠΈΠ»ΠΈ dedicated ΡΡΡΠ²ΡΡ Π΅ ΠΏΡΠ΅ΠΏΠΎΡΡΡΠΈΡΠ΅Π»Π½ΠΈΡΡ ΠΈΠ·Π±ΠΎΡ.
ΠΠ°ΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅
ΠΠ°ΡΡΡΠΎΠΉΠ²Π°Π½Π΅ΡΠΎ Π½Π° SSL Π² Nginx Π΅ ΠΌΠ½ΠΎΠ³ΠΎΡΡΡΠΏΠΊΠΎΠ² ΠΏΡΠΎΡΠ΅Ρ, Π½ΠΎ Π²ΡΡΠΊΠ° ΡΡΡΠΏΠΊΠ° ΡΠ»ΡΠΆΠΈ Π½Π° ΠΊΡΠΈΡΠΈΡΠ½Π° ΡΠ΅Π» β ΠΎΡ ΠΊΡΠΈΠΏΡΠΈΡΠ°Π½Π΅ΡΠΎ Π½Π° ΡΡΠ°ΡΠΈΠΊΠ° ΠΈ Π²Π΅ΡΠΈΡΠΈΠΊΠ°ΡΠΈΡΡΠ° Π½Π° ΡΠΎΠ±ΡΡΠ²Π΅Π½ΠΎΡΡΡΠ° Π½Π° Π΄ΠΎΠΌΠ΅ΠΉΠ½Π° Π΄ΠΎ ΡΠΊΡΠ΅ΠΏΠ²Π°Π½Π΅ΡΠΎ Π½Π° ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΡΡΠ° Π½Π° ΡΠΈΡΡΠΈΡΠ΅ ΠΈ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΠ·ΠΈΡΠ°Π½Π΅ΡΠΎ Π½Π° ΠΏΠΎΠ΄Π½ΠΎΠ²ΡΠ²Π°Π½ΠΈΡΡΠ°. Π‘Π»Π΅Π΄Π²Π°ΠΉΠΊΠΈ ΡΠΎΠ²Π° ΡΡΠΊΠΎΠ²ΠΎΠ΄ΡΡΠ²ΠΎ, Π²ΠΈΠ΅ ΡΡΠ΅ ΠΈΠΌΠΏΠ»Π΅ΠΌΠ΅Π½ΡΠΈΡΠ°Π»ΠΈ:
β ΠΠ΅Π·ΠΏΠ»Π°ΡΠ΅Π½, Π΄ΠΎΠ²Π΅ΡΠ΅Π½ SSL ΡΠ΅ΡΡΠΈΡΠΈΠΊΠ°Ρ ΡΡΠ΅Π· Letβs Encrypt ΠΈ Certbot
β Π£ΠΊΡΠ΅ΠΏΠ΅Π½Π° Nginx SSL ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΡ Ρ ΠΌΠΎΠ΄Π΅ΡΠ½ΠΈ TLS ΠΏΡΠΎΡΠΎΠΊΠΎΠ»ΠΈ
β ΠΡΠ΅Π½Π°ΡΠΎΡΠ²Π°Π½Π΅ ΠΎΡ HTTP ΠΊΡΠΌ HTTPS Π·Π° ΡΠ΅Π»ΠΈΡ ΡΡΠ°ΡΠΈΠΊ
β OCSP stapling Π·Π° ΠΏΠΎΠ΄ΠΎΠ±ΡΠ΅Π½Π° ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»Π½ΠΎΡΡ ΠΏΡΠΈ ΡΡΠΊΠΎΡΡΠΈΡΠΊΠ°Π½Π΅
β HSTS ΠΈ Π·Π°Π³Π»Π°Π²ΠΊΠΈ Π·Π° ΡΠΈΠ³ΡΡΠ½ΠΎΡΡ Π·Π° ΠΌΠ½ΠΎΠ³ΠΎΠΏΠ»Π°ΡΡΠΎΠ²Π° Π·Π°ΡΠΈΡΠ°
β ΠΠ²ΡΠΎΠΌΠ°ΡΠΈΠ·ΠΈΡΠ°Π½ΠΎ ΠΏΠΎΠ΄Π½ΠΎΠ²ΡΠ²Π°Π½Π΅ Π½Π° ΡΠ΅ΡΡΠΈΡΠΈΠΊΠ°ΡΠΈ Ρ hooks Π·Π° ΠΏΡΠ΅Π·Π°ΡΠ΅ΠΆΠ΄Π°Π½Π΅ Π½Π° Nginx
ΠΡΠ°Π²ΠΈΠ»Π½ΠΎ ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠΈΡΠ°Π½ΠΈΡΡ SSL ΡΠ΅ΡΡΠΈΡΠΈΠΊΠ°Ρ Π½Π΅ ΡΠ°ΠΌΠΎ Π·Π°ΡΠΈΡΠ°Π²Π° Π²Π°ΡΠΈΡΠ΅ ΠΏΠΎΡΡΠ΅Π±ΠΈΡΠ΅Π»ΠΈ β ΡΠΎΠΉ ΠΈΠ·Π³ΡΠ°ΠΆΠ΄Π° Π΄ΠΎΠ²Π΅ΡΠΈΠ΅, ΠΏΠΎΠ΄ΠΎΠ±ΡΡΠ²Π° Π²Π°ΡΠΈΡΠ΅ SEO ΠΊΠ»Π°ΡΠΈΡΠ°Π½ΠΈΡ ΠΈ Π΅ ΠΎΡΠ½ΠΎΠ²Π½ΠΎ ΠΈΠ·ΠΈΡΠΊΠ²Π°Π½Π΅ Π·Π° Π²ΡΡΠΊΠΎ ΠΏΡΠΎΡΠ΅ΡΠΈΠΎΠ½Π°Π»Π½ΠΎ ΡΠ΅Π± ΠΏΡΠΈΡΡΡΡΠ²ΠΈΠ΅. ΠΠΊΠΎ ΡΡΡΡΠΈΡΠ΅ Π½Π°Π΄Π΅ΠΆΠ΄Π½Π° ΠΈΠ½ΡΡΠ°ΡΡΡΡΠΊΡΡΡΠ° Π·Π° Ρ ΠΎΡΡΠ²Π°Π½Π΅ Π½Π° Π²Π°ΡΠΈΡ SSL-Π·Π°ΡΠΈΡΠ΅Π½ Nginx ΡΡΡΠ²ΡΡ, ΡΠ°Π·Π³Π»Π΅Π΄Π°ΠΉΡΠ΅ ΠΏΠ»Π°Π½ΠΎΠ²Π΅ΡΠ΅ Π·Π° VPS Π₯ΠΎΡΡΠΈΠ½Π³ Π½Π° AlexHost, ΡΡΠ·Π΄Π°Π΄Π΅Π½ΠΈ ΡΠΏΠ΅ΡΠΈΠ°Π»Π½ΠΎ Π·Π° ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΡΠΈ ΠΈ Π±ΠΈΠ·Π½Π΅ΡΠΈ, ΠΊΠΎΠΈΡΠΎ ΠΏΡΠΈΠ΅ΠΌΠ°Ρ ΡΠΈΠ³ΡΡΠ½ΠΎΡΡΡΠ° ΡΠ΅ΡΠΈΠΎΠ·Π½ΠΎ.
ΠΎΡ Π²ΡΠΈΡΠΊΠΈ Ρ
ΠΎΡΡΠΈΠ½Π³ ΡΡΠ»ΡΠ³ΠΈ