Заметки о решаемых задачах АйТишников

Сделал - запиши. Нашёл - сохрани :)

Прошу прощения за рекламу на сайте. Я постарался сделать это максимально ненавязчиво и по минимуму. При чтении заинтересовавших вас статей она не будет вам мешать.
И если есть возможность поставить мой сайт в исключения у блокировщика рекламы, я буду очень признателен вам.

Настройка веб-сервера Apache под Windows и публикация баз 1С

Настройка веб-сервера Apache под Windows и публикация баз 1С

 

 

 

Настройка HTTPS для Apache на Windows: от установки до Let's Encrypt

В данной статье собраны две инструкции: базовая настройка веб-сервера Apache под Windows и последующая настройка бесплатного SSL-сертификата Let's Encrypt с автоматическим обновлением. В отличие от IIS, Apache доступен как для Windows, так и для Linux и позволяет гибко настроить публикации по защищённому протоколу HTTPS.

План работ

  • Установка Apache под Windows.
  • Публикация информационной базы 1С (подготовка).
  • Выпуск и установка бесплатного SSL-сертификата Let's Encrypt.
  • Настройка Apache для работы с сертификатом.
  • Перенаправление HTTP на HTTPS.
  • Автоматическое обновление сертификата.

Часть 1. Установка и базовая настройка Apache

