Настройка 1c apache ssl windows

Обновлено: 06.07.2024

Настройка веб-сервера Apache под Windows

<Н2>1. Установка Apache под Windows

Первому делу необходимо скачать и установить веб-сервер. Список доступных реализаций можно найти по ссылке, а в статье будет использован самый первый из списка дистрибутивов. Он поставляется в виде zip-архива без инсталлятора.

Поэтому необходимо скачать архив и разархивировать в любую удобную папку, например, C:\Apache24. 24. В названии папки указан номер версии Apache. В настоящее время используется версия 2.4. В публикации опубликованной базы из командной строки стоит обратить на это внимание, так как библиотеки с платформой содержат отдельные веб-компоненты для версий Apache 2.2 и 2.4.

После разархивирования файла архива, принятого командной строкой от имени администратора. Самый простой вариант – это открыть меню Пуск и ввести cmd. После того, как приложение будет обнаружено, щелкнуть правой кнопкой мыши и выбрать пункт меню «Запустить от имени Администратора» («Запуск от имени администратора»).

В командной строке переходим в директорию распакованного Apache с помощью команды cd. Например:


< /p>

В каталоги Apache вводим команду:


< /p>

Это установленная служба Apache, которой можно будет управлять в окне службы.


< /p>

На этой установке Apache закончена. Осталось только опубликовать информативное использование и указать файлы сертификата в запуске Apache.

<Н2>2. Выпуск самоподписанного сертификата Windows

В отличие от IIS, для сертификата Apache используется использование прямого программного обеспечения OpenSSL.

По умолчанию в системе Windows его нет. Поэтому его нужно скачать и установить самостоятельно. Возможные дистрибутивы OpenSSL для Windows, указанные на вики.

После скачивания дистрибутива его установка необходима.

На первой странице необходимо согласоваться с международной общественностью (переключите переключатель на "Я принимаю соглашение") и выберите "Далее".


< /p>

Мастер переключается на размещение дистрибутива. Если положение не изменится, то можно оставить поле в значении по умолчанию и установить параметр "Далее".


< /p>

На постепенном шаге ничего менять не нужно и можно просто подобрать "Далее".


< /p>

Дистрибутив готов к установке. Нужно нажать кнопку «Установить» и дождаться завершения установки.


< /p>

Финальный шаг – это страница пожертвований в поддержку проекта. Если в планы не входит перечисление пожертвований, то необходимо снять все флажки и настроить параметр Finish.


< /p>

Дистрибутив OpenSSL установлен и теперь можно переходить к генерации сертификата.

Для этого необходимо использовать интерпретатор командной строки от имени Администратора.

Директория bin для OpenSSL была указана на втором этапе установщика.


< /p>

Если вдруг появилось добавление папки bin в переменные окружения, то необходимо выпустить перезапуск строки от имени администратора. В этом случае, если ввод перешел в режим конфигурирования OpenSSL, необходимо выбрать сочетание клавиш Ctrl + C.

Далее нужно перейти в каталог Apache и создать папку, в которой находятся файлы сертификатов.


< /p>

После создания необходимо перейти в созданную директорию.


< /p>

После чего требуется произвести команду генерации сертификата, где вместо нужно подставить имя компьютера, на котором планируется разместить Apache:


< /p>

Во время выполнения задания команда будет задана несколько раз. Для "Общее имя (например, полное доменное имя сервера или Ваше проклятие)" нужно также указать имя сервера. Остальные поля развиваются (кроме "Название страны" - здесь можно оставить по умолчанию).

<Н2>3. Публикация базы данных Windows

Перед публикацией необходимо отредактировать в любом удобном редакторе файла, расположенном в директории базы дистрибутива Apache.

Нужно в файле найти секцию VirtualHost _default_:443 и в ней заменить SSLCertificateFile и SSLCertificateKeyFile на полные пути к ключу и закрытому файлу сертификата, на загруженные электронные файлы.

После этого можно перейти к публикации.

Для публикации информации необходимо открыть конфигуратор базы данных от имени администратора и перейти в пункт меню "Администрирование". После этого выберите "Публикация общей базы".

В настройках окна публикации укажите имя публикации и по желанию определите каталог, где будут находиться публикации. Его также можно оставить по умолчанию.

После этого требуется установка параметра "Опубликовать" и дождаться окончания операции.


< /p> <Н2>4. Проверка публикации

Для проверки корректной работы необходимо открыть страницу в браузере и перейти по ссылке, которая состоит из двух частей:


Домашние загрузки

Главное меню

Журналы изменений и примечания

