Tags: letsencrypt

Эта запись была первоначально написана @albrechtar в этом вопросе github

Как вам получить сертификаты SSL не используя Cert Bot (в том случае если вам надо использовать альтернативные порты в вашем NextCloudPi экземпляре)

Вам понадобится вручную обновить сертификаты SSL в вашем NextCloudPi экземпляре.

  1. Вам понадобится домен, который позволит вам указывать на другие серверы имен, а также редактировать записи DNS. Я купил свой собственный (большинство бесплатных доменов третьего уровня этого не разрешат). Я вам советую перейти на namecheap.com и купить ваш домен (вы можете купить домен всего за 2.09$ в течение первого года. Затем перейдите на dynu.com. Зарегистрируйтесь, а затем нажмите маленькую шестерню в верхней правой области, которая доставит вас на панеля управления (Скриншот 1). Вам потом надо перейти на namecheap, или на сайт где вы купили домен, и добавить серверы имен для Dynu. У них есть очень простые руководства и инструкции для тех кому трудно это выяснить:
    1a) Нажмите на DDNS сервисы. 1b) Нажмите на “Добавить”. 1c) Если у вас есть домен, введите его справа (Скриншот 2). 1d) Введите свой публичный IP-адрес (я использовал Х чтобы заблокировать мой, вы введите свой полный IP-адрес), и нажмите “Сохранить”. 1e) Справа вы увидите чашку с карандашами, где вы найдете записи DNS. Нажмите на эту картинку (Скриншот 3, Скриншот 4).

  2. Откройте новую вкладку в браузере и перейти на zerossl.com(Скриншот 5). 2a) На левой стороне нажмите “Сертификаты и инструменты” (Скриншот 6). 2b) Нажмите “Пуск” под бесплатные SSL сертификаты, и вы увидите (Скриншот 7). 2c) Введите свою эл.почту, введите свое домен (yourdomain.com), выберите “Проверка DNS”, примите TOS и SA и нажмите “Далее” (Скриншот 8). 2d) Когда вас попросят включить www. префикс, нажмите “да”. 2e) Вы увидите что система уже сгенерировала CSR (Скриншот 9). 2f) Как только вы нажмёте “Далее”, система сгенерирует вам ключ (Скриншот 10). 2g) Вы нажмёте на “Загрузить”, и загрузите сразу CSR и КЛЮЧ (Скриншот 11). 2h) Нажмите “Далее”, и вы увидите (Скриншот 12). 2i) Теперь вам нужно будет вернуться на вашу страницу Dynu (оставьте страницу открытой и продолжаем).

  3. Как только вы вернетесь на страницу Dynu, вы увидите 4 предметы (имя узла, тип, TTL и имя хоста Скриншот 13). Выполните следующие действия: 3a) Измените тип файла на .TXT - Текст. 3b) В имя узла скопируйте ваш TXT запись домен со страницы zerossl. 3c) Скопируйте и вставьте поле значения из zerossl в текстовое поле на вашей странице dynu (Скриншот 13). (TTL оставьте на уровне 90). 3d) Повторите шаг 3c для другой записи (у вас есть ешё две записи, одна для www., и та которая является вашим доменом). 3e) Используя SSH соединитесь в ваш Raspberry Pi, и введите “nslookup -q = TXT XXX “. ХХХ будет одна из записей, которую вы только что вставили в имя узла на шаге 3b. 3f) Это займет всего лишь минуту, а затем, когда вы запустите nslookup, он покажет вам что он эго видит (я не помню точную формулировки, но это было очевидно). 3g) Вернитесь к своему открытому ssl файлу и нажмите “далее”. Как только закончится проверка он выдаст ваш ключ и ваши crt файлы домена.

Когда у вас уже будут эти файлы, у вас будет и свой сертификат SSL, и вы должны поместить сертификат в нужную папку в вашем NextCloudPi экземпляре. Я не на 100% уверен, в какой файл надо перенести сертификат, поэтому я попрошу @nachoparker объяснить это.

