Π‘Π»ΡƒΡ‡Π°ΠΉ 1. Бамоподписанный сСртификат

Π’ Π΄Π°Π½Π½ΠΎΠΌ Ρ€Π°Π·Π΄Π΅Π»Π΅ описана инструкция ΠΏΠΎ настройкС ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹ для Ρ€Π°Π±ΠΎΡ‚Ρ‹ ΠΏΠΎ HTTPS Π² случаС, Ссли ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ самоподписанный сСртификат.

  1. Π’ ΠΏΠ°Π½Π΅Π»ΠΈ администратора ΠΏΠ΅Ρ€Π΅ΠΉΡ‚ΠΈ Π² Ρ€Π°Π·Π΄Π΅Π» Β«Π‘Π°Π·Π° Π΄Π°Π½Π½Ρ‹Ρ… ViQubeΒ».

  2. Π’ ΠΏΡƒΠ½ΠΊΡ‚Π΅ мСню Β«Π Π΅Π·Π΅Ρ€Π²Π½ΠΎΠ΅ ΠΊΠΎΠΏΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅Β» Ρ€Π°Π·Π΄Π΅Π»Π° Β«Π‘Π°Π·Π° Π΄Π°Π½Π½Ρ‹Ρ… ViQubeΒ» Π½Π°ΠΆΠ°Ρ‚ΡŒ Π½Π° ΠΊΠ½ΠΎΠΏΠΊΡƒ Β«Π‘ΠΎΡ…Ρ€Π°Π½ΠΈΡ‚ΡŒ копию сСйчас».
  3. На основном сСрвСрС ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹ ΠΎΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€Ρ‹, Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΠ² ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΡƒΡŽ ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ:

    sudo ./run.sh --stop
    • -stop

    здСсь ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ -stop ΠΎΠ·Π½Π°Ρ‡Π°Π΅Ρ‚, Ρ‡Ρ‚ΠΎ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΠΊΠΎΡ€Ρ€Π΅ΠΊΡ‚Π½ΠΎ ΠΎΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ всС ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€Ρ‹ ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹.

  4. Π£Π΄Π°Π»ΠΈΡ‚ΡŒ ΠΏΠ°ΠΏΠΊΡƒΒ /docker-volume/proxy/proxy.crt.
  5. Π‘ΠΎΠ·Π΄Π°Ρ‚ΡŒ тСкстовый Ρ„Π°ΠΉΠ», ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π±ΡƒΠ΄Π΅Ρ‚ ΡΠΎΠ΄Π΅Ρ€ΠΆΠ°Ρ‚ΡŒ ΠΏΠ°Ρ€ΠΎΠ»ΡŒ для SSL сСртификата (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, password.pass).
  6. ΠŸΠΎΠΌΠ΅ΡΡ‚ΠΈΡ‚ΡŒ Ρ„Π°ΠΉΠ» SSL сСртификата  с ΠΏΡƒΠ±Π»ΠΈΡ‡Π½Ρ‹ΠΌ ΠΊΠ»ΡŽΡ‡ΠΎΠΌΒ Π² Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Π΅ для ОБ Linux с ΠΈΠΌΠ΅Π½Π΅ΠΌ proxy.crt (ΠΎΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ), Π² ΠΏΠ°ΠΏΠΊΡƒ /docker-volume/proxy/ Π½Π° сСрвСрС с установлСнным nginx.
  7. ΠŸΠΎΠΌΠ΅ΡΡ‚ΠΈΡ‚ΡŒ Ρ„Π°ΠΉΠ» Π·Π°ΠΊΡ€Ρ‹Ρ‚ΠΎΠ³ΠΎ ΠΊΠ»ΡŽΡ‡Π° для сСртификата (*.key), Π° Ρ‚Π°ΠΊΠΆΠ΅ Ρ„Π°ΠΉΠ» с ΠΏΠ°Ρ€ΠΎΠ»Π΅ΠΌ для сСртификата (*.pass) Π² ΠΏΠ°ΠΏΠΊΡƒ /docker-volume/proxy/ ΠΈΠ»ΠΈ Π²Π»ΠΎΠΆΠ΅Π½Π½ΡƒΡŽ Π² Π½Π΅Ρ‘ Π½Π° сСрвСрС с установлСнным nginx.

  8. ΠžΡ‚Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ с ΠΏΡ€Π°Π²Π°ΠΌΠΈ ΡΡƒΠΏΠ΅Ρ€ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ Ρ„Π°ΠΉΠ» nginx.conf, располоТСнный Π² ΠΏΠ°ΠΏΠΊΠ΅ /docker-volume/proxy/ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ:
    • Π’ Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΈΠ²Π΅ server{} Π·Π°ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΡƒΡŽ строку:

      listen 80;
    • Π’ Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΈΠ²Π΅ server{} Ρ€Π°ΡΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΡΠ΅ΠΊΡ†ΠΈΡŽ "HTTPS section" (всСго 5 строк Π² Ρ„Π°ΠΉΠ»Π΅).
    • Π’ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π΅Β ssl_certificateΒ ΡƒΠΊΠ°Π·Π°Ρ‚ΡŒ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅Β /mnt/volume/proxy.crt (ΠΎΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ).
    • Π’ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π΅Β 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" (всСго 3 строки Π² Ρ„Π°ΠΉΠ»Π΅).
    • Π’ Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΈΠ²Π΅ http{} Ρ€Π°ΡΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΡΠ΅ΠΊΡ†ΠΈΡŽ "Redirect HTTP to HTTPS section" (всСго 4 строки Π² Ρ„Π°ΠΉΠ»Π΅), Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π²ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒ ΠΏΠ΅Ρ€Π΅Π½Π°ΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ с HTTP Π½Π° HTTPS.
  9. Π‘ΠΎΡ…Ρ€Π°Π½ΠΈΡ‚ΡŒ Ρ„Π°ΠΉΠ» ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΈ.
  10. ΠŸΠ΅Ρ€Π΅Π·Π°ΠΏΡƒΡΡ‚ΠΈΡ‚ΡŒ ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡƒ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ скрипта ./run.sh ΠΏΠΎ инструкции Запуск ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹, Π΄ΠΎΠ±Π°Π²ΠΈΠ² ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ --https on.

    • --https on

    здСсь ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ --https on ΠΎΠ·Π½Π°Ρ‡Π°Π΅Ρ‚, Ρ‡Ρ‚ΠΎ ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ° Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ ΠΏΠΎ HTTPS.