Страница 1 из 1

Автоматический SSL сертификат для всех локальных доменов

Добавлено: 21 апр 2022, 02:20
FLy
Конфиги менять не нужно, достаточно добавить батник pre_start.tpl.bat.

1. Если ещё не установлен корневой сертификат, то в папке userdata\config\cert_files кликнуть на rootCA.crt и нажать установить. Выбор хранилища - доверенные корневые центры сертификации.

2. В папке userdata создать файл pre_start.tpl.bat со следующим содержанием:

@echo OFF

setlocal enableextensions enabledelayedexpansion

set OPENSSL_CONF=%realprogdir%\modules\http\%httpdriver%\conf\openssl.cnf
set PATH=%PATH%;%realprogdir%\modules\http\%httpdriver%\bin
set CERTS_PATH=%realprogdir%\userdata\config\cert_files

set days=3660
set key_bits=2048

set dname=server

echo [trust_cert] > %dname%.cnf
echo subjectAltName=@alt_names >> %dname%.cnf
echo keyUsage=digitalSignature,keyEncipherment,dataEncipherment >> %dname%.cnf
echo extendedKeyUsage=serverAuth,clientAuth >> %dname%.cnf
echo [alt_names] >> %dname%.cnf
set /a count = 1
for /f "tokens=*" %%G in ('dir %realprogdir%\domains\ /b') do (
	echo DNS.!count! = %%G >> %dname%.cnf
	set /a count += 1
	rem echo DNS.!count! = www.%%G >> %dname%.cnf
	rem set /a count += 1
)

openssl genrsa -out %CERTS_PATH%\%dname%.key %key_bits%
openssl req -sha256 -new -utf8 -key %CERTS_PATH%\%dname%.key -out %dname%.csr -subj /emailAddress="info\@ospanel\.io"/C=RU/stateOrProvinceName="Russian Federation"/L=Moscow/O="Open Server Panel"/OU=Software/CN=%dname%

openssl x509 -sha256 -req -days %days% -in %dname%.csr -extfile %dname%.cnf -extensions trust_cert -CA %CERTS_PATH%\rootCA.crt -CAkey %CERTS_PATH%\rootCA.key -out %CERTS_PATH%\%dname%.crt

openssl x509 -in %CERTS_PATH%\%dname%.crt -noout -purpose

del %dname%.csr
del %dname%.cnf

Кому нужны алиасы с www, уберите rem'ы в цикле.

3. При запуске Open Server будет ругаться, что файл pre_start.bat не найден. Это давний баг (привет, Максим ;) ), получившийся файл userdata\pre_start.bat нужно скопировать в корневую директорию Open Server (где находится Open Server.exe)

Теперь при запуске Open Server все домены будут добавляться в файл server.crt как алиасы, после создания нового домена останется только перезапустить Open Server.

Re: Автоматический SSL сертификат для всех локальных доменов

Добавлено: 10 авг 2023, 20:58
Rooter
Приветствую! А эта инструкция еще актуальна? Что-то не работает :(
У меня ospanel 5.4.3
И никакого сообщения о том что "pre_start.bat не найден" я не получаю.
В userdata\ упомянутого в пункте 3 файла pre_start.bat тоже не вижу.

Re: Автоматический SSL сертификат для всех локальных доменов

Добавлено: 17 ноя 2023, 21:11
Vell61
Rooter писал(а): 10 авг 2023, 20:58 Приветствую! А эта инструкция еще актуальна? Что-то не работает :(
У меня ospanel 5.4.3
И никакого сообщения о том что "pre_start.bat не найден" я не получаю.
В userdata\ упомянутого в пункте 3 файла pre_start.bat тоже не вижу.
Работает, проверено, но есть вопрос, он добавляет в алиасы домены при первом таком запуске с определенной конфигурацией сервера, т.е. при смене Профиля - меняется конфигурация сервера и получаем ошибку ERR_SSL_VERSION_OR_CIPHER_MISMATCH! Подозреваю надо удалять SSL сертификат, чистить кеш везде, устанавливать заново под другие конфиги...

Re: Автоматический SSL сертификат для всех локальных доменов

Добавлено: 18 дек 2023, 15:43
ars66
FLy писал(а): 21 апр 2022, 02:20 Конфиги менять не нужно, достаточно добавить батник pre_start.tpl.bat.

1. Если ещё не установлен корневой сертификат, то в папке userdata\config\cert_files кликнуть на rootCA.crt и нажать установить. Выбор хранилища - доверенные корневые центры сертификации.

2. В папке userdata создать файл pre_start.tpl.bat со следующим содержанием:
Добрый день, все сделал по инструкции, теперь попасть на сайты не могу
NET::ERR_CERT_INVALID
:(

Re: Автоматический SSL сертификат для всех локальных доменов

Добавлено: 18 дек 2023, 21:31
FLy
ars66 писал(а): 18 дек 2023, 15:43 Добрый день, все сделал по инструкции, теперь попасть на сайты не могу
NET::ERR_CERT_INVALID
:(
Скорее всего, не установлен корневой сертификат rootCA.crt. Попробуйте выполнить первый пункт и перезагрузить компьютер.

Re: Автоматический SSL сертификат для всех локальных доменов

Добавлено: 18 сен 2024, 12:14
SLideR11
Подскажите такой момент. Сделал все три пункта, в протокол добавилось https. Но браузер всё ещё не доверяет сайтам и кидает предупреждение, что они не безопасны. Так же на сайтах висит ошибка о недействительном сертификате.

Re: Автоматический SSL сертификат для всех локальных доменов

Добавлено: 18 сен 2024, 14:06
SLideR11
Решил проблему путём запуска OSPanel от имени администратора. Надеюсь это всегда будет срабатывать.