Страница 2 из 4

Re: Установка SSL на Open Server для внешеного доступа!!!!

Добавлено: 23 июл 2021, 12:10
SagePointer
SCSMDRU писал(а): 23 июл 2021, 11:43 Вот что через Acme
А зачем запускать внешний скрипт на данном этапе? Можно просто выбрать 4: No additional installation steps.
А вообще, на первом шаге выбирать M, а не N, чтобы WinACME не выбирал некоторые варианты самостоятельно и не пропускал шаги, а то может и неправильно выбирать.

Re: Установка SSL на Open Server для внешеного доступа!!!!

Добавлено: 23 июл 2021, 12:39
SagePointer
SCSMDRU писал(а): 23 июл 2021, 12:05 https://freessl.org
Auto-Generate CSR
В случае http validation нужно расположить txt-файл с нужным содержимым по нужному пути, там написано, по какому пути он должен располагаться и что внутри него должно быть.

Re: Установка SSL на Open Server для внешеного доступа!!!!

Добавлено: 23 июл 2021, 17:01
SCSMDRU
А где данный текстовый файл скомпилировать или взять и из чего?

Re: Установка SSL на Open Server для внешеного доступа!!!!

Добавлено: 23 июл 2021, 17:30
SagePointer
SCSMDRU писал(а): 23 июл 2021, 17:01 А где данный текстовый файл скомпилировать или взять и из чего?
Создать в блокноте, вставить туда текст, указанный на странице, и сохранить под именем, указанным на странице.

Re: Установка SSL на Open Server для внешеного доступа!!!!

Добавлено: 24 июл 2021, 05:22
SCSMDRU
SagePointer писал(а): 23 июл 2021, 17:30
SCSMDRU писал(а): 23 июл 2021, 17:01 А где данный текстовый файл скомпилировать или взять и из чего?
Создать в блокноте, вставить туда текст, указанный на странице, и сохранить под именем, указанным на странице.
Как я понимаю, делаю Verify Domain посредством Verification Method Выбирая HTTP File upload
далее появляется Auth Info с указанием моего домена, Auth value, и Auth path.
Auth path как я понимаю это имя файла и его расположение на моём сервере в корневой папке домена?
Вот только незадача вот такого пути remont-smd.ru/.well-known/pki-validation/ я не могу найти :D

Auth value этот текст понимаю нужно скопировать и вставить в созданный текстовый файл и назвать его как указано перед расширением txt в Auth path????

Меня смущает remont-smd.ru/.well-known/pki-validation/
это нужно создать папку с таким названием .well-known
Потом в ней папку создать /pki-validation/ а в неё уже положить текстовый файл?

Re: Установка SSL на Open Server для внешеного доступа!!!!

Добавлено: 24 июл 2021, 05:29
SCSMDRU
Я создал папку well-known и в ней паку pki-validation и разместил там как я выше написал и теперь пытаюсь пройти Finalize нажимаю Verify Domain а мне выдаёт вот что: Domain name verification failed. Please try again later

Re: Установка SSL на Open Server для внешеного доступа!!!!

Добавлено: 24 июл 2021, 05:36
SCSMDRU
Или я делаю что то не так?
И куда запихать privatekey.key?

Re: Установка SSL на Open Server для внешеного доступа!!!!

Добавлено: 24 июл 2021, 05:52
SCSMDRU
SagePointer писал(а): 23 июл 2021, 12:10
SCSMDRU писал(а): 23 июл 2021, 11:43 Вот что через Acme
А зачем запускать внешний скрипт на данном этапе? Можно просто выбрать 4: No additional installation steps.
А вообще, на первом шаге выбирать M, а не N, чтобы WinACME не выбирал некоторые варианты самостоятельно и не пропускал шаги, а то может и неправильно выбирать.

Re: Установка SSL на Open Server для внешеного доступа!!!!

Добавлено: 24 июл 2021, 09:36
SagePointer
SCSMDRU писал(а): 24 июл 2021, 05:52 Вложения
Зачем всё переусложнять и кастомный CSR скармливать, если Win-ACME сам умеет и ключ генерировать, и CSR?

Re: Установка SSL на Open Server для внешеного доступа!!!!

Добавлено: 24 июл 2021, 11:11
SagePointer
Список вопросов и ответов, которые задаёт Win-ACME, и что следует выбирать для получения сертификатов для Apache/Nginx в OpenServer

В вашем конкретном случае вопросы и их порядок, а также цифры в номере ответа могут отличаться от указанных в инструкции, в зависимости от версии Win-Acme и других обстоятельств, потому смотрите не на сами цифры, а на примерный текст ответа и выбирайте подходящий, вводя нужную цифру, соответствующую вашему варианту ответа (цифры тоже привожу, но проверяйте их на соответствие нужному варианту ответа, т.к. могут быть перепутаны в других версиях программы, если туда добавлялись новые опции). C:\OSPanel\ и mydomain.ru в моём примере замените на свой путь установки OpenServer и имя домена в том виде, как оно у вас указано в папке domains - т.е. без www, если у вас без него, или с ним, если оно у вас с ним.