Двоичные файлы Apache созданы с использованием исходного исходного кода, выпущенного Apache Software Foundation (если не указано иное), и были скомпилированы с помощью Visual Studio 2015 (VC9) или Visual Studio 2017 (VC15) для обеспечения более высокой производительности и лучшей стабильности, чем созданные двоичные файлы. Фонд Apache Software Foundation

Двоичные файлы создаются с использованием последних версий Apache Portable Runtime, библиотеки сжатия OpenSSL и Zlib. OpenSSL и Zlib создаются с использованием дополнительных процедур сборки для повышения производительности в модулях SSL и deflate.

После загрузки и перед установкой убедитесь, что файл не поврежден и не был изменен. Используйте контрольные суммы SHA для проверки целостности.

Apache 2.4.x OpenSSL 1.1.1 VC15
Построен с использованием исходных кодов C из ASF и OpenSSL в Visual Studio 2017 (VC15).
Примечание. Двоичные файлы VC15 не работают в Windows XP или Server 2003.
Подробности см. в файле readme_first.html.

Apache 2.4.53 httpd-2.4.53-o111n-x86-vc15.zip 11,5 МБ Места загрузки
с OpenSSL 1.1.1n, brotli 1.0.9, nghttp 1.47.0, Zlib 1.2.11, PCRE2 10.39
Контрольная сумма SHA1
< td width="170" align="center">httpd-2.4.53-o111n-x64-vc15.zip
Apache 2.4.53 x64 12,7 МБ Места загрузки
с OpenSSL 1.1.1n, brotli 1.0.9, nghttp 1.47 .0, Zlib 1.2.11, PCRE2 10.39
Контрольная сумма SHA1

Apache 2.4.x OpenSSL 1.1.1 VS16
Построено с использованием исходных кодов C из ASF и OpenSSL в Visual Studio 2019 (VS16).
Примечание. Двоичные файлы VS16 не запускаются в Windows XP или Server 2003
Подробности см. в файле readme_first.html.

Apache 2.4.53 httpd-2.4.53-o111n-x86-vs16.zip 11,7 МБ Места загрузки
с OpenSSL 1.1.1n, brotli 1.0.9, nghttp 1.47.0, Zlib 1.2.11, PCRE2 10.39
Контрольная сумма SHA1
< td width="170" align="center">httpd-2.4.53-o111n-x64-vs16.zip
Apache 2.4.53 x64 12,9 МБ Места загрузки
с OpenSSL 1.1.1n, brotli 1.0.9, nghttp 1.47 .0, Zlib 1.2.11, PCRE2 10.39
Контрольная сумма SHA1

Apache 2.4.x Apache 2.4. x LibreSSL VS16
Построен с использованием исходных кодов C из ASF и LibreSSL в Visual Studio 2019 (VS16).
Примечание. Двоичные файлы VS16 не запускаются в Windows XP или Server 2003
См. файл readme_first.html. подробности.

Apache 2.4.53 httpd-2.4.53-lre343-x86-vs16.zip 11,8 МБ Места загрузки
с LibreSSL 3.4.3, brotli 1.0.9, nghttp 1.47.0, Zlib 1.2.11, PCRE2 10.39
Контрольная сумма SHA1
< td width="170" align="center">httpd-2.4.53-lre343-x64-vs16.zip
Apache 2.4.53 x64 13,0 МБ Места загрузки
с LibreSSL 3.4.3, brotli 1.0.9, nghttp 1.47 .0, Zlib 1.2.11, PCRE2 10.39
Контрольная сумма SHA1

Apache 2.4.x OpenSSL 1.1.1 VS 17
Построено с использованием исходных кодов C из ASF и OpenSSL в Visual Studio 2022 (VS17).
Подробности см. в файле readme_first.html.


Приведенные ниже модули созданы с помощью Visual Studio C++ 2017 (VC15) для 32- и 64-разрядных версий Apache 2.4.x VC15 и НЕ будут работать с Apache 2.2.x.
Примечание: двоичные файлы VC15 не запускать на Windows XP или Server 2003


Приведенные ниже модули созданы с помощью Visual Studio C++ 2019 (VS16) для 32- и 64-разрядных версий Apache 2.4.x VS16 и НЕ будут работать с Apache 2.2.x.
Примечание: двоичные файлы VS16 не запускать на Windows XP или Server 2003

Распространяемые пакеты Microsoft Visual Studio 2015, 2017, 2019 и 2022 (VS14-VS17)
Распространяемые пакеты Microsoft Visual Studio 2015, 2017, 2019 и 2022, которые будут использоваться для наших последних сборок, указанных выше

Рассмотрим установку Apache на WindowsXP и публикацию файлов желаемого варианта на веб-сервере.

Надо заметить, что при работе с веб-сервером рекомендуется использовать нефайловый, а серверный вариант работы 1С:Предприятия, т.к. связка веб-сервер+файловая БД поднимает высокую деградацию производительности с привлечением удаленных пользователей даже от 3-х человек.