Я надеюсь, что это вам поможет. Если у кого-нибудь есть какие-либо вопросы, пожалуйста, напишите здесь, и я постараюсь всем помочь. Вам необходимо вручную обновить сертификаты SSL в вашем экземпляре NextCloudPi.

  1. Вам понадобится доменное имя, с возможность привязки домена к вашему IP-адресу. Большинство бесплатных доменов третьего уровня этого не разрешают. Я вам советую перейти на namecheap.com и купить ваш домен (вы можете купить домен всего за 2.09$ в течение первого года. Затем перейдите на dynu.com. Зарегистрируйтесь, а затем нажмите маленькую шестерню в верхней правой области, которая доставит вас на панеля управления (Скриншот 1). Вам потом надо перейти на namecheap, или на сайт где вы купили домен, и добавить серверы имен для Dynu. У них есть очень простые руководства и инструкции для тех кому трудно это выяснить:
    1a) Нажмите на DDNS сервисы. 1b) Нажмите на “Добавить”. 1c) Если у вас есть домен, введите его справа (Скриншот 2). 1d) Введите свой публичный IP-адрес (я использовал Х чтобы заблокировать мой, вы введите свой полный IP-адрес), и нажмите “Сохранить”. 1e) Справа вы увидите чашку с карандашами, где вы найдете записи DNS. Нажмите на эту картинку (Скриншот 3, Скриншот 4).

  2. Откройте новую вкладку в браузере и перейти на zerossl.com(Скриншот 5). 2a) На левой стороне нажмите “Сертификаты и инструменты” (Скриншот 6). 2b) Нажмите “Пуск” под бесплатные SSL сертификаты, и вы увидите (Скриншот 7). 2c) Введите свою эл.почту, введите свое домен (yourdomain.com), выберите “Проверка DNS”, примите TOS и SA и нажмите “Далее” (Скриншот 8). 2d) Когда вас попросят включить www. префикс, нажмите “да”. 2e) Вы увидите что система уже сгенерировала CSR (Скриншот 9). 2f) Как только вы нажмёте “Далее”, система сгенерирует вам ключ (Скриншот 10). 2g) Вы нажмёте на “Загрузить”, и загрузите сразу CSR и КЛЮЧ (Скриншот 11). 2h) Нажмите “Далее”, и вы увидите (Скриншот 12). 2i) Теперь вам нужно будет вернуться на вашу страницу Dynu (оставьте страницу открытой и продолжаем).

  3. Как только вы вернетесь на страницу Dynu, вы увидите 4 предметы (имя узла, тип, TTL и имя хоста Скриншот 13). Выполните следующие действия: 3a) Измените тип файла на .TXT - Текст. 3b) В имя узла скопируйте ваш TXT запись домен со страницы zerossl. 3c) Скопируйте и вставьте поле значения из zerossl в текстовое поле на вашей странице Dynu (Скриншот 13). (TTL оставьте на уровне 90). 3d) Повторите шаг 3c для другой записи (у вас есть ешё две записи, одна для www., и та которая является вашим доменом). 3e) Используя SSH соединитесь в ваш Raspberry Pi, и введите “nslookup -q = TXT XXX “. ХХХ будет одна из записей, которую вы только что вставили в имя узла на шаге 3b. 3f) Это займет всего лишь минуту, а затем, когда вы запустите nslookup, он покажет вам что он эго видит (я не помню точную формулировки, но это было очевидно). 3g) Вернитесь к своему открытому ssl файлу и нажмите “далее”. Как только закончится проверка он выдаст ваш ключ и ваши crt файлы домена.

Когда у вас уже будут эти файлы, у вас будет и свой сертификат SSL, и вы должны поместить сертификат в нужную папку в вашем NextCloudPi экземпляре. Эту папку вы найдете в /etc/apache2/sites-available/nextcloud.conf

По умолчанию они находятся в директории /etc/ssl

...
SSLCertificateFile    /etc/ssl/certs/ssl-cert-snakeoil.pem  (SSLФаилСертификата  /etc/ssl/certs/ssl-cert-snakeoil.pem)                                                 
SSLCertificateKeyFile /etc/ssl/private/ssl-cert-snakeoil.key  (SSLФаилКлучаСертификата  /etc/ssl/private/ssl-cert-snakeoil.key)
...

Каждый Скриншот

Tags: letsencrypt