1. Установка Apache

  1. Скачайте последнюю версию Apache 2.4 для Windows с официального сайта (например, https://www.apachelounge.com/download/).
  2. Разархивируйте содержимое в папку C:\Apache24.
    • Примечание: Цифра 24 соответствует версии 2.4. Платформа 1С поставляет разные библиотеки для версий 2.2 и 2.4, поэтому это важно.
  3. Откройте командную строку от имени администратора (Пуск → cmd → правой кнопкой → «Запустить от имени Администратора»).
  4. Перейдите в папку Apache:
    cd C:\Apache24\bin
  5. Установите Apache как службу Windows:
    httpd.exe -k install
    После успешной установки вы увидите сообщения:
    Installing the 'Apache2.4' service
    The 'Apache2.4' service is successfully installed.
  6. Теперь служба Apache2.4 появится в оснастке «Службы» Windows (services.msc). Её состояние — «Выполняется», тип запуска — «Автоматически».

2. Базовая настройка (подготовка к HTTPS)

Убедитесь, что в конфигурационном файле C:\Apache24\conf\httpd.conf присутствуют и раскомментированы следующие строки (позже они понадобятся для SSL):

LoadModule ssl_module modules/mod_ssl.so
LoadModule socache_shmcb_module modules/mod_socache_shmcb.so
Include conf/extra/httpd-default.conf
Include conf/extra/httpd-ssl.conf

Также укажите глобальные настройки сервера:

ServerName mysite.ru
ServerAdmin admin@mysite.ru

На этом базовая установка Apache закончена. Далее переходим к получению бесплатного сертификата.


Часть 2. Бесплатный SSL-сертификат Let's Encrypt (win-acme)

Тестировалось на: Windows 2016 Server, Apache 2.4.58/2.4.60, win-acme 2.2.6.1571.
Сертификат действует 3 месяца, затем автоматически обновляется через задание в Планировщике Windows.

Шаг 1. Подготовка утилиты win-acme

  1. Скачайте win-acme с официального сайта: https://www.win-acme.com/
  2. Распакуйте архив в папку C:\win-acme.
  3. Создайте в папке C:\win-acme\Scripts\ файл RestartApache.bat со следующим содержимым:
    net stop "Apache2.4"
    net start "Apache2.4"

Шаг 2. Запуск и настройка сертификата

  1. Запустите клиент win-acme от имени администратора:
    C:\win-acme\wacs.exe
  2. В меню выберите M (Create new certificate with advanced options).
  3. Выберите Manual input (обычно пункт 2).
  4. Введите имя хоста, например mysite.ru.
  5. На запрос альтернативного имени просто нажмите Enter.
  6. Выберите Single certificate.
  7. Выберите способ проверки: [http-01] Save verification files on (network) path.
  8. Укажите путь для файлов проверки: C:\Apache24\htdocs.
  9. На вопрос о копировании web.config ответьте N.
  10. Выберите тип ключа: RSA key.
  11. Выберите формат для Apache: PEM encoded files (Apache, nginx, etc.).
  12. Укажите папку для сохранения .pem файлов: C:\Apache24\conf.
  13. Пароль на сертификаты устанавливать не нужно (выберите вариант без пароля).
  14. На вопрос о дополнительных хранилищах ответьте No (addition) store steps.
  15. После создания сертификата выберите дополнительный шаг: Start external script or program.
  16. Укажите путь к созданному RestartApache.bat: C:\win-acme\Scripts\RestartApache.bat.
  17. В параметры скрипта введите: {StoreType} {StorePath} {RenewalId}.
  18. На вопрос о дополнительных шагах ответьте No (additional) installation steps.
  19. При необходимости подтвердите свои действия (если ранее уже выпускали сертификат на этот домен).
    Важно: потребуется указать логин и пароль пользователя ОС, от имени которого будет запускаться задача в Планировщике.

Шаг 3. Результат генерации

В папке C:\Apache24\conf появятся 4 файла:

  • mysite.ru-chain.pem
  • mysite.ru-chain-only.pem
  • mysite.ru-crt.pem
  • mysite.ru-key.pem

В Планировщике задач Windows автоматически создастся задание для обновления сертификата каждые 3 месяца.


Часть 3. Настройка Apache для работы с SSL-сертификатом

Редактируем C:\Apache24\conf\extra\httpd-ssl.conf

Выполните следующие замены в файле:

  • Замените путь к сертификату:
    SSLCertificateFile "${SRVROOT}/conf/server.crt"
    на
    SSLCertificateFile "${SRVROOT}/conf/mysite.ru-chain.pem"
  • Замените путь к ключу:
    SSLCertificateKeyFile "${SRVROOT}/conf/server.key"
    на
    SSLCertificateKeyFile "${SRVROOT}/conf/mysite.ru-key.pem"
  • Замените набор шифров (CipherSuite) на современный:
    SSLCipherSuite ECDH+AESGCM256:ECDH+CHACHA20:DH+AESGCM256:ECDH+AES256:DH+AES256:!aNULL:!MD5:!DSS
    SSLProxyCipherSuite ECDH+AESGCM256:ECDH+CHACHA20:DH+AESGCM256:ECDH+AES256:DH+AES256:!aNULL:!MD5:!DSS
  • Замените протоколы SSL/TLS (отключаем устаревшие):
    SSLProtocol all -SSLv3 -TLSv1 -TLSv1.1
    SSLProxyProtocol all -SSLv3 -TLSv1 -TLSv1.1
  • Настройте виртуальный хост для HTTPS:
    # General setup for the virtual host
    DocumentRoot "${SRVROOT}/htdocs"
    ServerName mysite.ru:443
    ServerAdmin admin@mysite.ru
    ErrorLog "${SRVROOT}/logs/error.log"
    TransferLog "${SRVROOT}/logs/access.log"

Включаем модуль перенаправления

В файле C:\Apache24\conf\httpd.conf раскомментируйте строку:

LoadModule rewrite_module modules/mod_rewrite.so

Часть 4. Перенаправление HTTP на HTTPS

В файле C:\Apache24\conf\httpd.conf после последней строки с LoadModule добавьте следующие строки:

RewriteEngine On
RewriteCond %{HTTPS} off
RewriteRule ^ https://%{HTTP_HOST}%{REQUEST_URI} [R=301,L]

Это обеспечит автоматическое перенаправление всех запросов с порта 80 (HTTP) на защищённый порт 443 (HTTPS).


Финальные шаги и проверка

  1. Перезапустите Apache (через службы или командой httpd.exe -k restart от администратора).
  2. Убедитесь, что служба Apache2.4 успешно запущена и в её описании видны модули OpenSSL (например, OpenSSL/1.1.1g).
  3. Проверьте работу HTTPS в браузере, перейдя на https://mysite.ru.
  4. Для более детальной проверки безопасности используйте онлайн-тест Qualys SSL Labs (https://www.ssllabs.com/ssltest/). Результат должен быть не ниже «A» при правильных настройках.

Итог: В результате вы получите полноценное SSL-соединение для вашего веб-сервера Apache на Windows, которое автоматически поддерживается в актуальном состоянии. Публикация информационных баз 1С (или любых других сайтов) будет работать как через API, так и через браузер с защитой трафика.

 

09 апреля 2026, 09:50    Александр 1C 0    0 0

 

 

 

 



Комментарии ()

    Вы должны авторизоваться, чтобы оставлять комментарии.