Please choose from the menu:
M: Create certificate (full options)

How shall we determine the domain(s) to include in the certificate?:
2: Manual input

Host:
mydomain.ru
(если у вас в настройках OpenServer прописано несколько других доменов для одного и того же сайта через раздел Алиасы - то вы можете перечислить их через запятую, добавив к основному имени домена, например "mydomain.ru, www.mydomain.ru, myalias.mydomain.ru" - но только при условии, что они у вас в настройках OpenServer указаны и браузер по ним открывает тот же сайт, иначе проверка застопорится на них и сертификат не сможет быть получен)

Suggest friendly name '[Manual] mydomain.ru', press <Enter> to accept or type alternative:
Соглашаемся с предоставленным именем и нажимаем Enter, ничего не вводя. Или можем по желанию указать другое имя, если это нам принципиально (на работу сертификата не влияет).

How would you like prove ownership for the domain(s)?:
1: [http-01] Save verification files on (network) path

Path to the root of the site that will handle authentication:
C:\OSPanel\domains\mydomain.ru
(Если папка с файлами домена расположена в другом месте, то указываем именно его)

Copy default web.config before validation? (y/n*)
no (этот файл относится к IIS, а у нас апач/nginx)

What kind of private key should be used for the certificate?:
2: RSA key
(или можем выбрать Elliptic Curve key, если не нужна поддержка древних браузеров и хочется более современной криптографии на эллиптических кривых, может работать не везде)

How would you like to store the certificate?:
2: PEM encoded files (Apache, nginx, etc.)

File path:
C:\OSPanel\userdata\config\cert_files
(вы можете выбрать свой путь для хранилища сертификатов, но коли в OpenServer уже есть для них папка cert_files - логичнее хранить там же, да и проще конфиги редактировать).

Password to set for the private key .pem file. Choose from the menu:
1. None

Would you like to store it in another way too?:
5: No (additional) store steps
(этот шаг ничем не отличается от позапрошлого шага своими вариантами выбора, потому нужно быть осторожным и не выбрать случайно снова вариант 2, ибо нам не нужно сохранять несколько копий ключей и сертификатов)

Which installation step should run first?:
4: No (additional) installation steps

Enter email(s) for notifications about problems and abuse (comma-separated):
Вводим наш е-мейл, на который будем получать уведомления от Let's Encrypt. Можно использовать ящик для спама, чтобы не палить основной.

Terms of service: Open in default application?
no (если знаем английский на уровне юридических документов, можем выбрать yes и ознакомиться с соглашением)

Do you agree with the terms?
yes (подписываемся не глядя)

Do you want to specify the user the task will run as?
no (но, если хотим, можем указать юзера, под которым будет выполняться автопродление сертификата)

После этого проверяем C:\OSPanel\userdata\config\cert_files, там должны дополнительно появиться 4 файла вида: mydomain.ru-chain.pem, mydomain.ru-chain-only.pem, mydomain.ru-crt.pem, mydomain.ru-key.pem.

Далее, нам нужно прописать сертификаты в файл конфигурации нашего домена. В зависимости от того, что у нас, Apache или Nginx, или они в связке - берём нужный файл конфигурации из папки C:\OSPanel\userdata\config, копируем его в папку C:\OSPanel\domains\mydomain.ru, и редактируем тот экземпляр, что лежит в папке нашего домена. Вот таблица, какой файл брать для какого HTTP-сервера, и как именно прописывать пути к сертификатам (заменять переменные вида %переменная% в файлах конфига не нужно, OpenServer сам их будет подставлять при запуске).
Не забываем, что для каждой версии Apache и Nginx свой конфиг, потому выбираем тот, что соответсвует нашей версии.

Apache:
Apache_XXXX-PHP_XXXX_vhost.conf
    SSLCertificateChainFile  "%sprogdir%/userdata/config/cert_files/%host%-chain-only.pem"
    SSLCertificateFile       "%sprogdir%/userdata/config/cert_files/%host%-crt.pem"
    SSLCertificateKeyFile    "%sprogdir%/userdata/config/cert_files/%host%-key.pem"
Nginx или Apache+Nginx:
Nginx_XXXX_vhost.conf или Apache_XXXX-PHP_XXXX+Nginx_XXXX_vhostn.conf
    ssl_certificate           '%sprogdir%/userdata/config/cert_files/%host%-chain.pem';
    ssl_certificate_key       '%sprogdir%/userdata/config/cert_files/%host%-key.pem';
Так как мы в этих конфигурационных строках нигде не указывали имя домена вручную, а использовали переменные - нам не обязательно впоследствии каждый раз редактировать эти конфиги для новых доменов, достаточно скопировать их из папки нашего старого домена в новый (но строго после этапа получения сертификата для него и проверки наличия в cert_files, а то конфиг будет указывать на ещё не созданные файлы сертификатов - и сервер попросту не запустится).

P.S. Если кто-то оформит это в виде красивой инструкции скартинкаме, буду рад)