Что произойдет:

Установка Apache для Windows

Публикация базы 1С на веб-сервере.

Администрирование --> публикация на веб-сервере.

Публикация на базе веб-сервера

Каталог – любая папка. В ней будет один маленький конфигурационный файл. Чем короче путь и чем меньше в пробелах, тем иногда бывает меньше глюков у апача.

Всё! Публикация выполняется, запускаем на клиенте, переходим по адресу [myhost]/[Имя].

Доступ к базе,используется http

Не будем голосовны, убедимся.

Извлекаем пароль

Используя любой сниффер, можно отследить запрос к, где клиент передает какие-то данные, сразу после того, как пользователь ввёл на сервер логин, пароль и нажал кнопку ОК.

Сниффер, запрос, данные авторизации

Изучим страницу авторизацией под отладчиком. В строке 147 файла loader.js наблюдается:

Переменные: name (содержащая имя пользователя - timofeeva), dvk (содержит пароль в виде операции - 123321).

Dvm = name + ":" + dvk // теперь dvm = "timofeeva:123321"

Воспользуемся из них, и вынес приговор timofeeva:123321, т.е логин и используем один пароль, разделённые двоеточием.

Декодированная строка с данными для авторизации

Таким образом, мы убедились, что шифрование данных для авторизации не используется, и любой вредитель, имеющий возможность прослушивать трафик, может с лёгкостью узнать логин и пароль.

Поэтому переходим к следующему шагу и включаем поддеркжу SSL.

Включение поддержки SSL в Apache

Добавляем прослушивание 443 порта в httpd.conf

Копируем файлы ssleay32.dll и libeay32.dll из C:\Program Files\Apache Software Foundation\Apache2.2\bin в C:\WINDOWS\system32.

Копируем файл openssl.cnf из C:\Program Files\Apache Software Foundation\Apache2.2\conf в C:\Program Files\Apache Software Foundation\Apache2.2\bin.

Создаем ключи. Т.к. мы создаем их сами и не подписываем в центре сертификации, при первом посещении странички, будут ругаться и предупреждать о безопасности.Для этого:

В строке командной строки переходим в папку bin apacha:

cd "C:\Program Files\Apache Software Foundation\Apache2.2\bin"

Отвечаем на вопросы, в принципе можно заполнять чем угодно – главное не использовать пароль (фразу-пароль).

Тут примерно пароль, указанный в таблице наблюдений.

, где последний параметр – срок истечения действительности сертификата.

Создаем папку ssl в C:\Program Files\Apache Software Foundation\Apache2.2\conf и перемещаем файлы my-server.key и my-server.cert из C:\Program Files\Apache Software Foundation\Apache2.2 \bin в C:\Program Files\Apache Software Foundation\Apache2.2\conf\ssl.

и раскомментируем её (убираем знак решетки).

Раскомментируем подгрузку подуля ssl< бр />

Этот кусок конца httpd.conf удаляем

Вместо их вставляем можно

Новый конец файла httpd.conf

Обратите внимание на последний блок со строкой, размещенной localhost:443


Запускаем редактор реестра (Пуск-выполняем – regedit), переходим в ветку HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Apache2.2.

Находим параметр ImagePath, и он объединяется с ключом -D ssl. Т.е. должно получиться "C:\Program Files\Apache Software Foundation\Apache2.2\bin\httpd.exe" -D ssl -k runservice.

Новый параметр для запуска апача

Все готово. Перезапускаем apache. Открываем Apache Monitor из области распространения и нажимаем перезапустить. Если все отлично, то в журнал выведется Служба Apache перезапущена.

Проверим нашу работу

Т.к. сертификат мы сгенерировали сами, необходимо отсутствие исключения безопасности. Соглашаемся со всеми запросами, и наконец используем 1С:Предприятие.

Все работает, причем по ssl каналу. Мы молодцы? НЕТ.

Исправляем мир

Как известно, уровень безопасности системы равноценен безопасности ее элементу.

Отключаем прослушивание 80 порта

Обращение на порт 443 по http не пройдет!

Заключение

Привлечение к управлению формами, при необходимости использования базы данных в территориально разделенных офисах, с использованием веб-сервера Apache +/тонкого клиента выглядит лучше, чем использование терминального сервера (бесплатный апач) или VPN-подключений (упрощение апач в настройке). ).

Установка Apache

Ну что же начнем.
Для учреждения установлением Apache. Рассмотрим это для 1С:Предприятие x86-64 и для Windows.

<р>2. Устанавливаем Apache.

Реквизиты в полях Сетевой домен, имя сервера и адрес электронной почты администратора.

