Differences
This shows you the differences between two versions of the page.
| Both sides previous revisionPrevious revisionNext revision | Previous revision | ||
| установка_ssl_сертификатов_для_веб-публикации [2023/03/31 10:55] – jp | установка_ssl_сертификатов_для_веб-публикации [2023/04/07 08:48] (current) – jp | ||
|---|---|---|---|
| Line 1: | Line 1: | ||
| ===== Установка SSL сертификатов для веб-публикации ===== | ===== Установка SSL сертификатов для веб-публикации ===== | ||
| - | 1. Запрашиваем в УЦ сертификаты для веб-сервера. Хорошо подойдёт одноименный шаблон в Windows CA. В шаблоне должен быть экспортируемый закрытый ключ, чтобы мы могли выгрузить сертификат и импортировать его в Apache. В запрос сертификата нужно включить все имена, по которым собираемся обращаться к веб-серверу 1С. | + | 1. Запрашиваем в УЦ сертификаты для веб-сервера. Хорошо подойдёт одноименный шаблон в Windows CA. |
| - | 2. Экспортируем полученный сертификат в base64 кодировке, | + | В шаблоне должен быть экспортируемый закрытый ключ, чтобы мы могли выгрузить сертификат и импортировать его в Apache. В запрос сертификата в //subject alternative names// нужно включить все имена, по которым собираемся обращаться к веб-серверу 1С. |
| + | |||
| + | 2. Экспортируем полученный сертификат в base64 кодировке, | ||
| :!: // | :!: // | ||
| - | Пример цепочки из трёх сертификатов - сервера, | + | Пример цепочки из трёх сертификатов - сервера, |
| < | < | ||
| Line 128: | Line 130: | ||
| 4. Получаем два разных файла для сертификата сервера - открытый и закрытый ключ из загруженного pfx. Как это сделать - описано в разделе [[OpenSSL]]. | 4. Получаем два разных файла для сертификата сервера - открытый и закрытый ключ из загруженного pfx. Как это сделать - описано в разделе [[OpenSSL]]. | ||
| - | 5. Все сертификаты с открытым ключем (сертификат сервера, | + | 5. Все сертификаты с открытым ключем (сертификат сервера, |
| - | / | + | / |
| + | / | ||
| + | / | ||
| - | Закрытый ключ сертификата сервера копируем в папку: | + | Закрытый ключ сертификата сервера копируем в папку |
| / | / | ||
| - | 6. Если на нашем сервере Apache обслуживает только 1С, то нам просто нужно отредактировать файл | + | 6. Если на нашем сервере Apache обслуживает только 1С, то нам просто нужно отредактировать файл |
| / | / | ||
| - | Добавим в него virtualhost по умолчанию для | + | Добавим в него |
| < | < | ||
| Line 156: | Line 160: | ||
| | | ||
| </ | </ | ||
| + | </ | ||
| В данном конфиге // | В данном конфиге // | ||
| + | |||
| + | 7. Перезапускаем Apache | ||
| + | |||
| + | | ||
| + | 8. Если получаем ошибку о том, что директива //SSLEngine on// непонятна серверу - включаем модуль SSL и перезапускаем Apache снова | ||
| + | |||
| + | sudo a2enmod ssl | ||
| + | 9. Проверяем доступность публикации по https. | ||
| + | |||
| + | ---- | ||
| + | |||
| + | === Делаем редирект с http на https в Apache === | ||
| + | |||
| + | Добавляем правила рерайта в файл | ||
| + | |||
| + | / | ||
| + | < | ||
| + | RewriteEngine On | ||
| + | RewriteCond %{REQUEST_URI} !^/ | ||
| + | RewriteRule ^(.*)$ https:// | ||
| </ | </ | ||
| + | |||
| + | Перезапускаем Apache | ||
| + | |||
| + | | ||
| + | Если при перезагрузке Apache получаем сообщение об ошибке - скорее всего у нас не установлен mod rewrite. | ||
| + | |||
| + | Установим его и перезапустим Apache снова | ||
| + | |||
| + | sudo a2enmod rewrite | ||
| + | {{tag>1C Certificates Apache ADCS PKI}} | ||