- Apache ssl безопасная работа 1с в веб – my-sertif.ru
- How to generate a csr code on apache?
- Install an ssl certificate on apache
- Test your ssl installation
- Where to buy an ssl certificate for apache?
- Включение сертификата на apache
- Добавляем промежуточный сертификат, подтверждающий корректность цепочки
- Создание ключа и ssl-сертификата
- Требования
Apache ssl безопасная работа 1с в веб – my-sertif.ru
Всем привет! С вами Низамов Илья и мы продолжаем изучать интеграцию 1С с web сайтами. Работа 1С в веб невозможна без создания безопасного соединения. В данном уроке мы настроим локальный веб сервер APACHE для работы с SSL. Ознакомится с полным курсом по интеграции вы можете здесь.

Для генерации SSL сертификата нам понадобится выполнить несколько команд. Запустите командную строку и выполните по очереди команды.
cd C:ServerbinApache24bin
set OPENSSL_CONF=C:ServerbinApache24confopenssl.cnf
openssl.exe genpkey -algorithm RSA -pkeyopt rsa_keygen_bits:2048 -out localhost.key
openssl.exe req -new -key localhost.key -out localhost.csr
openssl.exe req -new -key localhost.key -out www.web1s.site.csr
openssl.exe x509 -req -days 365 -in www.web1s.site.csr -signkey localhost.key -out www.web1s.site.crt

В примере мы генерирует SSL для сайта localhost, вы можете указать любой другой.
После выполнения всех команд в папке APACHE появятся несколько файлов. Это секретный ключ и самоподписанный сертификат для сервера localhost.

Создадим в корне нашего локального веб сервера папку certs и переместим в нее 2 файла для настройки apache ssl.

Теперь надо настроить наш apache для работы с ssl. Настройки ниже мы прописываем в наш конфигурационный файл apache.
LoadModule ssl_module modules/mod_ssl.so
Listen 443
<VirtualHost _default_:443>
DocumentRoot "z:/www/"
ServerName localhost:443
ServerAdmin admin@localhost.com
ErrorLog "${SRVROOT}/logs/error-ssl.log"
TransferLog "${SRVROOT}/logs/access-ssl.log"
SSLEngine on
SSLCertificateFile "C:Servercertslocalhost.crt"
SSLCertificateKeyFile "C:Servercertslocalhost.key"
</VirtualHost>

Отключаем apache на 80 порту. Работать он будет только через безопасное соединение на 443 порту.

Перезапустим apache и обратимся к нашему локальному сайту через https соединение. К сожалению браузер не доверяет нам и говорит, что наш сертификат не действителен.

Добавим наш сертификат в доверенные




В принципе для дальнейшей работы с нашим интернет магазином через rest api этого вполне достаточно. Но если вы хотите потом разместить свой проект в интернете и получить действительный SSL сертификат бесплатно на 1 год то читайте далее.
Переходите по ссылке и при покупке вводите промокод 14D2-32A5-0F52-F322, это даст вам небольшую скидку при покупке хостинга.

Подбираем имя домена (сайта).

В дополнение в домену сразу покупаю хостинг.

В личном кабинете заказываю бесплатный ssl сертификат для нашего apache 2.4

Приходит письмо с данными для генерации сертификата

В письме вам должна прийти ссылка на панель администрирования хостинга.

Выбираем наше доменное имя и создаем новую TXT запись, вставляем данные их письма.

Перед установкой ssl сертификата надо перенастроить наш сайт на wordpress.

На время разработки мы будем работать с локальным web сайтом, поэтому в файле hosts надо прописать перенаправление запросов к сайту не в интернет, а на наш локальный веб сервер.

Изменим немного конфиг Apache 2.4. Уберем комментарий подключающий библиотеку ssl.

Прослушивание порта ставим на 443.

Внизу конфига удалим внесенные ранее изменения. И включим виртуальные хосты, уберем комментарий у соответствующей строки.

Переходим к конфигурированию виртуальных хостов.

Указываем параметры нашего локального сайта.

Изменим название папки нашего веб сайта.

В папке с сертификатами создадим еще 2 файла. Один сертификат и ключ. Это просто текстовые файлы в которые мы вставляем данные из письма пришедшего к нам от reg.ru. Сделайте все по аналогии с файлами localhost.

Переходим к нашему сайту и видим, что сертификат теперь действительный.


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

На этом настройка безопасного SSL соединения на нашем web сервере Apache 2.4 завершена. В следующем уроке мы приступаем к настройке плагина интернет магазина woocommerce и отправке товаров из 1С на наш сайт.
How to generate a csr code on apache?
The Certificate Signing Request, or simply CSR, is a small text file containing information about your domain ownership and/or company. Generating the CSR is an integral part of the SSL buying process. All commercial Certificate Authorities require SSL applicants to complete this step. Here’s how you can create your CSR on Apache:
Install an ssl certificate on apache
After the Certificate Authority signs and sends you the SSL Certificate, you can safely install it on your Apache server.
Test your ssl installation
After you install an SSL certificate on Apache, you can use one of these excellent SSL tools to check the status of your installation. The instant scans will discover any potential errors and vulnerabilities that may affect the certificate performance.
Where to buy an ssl certificate for apache?
The best place to get an SSL Certificate for Apache is from SSL Dragon. We offer unbeatable prices and discounts on the entire range of our SSL products. We’ve carefully selected the best SSL brands on the market to equip your website with bulletproof protection. All our SSL certificates are compatible with Apache. Here are the types of SSL certificates we sell:
To help you choose the perfect SSL certificate, we developed two exclusive SSL tools. Our SSL Wizard needs just a couple of seconds to find the best SSL deal for your website. On the other hand, the Advanced Certificate Filter lets you sort and compare various SSL certificates by price, validation, and features.
If you find any inaccuracies, or you have details to add to these SSL installation instructions, please feel free to send us your feedback at [email protected]. Your input would be greatly appreciated! Thank you.
Включение сертификата на apache
Итак, сертификат готов к использованию; теперь нужно настроить веб-сервер Apache для использования нового сертификата SSL. Данный раздел продемонстрирует настройку Apache на сервере Ubuntu. Отредактируйте команды согласно вашему дистрибутиву.
Для начала нужно создать каталог для хранения ключей. Включите модуль SSL веб-сервера и перезапустите Apache:
sudo a2enmod sslsudo service apache2 restartsudo mkdir -p /etc/apache2/ssl
Скопируйте ранее созданные файлы в каталог /etc/apache2/ssl на сервере.
sudo mkdir -p /etc/apache2/sslcp ~/{ca.pem,private.key,sub.class1.server.ca.pem,ssl.crt} /etc/apache2/ssl
Затем выполните:
ls /etc/apache2/ssl
Эта команда вернёт:
ca.pemssl.crtprivate.keysub.class1.server.ca.pem
Теперь откройте конфигурационный файл apache2. При использовании стандартных настроек введите:
nano /etc/apache2/sites-enabled/000-default
Этот файл имеет примерно такой вид:
Добавляем промежуточный сертификат, подтверждающий корректность цепочки
mcedit /etc/apache2/ssl/intermediate.crt
Пример промежуточного сертификата:——BEGIN CERTIFICATE—— MIIEkjCCA3qgAwIBAgIQCgFBQgAAAVOFc2oLheynCDANBgkqhkiG9w0BAQsFADA/ MSQwIgYDVQQKExtEaWdpdGFsIFNpZ25hdHVyZSBUcnVzdCBDby4xFzAVBgNVBAMT DkRTVCBSb290IENBIFgzMB4XDTE2MDMxNzE2NDA0NloXDTIxMDMxNzE2NDA0Nlow SjELMAkGA1UEBhMCVVMxFjAUBgNVBAoTDUxldCdzIEVuY3J5cHQxIzAhBgNVBAMT GkxldCdzIEVuY3J5cHQgQXV0aG9yaXR5IFgzMIIBIjANBgkqhkiG9w0BAQEFAAOC ——END CERTIFICATE——
4. Что того чтобы работа веб-сервера по защищенному соединению необходимо, что был включен модуль apache2 SSL
Просмотреть включен ли модуль можно выполнив следующую команду:
apache2ctl -M | grep ssl
Если вывод не пустой — модуль активирован. Если в выводе ничего нет включаем модуль:
a2enmod ssl
После выполнения команды появляется сообщение «Enabling module ssl».
Создание ключа и ssl-сертификата
Использование самоподписанных сертификатов хоть и защищает от пассивного прослушивания, тем не менее не гарантирует клиентам, что сервер является именно тем сервером, который им нужен. Преймуществом самоподписанных сертификатов является их бесплатность. Сертификат, подписанных компанией-сертификатором (Certificate authority) стоит денег.
Для создания ключа и сертификата вводим команду:
openssl req -new-x509-days30-keyout server.key -out server.pem
На вопрос «Enter PEM pass phrase:» отвечаем паролем, подтверждаем и запоминаем.
На все последующие вопросы отвечаем произвольно, можно просто щелкать по Enter соглашаясь с предложенными вариантами, только на вопрос «Common Name (eg, YOUR name) []:» отвечаем именем сайта, для которого создаем сертификат, например www.example.com.
После ответа на все вопросы в директории должны появиться два новых файла – server.pem и server.crt (ключ и сертификат, соответственно).
Чтобы использовать сгенерированный ключ нужно знать пароль введенный нами, и Apache будет спрашивать его у нас при загрузке, а к чему нам лишние вопросы от демонов? 🙂 Поэтому снимаем пароль с ключа:
cp server.key{,.orig} openssl rsa -in server.key.orig -out server.key rm server.key.orig
Скопируем их в /etc/ssl и назначим файлу ключа права чтения только администратору:
sudocp server.pem /etc/ssl/certs/sudocp server.key /etc/ssl/private/sudochmod 0600 /etc/ssl/private/server.key
Требования
Для выполнения данного руководства необходимы следующие инструменты:
- Браузер Google Chrome
- Веб-сервер Apache, предварительно установленный на виртуальный выделенный сервер
- Доменное имя
- Доступ к одному из почтовых адресов:
postmaster@duable.cohostmaster@duable.cowebmaster@duable.co