Установка Apache

Жмем Далее > Далее > Далее. Выбираем типовой.

<р>3. Проверим, что сайт доступен по localhost. Откройте и введите localhost в адресную строку. Должна открыть страницу с текстом "Это работает!"

Настройка Apache по SSL

<р>4. Отлично. Apache установлен, теперь давайте настроим его работу по SSL.

Дописываем Listen 443


Встроенная функция запуска SSLRandomSeed
Встроенная функция подключения SSLRandomSeed


Встроенный запуск SSLRandomSeed
Встроенный SSLRandomSeed connect
SSLSessionCache нет

<р>5. Из каталога bin установленной папки с Apache копируем файлы ssleay32.dll и libeay32.dll в C:\Windows\System32. Так же скопируем файл openssl.cnf из папки c:\Program Files\Apache Software Foundation\Apache2.4\conf\ в папку c:\Program Files\Apache Software Foundation\Apache2.4\bin\.

Редактор реестра

<р>6. Запустим редактор реестра regedit (Пуск > Выполните ввод текста regedit и настройку) Введите допустимое окно реестра в нем найдем ветку HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Apache2.4
В этой ветке найдем переменную ImagePath и два раза кликнем на ней.

Добавим ключ запуска -D ssl

<р>7. Добавим SSL-сертификаты для домена. Тут есть варианты.

<р>7.1. Если у Вас уже есть SSL-сертификаты для домена, создайте папку ssl в папке C:\Program Files\Apache Software Foundation\Apache2.4\conf и переместите их туда (файлы *.key и * .сертификат). Идем на шаг 8.

<р>7.2. Если у Вас нет SSL-сертификатов, то Вы можете их сгенерировать самостоятельно.

7.2.1. Открываем командную строку в протоколе администратора и переходим в папку bin Apache. Вводим команду:

cd "C:\Program Files\Apache Software Foundation\Apache2.4\bin"

7.2.2. Далее вводим:

openssl req -config openssl.cnf -new -out ssl.csr

Идем по шагам в командной строке и заполняем необходимые поля. То, что вы введете не принципиально. Самое главное на это внимание надо запомнить пароль (когда спросит парольную фразу)

openssl rsa -in privkey.pem -out ssl.key

Спросит пароль, который вы ввели ранее.

openssl x509 -in ssl.csr -out ssl.cert -req -signkey ssl.key -days 3000

дней - это срок действия сертификата в дни.

7.2.5. Ну и наконец:

openssl x509 -in ssl.cert -out ssl.der.crt -outform DER

7.2.6. Создадим папку ssl в C:\Program Files\Apache Software Foundation\Apache2.4\conf и переместим из папки bin файлы ssl.key и ssl.cert (а вообще можно все сразу добраться, что было получено на шагах 7.2.1. - 7.2.5) из C:\Program Files\Apache Software Foundation\Apache2.4\bin в C:\Program Files\Apache Software Foundation\Apache2.4\conf\ssl.


SSLEngine включен
SSLCertificateFile conf/ssl/ssl.cert
SSLCertificateKeyFile conf/ssl/ssl.key

<р>9. Перезапустим Apache. Открываем монитор в правом верхнем углу, щелкнем по иконке и нажимаем на перезагрузку. Если все хорошо, то Apache запустится без ошибок и появится зеленый значок.

Попытка открыть базу 1С в браузере по HTTPS

<р>11. Теперь попробуем запустить 1С. В открытом доступе:

Теперь попробуем открыть конструкцию через тонкий клиент, и если мы использовали самозаписанный сертификат, то тут нас ждет разочарование:

Удаленный узел не прошел проверка

Открываем командную строку и в ней выполняем:

openssl x509 -inform der -in ssl.der.crt -out ssl.pem -text -fingerprint -md5

После выполнения команды на дисплее Вы увидите Fingerprint. Скопируйте его. Это будет строка вида:

Отпечаток пальца MD5=64:5C:11:03:46:F1:22:9A:5B:C3:DD:AA:CC:EE:FF:A3

Откройте файл cacert.pem в папке 1С, добавьте свой сертификат в файл cacert.pem. После строки контрольной суммы сертификата необходимо добавить в файл cacert.pem содержимое файла, в который Вы экспортировали сертификат.

После запуска тонкого клиента будет работать без ошибок.

Если же и после этого есть ошибки, то можно вызвать клиент 1С вообще без проверки сертификата. Для этого необходимо отредактировать информационную базу:

Редактируем информационную базу 1С

Второй шаг

Ну и наконец заветное окно:

Выбираем неподтвержденный сертификат сервера

Пробуем игру и.

Все отлично! Все работает!

Отлично. Вы все построили!

Читайте также: