Π‘Π»ΡΡΠ°ΠΉ 3. Π‘Π΅ΡΡΠΈΡΠΈΠΊΠ°Ρ, ΠΏΠΎΠ΄ΠΏΠΈΡΠ°Π½Π½ΡΠΉ ΡΠ΅Π½ΡΡΠΎΠΌ ΡΠ΅ΡΡΠΈΡΠΈΠΊΠ°ΡΠΈΠΈ ΡΡΠΎΠ²Π½Ρ ΠΏΡΠ΅Π΄ΠΏΡΠΈΡΡΠΈΡ
Π Π΄Π°Π½Π½ΠΎΠΌ ΡΠ°Π·Π΄Π΅Π»Π΅ ΠΎΠΏΠΈΡΠ°Π½Π° ΠΈΠ½ΡΡΡΡΠΊΡΠΈΡ ΠΏΠΎ Π½Π°ΡΡΡΠΎΠΉΠΊΠ΅ ΠΏΠ»Π°ΡΡΠΎΡΠΌΡ Π΄Π»Ρ ΡΠ°Π±ΠΎΡΡ ΠΏΠΎ HTTPS Π² ΡΠ»ΡΡΠ°Π΅, Π΅ΡΠ»ΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ ΡΠ΅ΡΡΠΈΡΠΈΠΊΠ°Ρ, ΠΏΠΎΠ΄ΠΏΠΈΡΠ°Π½Π½ΡΠΉ Π½Π΅Π²Π°Π»ΠΈΠ΄Π½ΡΠΌ Π΄Π»Ρ Ubuntu ΡΠ΅ΡΠ²Π΅ΡΠ° ΡΠ΅Π½ΡΡΠΎΠΌ ΡΠ΅ΡΡΠΈΡΠΈΠΊΠ°ΡΠΈΠΈ. Π ΡΡΠΎΠΌ ΡΠ»ΡΡΠ°Π΅ ΠΏΠΎΠΌΠΈΠΌΠΎ ΡΠ°ΠΌΠΎΠ³ΠΎ ΡΠ΅ΡΡΠΈΡΠΈΠΊΠ°ΡΠ° ΡΡΠ΅Π±ΡΠ΅ΡΡΡ ΡΠ°ΠΊΠΆΠ΅Β ΡΠ΅ΡΡΠΈΡΠΈΠΊΠ°Ρ Π΄ΠΎΠ²Π΅ΡΠ΅Π½Π½ΠΎΠ³ΠΎ ΠΊΠΎΡΠ½Π΅Π²ΠΎΠ³ΠΎ ΡΠ΅Π½ΡΡΠ° ΡΠ΅ΡΡΠΈΡΠΈΠΊΠ°ΡΠΈΠΈ.
Π ΠΏΠ°Π½Π΅Π»ΠΈ Π°Π΄ΠΌΠΈΠ½ΠΈΡΡΡΠ°ΡΠΎΡΠ° ΠΏΠ΅ΡΠ΅ΠΉΡΠΈ Π² ΡΠ°Π·Π΄Π΅Π» Β«ΠΠ°Π·Π° Π΄Π°Π½Π½ΡΡ ViQubeΒ».
- Π ΠΏΡΠ½ΠΊΡΠ΅ ΠΌΠ΅Π½Ρ Β«Π Π΅Π·Π΅ΡΠ²Π½ΠΎΠ΅ ΠΊΠΎΠΏΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅Β» ΡΠ°Π·Π΄Π΅Π»Π° Β«ΠΠ°Π·Π° Π΄Π°Π½Π½ΡΡ ViQubeΒ» Π½Π°ΠΆΠ°ΡΡ Π½Π° ΠΊΠ½ΠΎΠΏΠΊΡ Β«Π‘ΠΎΡ ΡΠ°Π½ΠΈΡΡ ΠΊΠΎΠΏΠΈΡ ΡΠ΅ΠΉΡΠ°ΡΒ».
ΠΠ° ΠΎΡΠ½ΠΎΠ²Π½ΠΎΠΌ ΡΠ΅ΡΠ²Π΅ΡΠ΅ ΠΏΠ»Π°ΡΡΠΎΡΠΌΡ ΠΎΡΡΠ°Π½ΠΎΠ²ΠΈΡΡ ΠΊΠΎΠ½ΡΠ΅ΠΉΠ½Π΅ΡΡ, Π²ΡΠΏΠΎΠ»Π½ΠΈΠ² ΡΠ»Π΅Π΄ΡΡΡΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρ:
sudo ./run.sh --stop
- -stop
Π·Π΄Π΅ΡΡ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡ -stop ΠΎΠ·Π½Π°ΡΠ°Π΅Ρ, ΡΡΠΎ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ ΠΊΠΎΡΡΠ΅ΠΊΡΠ½ΠΎ ΠΎΡΡΠ°Π½ΠΎΠ²ΠΈΡΡ Π²ΡΠ΅ ΠΊΠΎΠ½ΡΠ΅ΠΉΠ½Π΅ΡΡ ΠΏΠ»Π°ΡΡΠΎΡΠΌΡ.
- Π£Π΄Π°Π»ΠΈΡΡ ΡΡΡΠ΅ΡΡΠ²ΡΡΡΡΡ ΠΏΠ°ΠΏΠΊΡΒ /docker-volume/proxy/proxy.crt.
- Π‘ΠΎΠ·Π΄Π°ΡΡ ΡΠ΅ΠΊΡΡΠΎΠ²ΡΠΉ ΡΠ°ΠΉΠ», ΠΊΠΎΡΠΎΡΡΠΉ Π±ΡΠ΄Π΅Ρ ΡΠΎΠ΄Π΅ΡΠΆΠ°ΡΡ ΠΏΠ°ΡΠΎΠ»Ρ Π΄Π»Ρ SSL ΡΠ΅ΡΡΠΈΡΠΈΠΊΠ°ΡΠ° (Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, password.pass).
- ΠΠΎΠΌΠ΅ΡΡΠΈΡΡΒ ΡΠ΅ΡΡΠΈΡΠΈΠΊΠ°Ρ ΡΠ΅Π½ΡΡΠ° ΡΠ΅ΡΡΠΈΡΠΈΠΊΠ°ΡΠΈΠΈ ΡΡΠΎΠ²Π½Ρ ΠΏΡΠ΅Π΄ΠΏΡΠΈΡΡΠΈΡΒ Π² ΡΠΎΡΠΌΠ°ΡΠ΅ Π΄Π»Ρ ΠΠ‘ Linux Ρ ΠΈΠΌΠ΅Π½Π΅ΠΌ proxy.crt (ΠΎΠ±ΡΠ·Π°ΡΠ΅Π»ΡΠ½ΠΎ), Π² ΠΏΠ°ΠΏΠΊΡ /docker-volume/proxy/ Π½Π° ΡΠ΅ΡΠ²Π΅ΡΠ΅ Ρ ΡΡΡΠ°Π½ΠΎΠ²Π»Π΅Π½Π½ΡΠΌ nginx.
- ΠΠΎΠΌΠ΅ΡΡΠΈΡΡ ΡΠ°ΠΉΠ» SSL ΡΠ΅ΡΡΠΈΡΠΈΠΊΠ°ΡΠ° Π΄Π»Ρ ΡΠ°ΠΉΡΠ°, ΠΊΠΎΡΠΎΡΡΠΉ ΠΏΠΎΠ΄ΠΏΠΈΡΠ°Π½ ΡΠ΅Π½ΡΡΠΎΠΌ ΡΠ΅ΡΡΠΈΡΠΈΠΊΠ°ΡΠΈΠΈ ΡΡΠΎΠ²Π½Ρ ΠΏΡΠ΅Π΄ΠΏΡΠΈΡΡΠΈΡ, Ρ ΠΏΡΠ±Π»ΠΈΡΠ½ΡΠΌ ΠΊΠ»ΡΡΠΎΠΌ Π² ΡΠΎΡΠΌΠ°ΡΠ΅ Π΄Π»Ρ ΠΠ‘ Linux, ΡΠ°ΠΉΠ» Π·Π°ΠΊΡΡΡΠΎΠ³ΠΎ ΠΊΠ»ΡΡΠ° Π΄Π»Ρ ΡΠ΅ΡΡΠΈΡΠΈΠΊΠ°ΡΠ° (*.key), Π° ΡΠ°ΠΊΠΆΠ΅ ΡΠ°ΠΉΠ» Ρ ΠΏΠ°ΡΠΎΠ»Π΅ΠΌ Π΄Π»Ρ ΡΠ΅ΡΡΠΈΡΠΈΠΊΠ°ΡΠ° (*.pass) Π² ΠΏΠ°ΠΏΠΊΡ /docker-volume/proxy/ ΠΈΠ»ΠΈ Π²Π»ΠΎΠΆΠ΅Π½Π½ΡΡ Π² Π½Π΅Ρ Π½Π° ΡΠ΅ΡΠ²Π΅ΡΠ΅ Ρ ΡΡΡΠ°Π½ΠΎΠ²Π»Π΅Π½Π½ΡΠΌ nginx.
- ΠΡΡΠ΅Π΄Π°ΠΊΡΠΈΡΠΎΠ²Π°ΡΡ Ρ ΠΏΡΠ°Π²Π°ΠΌΠΈ ΡΡΠΏΠ΅ΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ ΡΠ°ΠΉΠ» nginx.conf, ΡΠ°ΡΠΏΠΎΠ»ΠΎΠΆΠ΅Π½Π½ΡΠΉ Π² ΠΏΠ°ΠΏΠΊΠ΅ /docker-volume/proxy/ ΡΠ»Π΅Π΄ΡΡΡΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ:
- Π Π΄ΠΈΡΠ΅ΠΊΡΠΈΠ²Π΅ server{} ΡΠ°ΡΠΊΠΎΠΌΠΌΠ΅Π½ΡΠΈΡΠΎΠ²Π°ΡΡ ΡΠ΅ΠΊΡΠΈΡ "HTTPS section" (Π²ΡΠ΅Π³ΠΎ 4 ΡΡΡΠΎΠΊΠΈ Π² ΡΠ°ΠΉΠ»Π΅).
- Π ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠ΅Β ssl_certificateΒ ΡΠΊΠ°Π·Π°ΡΡ ΠΏΡΡΡ Π΄ΠΎ ΡΠ΅ΡΡΠΈΡΠΈΠΊΠ°ΡΠ° Ρ ΠΏΡΠ±Π»ΠΈΡΠ½ΡΠΌ ΠΊΠ»ΡΡΠΎΠΌ, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ - /mnt/volume/publickey.key (ΡΠ»Π΅Π΄ΡΠ΅Ρ ΠΈΠΌΠ΅ΡΡ Π² Π²ΠΈΠ΄Ρ, ΡΡΠΎ Π΄Π°Π½Π½ΡΠΉ ΠΏΡΡΡ β ΡΡΠΎ ΠΏΡΡΡ Β«Π²Π½ΡΡΡΠΈΒ» Π²ΠΈΡΡΡΠ°Π»ΡΠ½ΠΎΠΉ ΠΌΠ°ΡΠΈΠ½Ρ, Π΄Π»Ρ Π½Π΅Ρ ΠΏΠ°ΠΏΠΊΠ° /mnt/volume/ ΡΠΎΠ²ΠΏΠ°Π΄Π°Π΅Ρ Ρ ΡΠ΅Π°Π»ΡΠ½ΠΎΠΉ ΠΏΠ°ΠΏΠΊΠΎΠΉ /docker-volume/proxy/ Π΄Π»Ρ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΎΠ½Π½ΠΎΠΉ ΡΠΈΡΡΠ΅ΠΌΡ ΡΠ΅ΡΠ²Π΅ΡΠ°).
- Π ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠ΅Β ssl_certificate_key ΡΠΊΠ°Π·Π°ΡΡ ΠΏΡΡΡ Π΄ΠΎ ΡΠ°ΠΉΠ»Π° Ρ Π·Π°ΠΊΡΡΡΡΠΌ ΠΊΠ»ΡΡΠΎΠΌ, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ - /mnt/volume/privatekey.key (ΡΠ»Π΅Π΄ΡΠ΅Ρ ΠΈΠΌΠ΅ΡΡ Π² Π²ΠΈΠ΄Ρ, ΡΡΠΎ Π΄Π°Π½Π½ΡΠΉ ΠΏΡΡΡ β ΡΡΠΎ ΠΏΡΡΡ Β«Π²Π½ΡΡΡΠΈΒ» Π²ΠΈΡΡΡΠ°Π»ΡΠ½ΠΎΠΉ ΠΌΠ°ΡΠΈΠ½Ρ, Π΄Π»Ρ Π½Π΅Ρ ΠΏΠ°ΠΏΠΊΠ° /mnt/volume/ ΡΠΎΠ²ΠΏΠ°Π΄Π°Π΅Ρ Ρ ΡΠ΅Π°Π»ΡΠ½ΠΎΠΉ ΠΏΠ°ΠΏΠΊΠΎΠΉ /docker-volume/proxy/Β Π΄Π»Ρ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΎΠ½Π½ΠΎΠΉ ΡΠΈΡΡΠ΅ΠΌΡ ΡΠ΅ΡΠ²Π΅ΡΠ°).
- Π ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠ΅Β ssl_password_file ΡΠΊΠ°Π·Π°ΡΡ ΠΏΡΡΡ Π΄ΠΎ ΡΠ°ΠΉΠ»Π° Ρ ΠΏΠ°ΡΠΎΠ»Π΅ΠΌ Π΄Π»Ρ ΡΠ΅ΡΡΠΈΡΠΈΠΊΠ°ΡΠ°, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ - /mnt/volume/password.pass (ΡΠ»Π΅Π΄ΡΠ΅Ρ ΠΈΠΌΠ΅ΡΡ Π² Π²ΠΈΠ΄Ρ, ΡΡΠΎ Π΄Π°Π½Π½ΡΠΉ ΠΏΡΡΡ β ΡΡΠΎ ΠΏΡΡΡ Β«Π²Π½ΡΡΡΠΈΒ» Π²ΠΈΡΡΡΠ°Π»ΡΠ½ΠΎΠΉ ΠΌΠ°ΡΠΈΠ½Ρ, Π΄Π»Ρ Π½Π΅Ρ ΠΏΠ°ΠΏΠΊΠ° /mnt/volume/ ΡΠΎΠ²ΠΏΠ°Π΄Π°Π΅Ρ Ρ ΡΠ΅Π°Π»ΡΠ½ΠΎΠΉ ΠΏΠ°ΠΏΠΊΠΎΠΉ /docker-volume/proxy/ Π΄Π»Ρ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΎΠ½Π½ΠΎΠΉ ΡΠΈΡΡΠ΅ΠΌΡ ΡΠ΅ΡΠ²Π΅ΡΠ°).
- Π Π΄ΠΈΡΠ΅ΠΊΡΠΈΠ²Π΅Β http{}Β ΡΠ°ΡΠΊΠΎΠΌΠΌΠ΅Π½ΡΠΈΡΠΎΠ²Π°ΡΡ ΡΠ΅ΠΊΡΠΈΡ "HTTPS server optimization section" (Π²ΡΠ΅Π³ΠΎ 13 ΡΡΡΠΎΠΊ Π² ΡΠ°ΠΉΠ»Π΅).
- ΠΡΠ»ΠΈ ΠΏΠ»Π°Π½ΠΈΡΡΠ΅ΡΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ ΡΡΡΠ»ΠΎΠΊ Π½Π° Π΄Π°ΡΠ±ΠΎΡΠ΄Ρ Π½Π° Π΄ΠΎΠΌΠ΅Π½Π΅, ΠΎΡΠ»ΠΈΡΠ½ΠΎΠΌ ΠΎΡ Π΄ΠΎΠΌΠ΅Π½Π° ΠΏΡΠΈ Π·Π°ΠΏΡΡΠΊΠ΅, ΡΠΎ ΡΡΡΠΎΠΊΡΒ
add_header X-Frame-Options "SAMEORIGIN";
ΡΡΠ΅Π±ΡΠ΅ΡΡΡ ΠΎΡΡΠ°Π²ΠΈΡΡ Π·Π°ΠΊΠΎΠΌΠΌΠ΅Π½ΡΠΈΡΠΎΠ²Π°Π½Π½ΠΎΠΉ.
- ΠΡΠ»ΠΈ ΠΏΠ»Π°Π½ΠΈΡΡΠ΅ΡΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ ΡΡΡΠ»ΠΎΠΊ Π½Π° Π΄Π°ΡΠ±ΠΎΡΠ΄Ρ Π½Π° Π΄ΠΎΠΌΠ΅Π½Π΅, ΠΎΡΠ»ΠΈΡΠ½ΠΎΠΌ ΠΎΡ Π΄ΠΎΠΌΠ΅Π½Π° ΠΏΡΠΈ Π·Π°ΠΏΡΡΠΊΠ΅, ΡΠΎ ΡΡΡΠΎΠΊΡΒ
- Π Π΄ΠΈΡΠ΅ΠΊΡΠΈΠ²Π΅ http{} ΡΠ°ΡΠΊΠΎΠΌΠΌΠ΅Π½ΡΠΈΡΠΎΠ²Π°ΡΡ ΡΠ΅ΠΊΡΠΈΡ "Redirect HTTP to HTTPS section" (Π²ΡΠ΅Π³ΠΎ 4 ΡΡΡΠΎΠΊΠΈ Π² ΡΠ°ΠΉΠ»Π΅), ΡΡΠΎΠ±Ρ Π²ΠΊΠ»ΡΡΠΈΡΡ ΠΏΠ΅ΡΠ΅Π½Π°ΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ Ρ HTTP Π½Π° HTTPS.
- Π‘ΠΎΡ ΡΠ°Π½ΠΈΡΡ ΡΠ°ΠΉΠ» ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΠΈ.
ΠΠ΅ΡΠ΅Π·Π°ΠΏΡΡΡΠΈΡΡ ΠΏΠ»Π°ΡΡΠΎΡΠΌΡ Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΡΠΊΡΠΈΠΏΡΠ° ./run.sh ΠΏΠΎ ΠΈΠ½ΡΡΡΡΠΊΡΠΈΠΈΒ Π·Π°ΠΏΡΡΠΊΠ° ΠΏΠ»Π°ΡΡΠΎΡΠΌΡ, Π΄ΠΎΠ±Π°Π²ΠΈΠ² ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡ --https on.
- --https on
Π·Π΄Π΅ΡΡ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡ --https on ΠΎΠ·Π½Π°ΡΠ°Π΅Ρ, ΡΡΠΎ ΠΏΠ»Π°ΡΡΠΎΡΠΌΠ° ΡΠ°Π±ΠΎΡΠ°Π΅Ρ ΠΏΠΎ HTTPS.