Установка ssl ubuntu. становка на хостинг.masterhost. Проверяем конфигурацию Apache

TLS или безопасность транспортного уровня - предшественник SSL, отвечает за безопасность на уровне сокетов, по сути это защищённый протокол созданный для того, чтобы обеспечить безопасную передачу обычного сетевого трафика.

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

В этой статье я расскажу как создать самостоятельно подписанный сертификат SSL для Apache на базе Ubuntu 14.04, что позволит вам шифровать поступающий трафик. Хотя такой способ не обеспечивает проверки подлинности сервера, он позволяет пересылать информацию в защищенном режиме.

Требования

Прежде чем начать, требуется выполнить некоторые настройки. Пользователь, под которым мы будем работать должен иметь sudo привелегии. Также нам понадобится установленный Apache. Если вы его ещё не установили, то можете сделать это выполнив следующие команды:

Sudo apt-get update sudo apt-get install apache2

Шаг 1 - Активация модуля SSL

Пакет Apache для Ubuntu 14.04 по-умолчанию поддерживает SSL . Его достаточно просто активировать. Команда для активации модуля:

Sudo a2enmod ssl

После активации SSL следует перезапустить сервер для вступления в силу новых настроек:

Теперь наш веб сервер поддерживает SSL, осталось выполнить некоторые настройки.

Шаг 2 - создание подписанного сертификата SSL

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

Sudo mkdir /etc/apache2/ssl

Теперь создадим здесь ключ и сертификат одной командой:

Sudo openssl req -x509 -nodes -days 365 -newkey rsa:2048 -keyout /etc/apache2/ssl/apache.key -out /etc/apache2/ssl/apache.crt

Давайте подробно разберёмся в параметрах команды:

  • openssl - основной инструмент для создания и управления сертификатами, ключами, запросами на подпись и т.д. для OpenSSL
  • req - этот параметр задаёт запрос на подпись сертификата X.509. X.509 - стандартная структура открытого ключа, которой придерживается SSL для управления ключами и сертификатами. Нам необходим этот параметр так как мы хотим создать новый сертификат.
  • -x509 - этот параметр указывает на то, что мы хотим создать самостоятельно подписанный сертификат.
  • -nodes - указывает на то, что мы не хотим создавать кодовую фразу. При создании кодовой фразы у вас могут возникнуть проблемы при автоматическом запуске Apache, так как каждый раз придется её вводить.
  • -days 365 - срок действия сертификата - один год.
  • -newkey rsa:2048 - этот параметр указывает на одновременное создание приватный ключа и запроса на сертификат. Это необходимо, так как мы не создали приватный ключ заранее. rsa:2048 - создает RSA ключ длиной 2048 бит.
  • -keyout - имя файла создаваемого приватного ключа.
  • -out - имя файла создаваемого сертификата.

После запуска этой команды вам предстоит ответить на несколько вопросов. Наиболее важный из которых - Common Name (e.g. server FQDN or YOUR name)". Здесь следует ввести доменное имя ассоциируемое с сертификатом, или открытый IP адрес при отсутствии доменного имени.

Вопросы выглядят примерно следующим образом:

Country Name (2 letter code) :RU State or Province Name (full name) :Moscow Locality Name (eg, city) :Moscow Organization Name (eg, company) :Your Company Organizational Unit Name (eg, section) :Department of Kittens Common Name (e.g. server FQDN or YOUR name) :your_domain.com Email Address :[email protected]

Ключ и сертификат будут созданы в каталоге /etc/apache2/ssl .

Шаг 3 - Настройка Apache для использования SSL

Теперь у нас есть сертификат и ключ и мы можем настроить Apache для использования этих файлов в файле виртуальных хостов. Вместо использования шаблона 000-default.conf мы воспользуемся шаблоном default-ssl.conf , который уже включает в себя некоторые необходимые настройки.

Откройте этот файл с правами root:

Sudo nano /etc/apache2/sites-available/default-ssl.conf

После удаления комментариев файл выглядит следующим образом:

ServerAdmin webmaster@localhost DocumentRoot /var/www/html ErrorLog ${APACHE_LOG_DIR}/error.log CustomLog ${APACHE_LOG_DIR}/access.log combined SSLEngine on SSLCertificateFile /etc/ssl/certs/ssl-cert-snakeoil.pem SSLCertificateKeyFile /etc/ssl/private/ssl-cert-snakeoil.key SSLOptions +StdEnvVars SSLOptions +StdEnvVars

Выглядит довольно сложно, но нам и не надо глубоко вникать в структуру этого файла. Для начала укажем обычные параметры, которые мы задаем при создании виртуального хоста (ServerAdmin, ServerName, ServerAlias, DocumentRoot и т.д.) и укажем место хранения SSL сертификатов. В итоге файл настройки должен выглядеть примерно следующим образом:

ServerAdmin [email protected] ServerName your_domain.com ServerAlias www.your_domain.com DocumentRoot /var/www/html ErrorLog ${APACHE_LOG_DIR}/error.log CustomLog ${APACHE_LOG_DIR}/access.log combined SSLEngine on SSLCertificateFile /etc/apache2/ssl/apache.crt SSLCertificateKeyFile /etc/apache2/ssl/apache.key SSLOptions +StdEnvVars SSLOptions +StdEnvVars BrowserMatch "MSIE " \ nokeepalive ssl-unclean-shutdown \ downgrade-1.0 force-response-1.0 BrowserMatch "MSIE " ssl-unclean-shutdown

Сохраните и закройте файл после исправления.

Шаг 4 - активация виртуального хоста с SSL

Теперь настало время включить наш виртуальный хост. Выполняем команду:

Sudo a2ensite default-ssl.conf

Перезапускаем Apache:

Sudo service apache2 restart

Теперь виртуальный хост, который будет служить для безопасной передачи данных, должен запуститься.

Шаг 5 - проверка

Итак, мы выполнили предварительную настройку, настало время проверить её. Заходим на наш сервер через протокол https://

Https://you_domain.com

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

Итак, нажимаем “Proceed anyway” (продолжить). Вы будете перенаправлены в корневой каталог вашего домена. Теперь ваш трафик зашифрован. Вы можете убедиться в этом увидев значок замка на панели меню.

Заключение

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

Если вы собираетесь запускать проект с использованием SSL, следует задуматься над приобретением SSL сертификата от удостоверяющего центра.

Для выполнения данного руководства необходимы следующие инструменты:

  1. Браузер Google Chrome
  2. Веб-сервер Apache, предварительно установленный на виртуальный выделенный сервер
  3. Доменное имя
  4. Доступ к одному из почтовых адресов:

[email protected]
[email protected]
[email protected]

StartSSL.com предлагает вашему сайту абсолютно бесплатный заверенный SSL-сертификат (т.е., посещая ваш сайт, пользователи больше не увидят отпугивающий красный экран с сообщением «this site isn’t trusted»). Это отличная возможность сэкономить на покупке заверенного сертификата.

Для начала откройте сайт StartSSL.com и при помощи панели инструментов перейдите StartSSL Products →StartSSL™ Free. В верхней части страницы выберите Control Panel.

Примечание : Для выполнения руководства нужно использовать Google Chrome.

Выберите опцию Express Signup.

Укажите свои личные данные и нажмите кнопку continue. Вы получите электронное письмо с проверочным кодом. Скопируйте и вставьте в форму на странице StartSSL.

Ваш запрос на сертификат будет рассмотрен, после чего вы получите сообщение с новой информацией. Наберитесь терпения: этот процесс может занять около 6 часов.

На данном этапе нужно создать закрытый ключ; существует 2 уровня сложности этого ключа: High и Medium. Выберите High.

Когда ключ будет готов, нажмите Install.

Chrome выведет всплывающее окно, сообщающее, что сертификат был успешно установлен.

Итак, теперь браузер авторизован при помощи нового сертификата, а это значит, что теперь вы имеете доступ к StartSSL AUTHENTICATION AREAS. На данном этапе нужно корректно отформатировать созданный сертификат, чтобы VPS мог использовать его. Нажмите на ссылку Control panel и выберите опцию Authenticate. Chrome выведет всплывающее окно, спрашивая, нужно ли пройти авторизацию, и покажет только что установленный сертификат. Войдите в панель управления при помощи этого сертификата.

Также нужно подтвердить доменное имя, так как без этого невозможно установить сертификат. В панели управления выберите Validations Wizard, а затем Type to Domain Name Validation. При этом будет запрошен адрес электронной почты, привязанный к этому домену (он выглядит примерно так: [email protected]).

Проверьте указанный почтовый ящик. Вы должны получить еще одно проверочное письмо; как и ранее, скопируйте и вставьте код в форму на веб-сайте StartSSL.

Откройте вкладку Certificates Wizard и выберите Web Server SSL/TLS Certificate. Нажмите Continue и введите пароль, оставив остальные поля как есть.

На экране появится текстовое поле, которое содержит закрытый ключ. Скопируйте и вставьте его в текстовом редакторе, а затем сохраните его в файл с именем ssl.key.

Нажмите Continue, после чего браузер спросит, для какого домена нужно создать сертификат.

Укажите свой домен и переходите к следующему разделу.

При этом будет запрошен субдомен, к которому будет привязан сертификат. В большинстве случаев используется www; чтобы использовать другой поддомен, просто введите его в это поле вместо www.

StartSSL предоставит вам новый сертификат в текстовом поле, как это было с закрытым ключом.

Снова скопируйте и вставьте полученные данные в текстовый редактор и сохраните файл как ssl.crt.

Щёлкните в окне Save Certificate правой кнопкой и сохраните данные в два файла:

  • StartCom Root CA (PEM Encoded) (сохраните в ca.pem)
  • Class 1 Intermediate Server CA (сохраните в sub.class1.server.ca.pem).

В целях безопасности StartSSL шифрует закрытый ключ (файл ssl.key); но серверу необходима его незашифрованная версия. Чтобы расшифровать его в файл private.key, скопируйте его на сервер и используйте следующую команду:

openssl rsa -in ssl.key -out private.key

OpenSSL запросит пароль; введите пароль, который вы использовали на сайте StartSSL.

Итак, на данный момент у вас 5 файлов; проверьте, все ли они на месте:

  • ca.pem: Root-сертификат StartSSL;
  • private.key: незашифрованная версия закрытого ключа (этот файл нужно тщательно хранить от посторонних);
  • sub.class1.server.ca.pem: промежуточный сертификат StartSSL;
  • ssl.key: зашифрованная версия закрытого ключа;
  • ssl.crt: новый сертификат.

Файл ssl.key можно оставить. Остальные файлы нужно скопировать на сервер, если вы не сделали этого ранее:

scp {ca.pem,private.key,sub.class1.server.ca.pem,ssl.crt} YOURSERVER:~

Включение сертификата на Apache

Итак, сертификат готов к использованию; теперь нужно настроить веб-сервер Apache для использования нового сертификата SSL. Данный раздел продемонстрирует настройку Apache на сервере Ubuntu. Отредактируйте команды согласно вашему дистрибутиву.

Для начала нужно создать каталог для хранения ключей. Включите модуль SSL веб-сервера и перезапустите Apache:

sudo a2enmod ssl
sudo service apache2 restart
sudo mkdir -p /etc/apache2/ssl

Скопируйте ранее созданные файлы в каталог /etc/apache2/ssl на сервере.

s udo mkdir -p /etc/apache2/ssl
cp ~/{ca.pem,private.key,sub.class1.server.ca.pem,ssl.crt} /etc/apache2/ssl

Затем выполните:

ls /etc/apache2/ssl

Эта команда вернёт:

ca.pem
ssl.crt
private.key
sub.class1.server.ca.pem

Теперь откройте конфигурационный файл apache2. При использовании стандартных настроек введите:

nano /etc/apache2/sites-enabled/000-default

Этот файл имеет примерно такой вид:



DocumentRoot /var/www

Options FollowSymLinks
AllowOverride None



AllowOverride None
Order allow,deny
allow from all



AllowOverride None

Order allow,deny
Allow from all



# alert, emerg.
LogLevel warn




AllowOverride None
Order deny,allow
Deny from all


Скопируйте этот скрипт и внесите его под уже существующим кодом, а затем измените верхнюю строчку:

таким образом:


SSLEngine on
SSLProtocol all -SSLv2



В результате должно получиться:


ServerAdmin webmaster@localhost
DocumentRoot /var/www

Options FollowSymLinks
AllowOverride None


Options Indexes FollowSymLinks MultiViews
AllowOverride None
Order allow,deny
allow from all

ScriptAlias /cgi-bin/ /usr/lib/cgi-bin/

AllowOverride None
Options +ExecCGI -MultiViews +SymLinksIfOwnerMatch
Order allow,deny
Allow from all

ErrorLog ${APACHE_LOG_DIR}/error.log
# Possible values include: debug, info, notice, warn, error, crit,
# alert, emerg.
LogLevel warn
CustomLog ${APACHE_LOG_DIR}/access.log combined
Alias /doc/ "/usr/share/doc/"

Options Indexes MultiViews FollowSymLinks
AllowOverride None
Order deny,allow
Deny from all
Allow from 127.0.0.0/255.0.0.0::1/128



SSLEngine on
SSLProtocol all -SSLv2
SSLCipherSuite ALL:!ADH:!EXPORT:!SSLv2:RC4+RSA:+HIGH:+MEDIUM
SSLCertificateFile /etc/apache2/ssl/ssl.crt
SSLCertificateKeyFile /etc/apache2/ssl/private.key
SSLCertificateChainFile /etc/apache2/ssl/sub.class1.server.ca.pem
ServerAdmin webmaster@localhost
DocumentRoot /var/www

Options FollowSymLinks
AllowOverride None


Options Indexes FollowSymLinks MultiViews
AllowOverride None
Order allow,deny
allow from all

ScriptAlias /cgi-bin/ /usr/lib/cgi-bin/

AllowOverride None
Options +ExecCGI -MultiViews +SymLinksIfOwnerMatch
Order allow,deny
Allow from all

ErrorLog ${APACHE_LOG_DIR}/error.log
# Possible values include: debug, info, notice, warn, error, crit,
# alert, emerg.
LogLevel warn
CustomLog ${APACHE_LOG_DIR}/access.log combined
Alias /doc/ "/usr/share/doc/"

Options Indexes MultiViews FollowSymLinks
AllowOverride None
Order deny,allow
Deny from all
Allow from 127.0.0.0/255.0.0.0::1/128

Итак, вы приобрели SSL-сертификат для вашего домена. В процессе заказа вы должны были выбрать авторизационный email, расположенный на вашем домене: admin, administrator, hostmaster, postmaster, webmaster. На выбранный вами авторизационный email придет письмо содержащее ссылку, пройдя по которой, вы подтвердите ваши административные права домена. После этого на ваш контактный электронный почтовый ящик аккаунта поступит несколько писем.

Имеются следующие файлы:

Приватный ключ (для удобства сохраните его в виде простого текстового файла с именем ваш_домен.key)

Файл сертификата для вашего домена, ваш_домен.crt

Два файла цепочки сертификатов PositiveSSLCA2.crt и AddTrustExternalCARoot.crt

В этом руководстве пошагово описаны способы привязки SSL-сертификата к сайту для организации безопасного шифрованного соединения между веб-сервером и браузером клиента.

Обратите внимание, если письмо, содержащее приватный ключ, к вам не поступило, то в первую очередь проверьте, пожалуйста, каталог "Спам" в вашем почтовом ящике. В том случае, если в указанном каталоге письмо не обнаружено, напишите, пожалуйста, письмо с контактного электронного почтового ящика аккаунта на

Установка сертификата средствами ISPmanager


1. Войдите в ISPmanager под учетной записью "root". (Если вы заказали VPS сервер на тарифе с администрированием нашими специалистами, то данный шаг необходимо пропустить)

Войдите в меню "Учетные записи" → "Пользователи", выберите пользователя-владельца сайта, к которому требуется привязать SSL-сертификат, и нажмите кнопку "Изменить".


В появившемся установите галочку "Может использовать SSL", если она еще не установлена.


Сохраните изменения кнопкой "Ok".

Дальнейшие действия мы будем выполнять от имени созданного пользователя-владельца сайтов. Снова выберите вашего пользователя-владельца сайта и нажмите кнопку "Войти" в правом верхнем углу, ISPmanager автоматически понизит ваши привилегии до его уровня.


2. Перейдите в раздел "WWW" → "WWW-домены". В списке отображаются все добавленные в конфигурационные файлы веб-сервера домены, в колонке "Параметры" иконками отображается наличие или отсутствие тех или иных модулей веб-сервера, которые участвуют в обработке запросов к сайту. Необходимо подключить модуль для работы с SSL для сайта, для этого выберите домен и нажмите кнопку "Изменить" сверху.


Откроется новая вкладка, в которой нужно установить галочку "Защищённое соединение (SSL)" и "Перенаправлять HTTP-запросы в HTTPS" и сохранить изменения кнопкой "Ok". Обратите внимание, желательно чтобы этот домен был единственным доменом с SSL на этом IP-адресе.


3. Теперь перейдем в раздел "WWW" → "SSL сертификаты", здесь показаны все имеющиеся на сервере сертификаты безопасности, отсюда мы добавим наш. Обратите внимание на наличие самоподписанного сертификата для вашего домена - он был сгенерирован ISPmanager-ом автоматически на предыдущем шаге, в момент когда вы установили галочку "SSL" в настройках WWW-домена. Этот сертификат использоваться не будет, мы добавим наш, сделать это можно кнопкой "Создать" сверху.


На первом шаге выберете тип сертификата "существующий".


На втором шаге вам необходимо будет ввести имя сертификата, сам сертификат, приватный ключ сертификата и подтверждающую цепочку. Откройте в "Блокноте" все имеющиеся у вас файлы: приватный ключ, который мы сохранили в файл ваш_домен.key, файл сертификата ваш_домен.crt и другие два. В форму ввода "SSL-сертификат" скопируйте содержимое файла ваш_домен.crt; в форму "Ключ SSL-сертификата" скопируйте текст из файла ваш_домен.key. В форму "Цепочка SSL-сертификатов" последовательно скопируйте содержимое файлов PositiveSSLCA2.crt и AddTrustExternalCARoot.crt, именно в этом порядке. Нажмите кнопку "Завершить" для сохранения введенных данных.


В открывшемся окне в поле "SSL-сертификат" выберете добавленный вами в предыдущем шаге сертификат и подтвердите изменения кнопкой "Ok".


5. Перейдите на ваш сайт, для работы по шифрованному соединению в адресной строке браузера впишите адрес наподобие "https://ваш_домен.ru/". Аббревиатура "https" означает работу по шифрованному протоколу HTTP, что нам и требуется. Если все сделано правильно, браузер не будет выдавать никаких предупреждений или сообщений о потенциальных угрозах, а сразу отобразит сайт. В адресной строке при этом тем или иным способом будет обозначен факт того, что передаваемые данные шифруются и сертификат подтвержден.


Настройка закончена. Следует, однако, иметь в виду, что при каких-либо изменениях в ПО веб-сервера (его переконфигурирование, смена IP-адреса домена, установка nginx перед Apache например) эта схема работы может нарушиться. В этом случае возможно придется внести соответствующие коррективы в конфигурационные файлы веб-сервера вручную.
Если у вас возникнут какие-либо вопросы при добавлении сертификата к вашему сайту - техническая поддержка всегда будет рада помочь вам, напишите пожалуйста письмо на адрес support@сайт с контактного e-mail вашего сервера.

Установка сертификата утилитами из консоли: CentOS, Apache 2

Если на вашем сервере установлен и используется проксирующий веб-сервер nginx, вам следует организовать работу с сертификатами с его помощью. Инструкция по настройке nginx ниже, отдельным пунктом.

1. Поместите все 4 файла (приватный ключ, сохраненный в файле ваш_домен.key , и файлы сертификатов ваш_домен.crt , PositiveSSLCA2.crt и AddTrustExternalCARoot.crt


# cat /var/www/httpd-cert/PositiveSSLCA2.crt /var/www/httpd-cert/AddTrustExternalCARoot.crt > -bundle

# openssl verify /var/www/httpd-cert/ваш_домен.crt-bundle


5. В конфигурационном файле Apache 2 (наиболее вероятно - /etc/httpd/conf/httpd.conf) создайте новый VirtualHost на 443м порту. Ниже приведены только директивы, отвечающие за работу с сертификатом, остальные можно скопировать по аналогии из имеющегося для 80-го порта:

SSLEngine on
SetEnvIf User-Agent ".*MSIE.*" nokeepalive ssl-unclean-shutdown downgrade-1.0 force-response-1.0
SSLCertificateFile /var/www/httpd-cert/ваш_домен.crt
SSLCertificateKeyFile /var/www/httpd-cert/ваш_домен.key
SSLCACertificateFile /var/www/httpd-cert/ваш_домен.crt-bundle
ServerName ваш_домен
...

6. Проверьте корректность синтаксиса конфигурационного файла:
# /etc/init.d/httpd configtest
Syntax OK
Перезапустите Apache и проверьте работу сайта с https://, если все сделано правильно - в адресной строке при этом тем или иным способом будет обозначен факт того, что передаваемые данные шифруются и сертификат подтвержден.

Установка сертификата утилитами из консоли: CentOS, nginx

1. Поместите все 4 файла (приватный ключ, сохраненный в файле ваш_домен.key, и файлы сертификатов ваш_домен.crt , PositiveSSLCA2.crt и AddTrustExternalCARoot.crt ) в директорию /var/www/httpd-cert/.

2. Установите владельца и группу всех файлов в root:
# chown root:root /var/www/httpd-cert/ваш_домен.key /var/www/httpd-cert/ваш_домен.crt /var/www/httpd-cert/PositiveSSLCA2.crt /var/www/httpd-cert/AddTrustExternalCARoot.crt

3. Установите права на файл ключа "только для владельца, только для чтения":
# chmod 400 /var/www/httpd-cert/ваш_домен.key

4. Создайте файл цепочки сертификатов:
# cat /var/www/httpd-cert/AddTrustExternalCARoot.crt >> /var/www/httpd-cert/ваш_домен.crt
# cat /var/www/httpd-cert/PositiveSSLCA2.crt >> /var/www/httpd-cert/ваш_домен.crt
Проверить подлинность цепочки сертификата можно так:
# openssl verify /var/www/httpd-cert/ваш_домен.crt
/var/www/httpd-cert/ваш_домен.bundle: OK
Посмотреть информацию об сертификате - например так:
# openssl x509 -text -in ваш_домен.crt

5. Внесите в конфигурационный файл nginx, в модуль server, следующие директивы:
server {

Ssl on;
ssl_certificate /var/www/httpd-cert/ваш_домен.crt;
ssl_certificate_key /var/www/httpd-cert/ваш_домен.key;

Server_name your.domain.com;
...
}
Обратите внимание, что это должен быть первый, и желательно единственный VirtualHost на этом IP-адресе на 443 порту.

6. Перезапустите nginx командой
# /etc/init.d/nginx restart
и проверьте работу сайта с https://, если все сделано правильно - в адресной строке при этом тем или иным способом будет обозначен факт того, что передаваемые данные шифруются и сертификат подтвержден.

В этом посте пойдёт речь как установить SSL сертификат на свой веб сервер через isp manager и напрямую через apache2 или nginx . Так же в этом посте будет рассмотрен способ и сайт для генерации бесплатного SSL сертификата длительностью на 1 ГОД! Подробности под катом.
Как установить SSL сертификат
SSL сертификаты обеспечивают защиту от прослушивания информации между клиентом и сервером в Интернете.

Устанавливая SSL сертификат на ваш сайт, вы поднимете продажи вашего сайта и обезопасите ваших клиентов.

Для установки SSL Сертификата необходимо:

  1. купить отдельный айпи адрес для вашего сайта.
    2. получить SSL Сертификат
  2. сохранить закрытый ключ при генереации SSL Сертификата, начинается с (--BEGIN RSA PRIVATE KEY--)

Установка SSL Сертификата - ISPMANAGER

  1. в настройках домена добавьте доступ по протоколу SSL порт 443
  2. в меню SSL Сертификаты создать существующий сертификат
  3. в поле "Ключ"; необходимо добавить скопированный защитный ключ начинается с BEGIN RSA
  4. с поле "Сертификат"; необходимо добавить сертификат который пришел на email начинается с --BEGIN CERTIFICATE--
  5. в поле "Цепочка сертификатов"; необходимо добавить цепочку сертификатов обычно называется файл bundle, но может и не быть. Зависит от конкретной ситуации

Установка SSL Сертификата - APACHE 2

  1. выделите для домена отдельный ip адрес
  2. скомпилируйте apache с поддержкой ssl
  3. добавить в apache конфиг в разделе server virtualhost с портом 443:
NameVirtualHost ваш ip:443 ServerName ваш ip:443 ServerAlias www.вашдомен.com:443 SSLEngine on SSLCertificateFile /путь/cert.crt SSLCertificateKeyFile /путь/cert.key SSLCACertificateFile /путь/cert.bundle
  1. в файл cert.crt необходимо добавить сертификат который пришел на почту начинается с --BEGIN CERTIFICATE--
  2. в файл cert.bundle необходимо добавить цепочку сертификатов обычно называется файл bundle

Установка SSL Сертификата - NGINX

  1. выделите для домена отдельный ip адрес
  2. скомпилируйте nginx с поддержкой ssl ./configure -with-http_ssl_module
  3. добавить в nginx конфиг в разделе server следующие строки:
listen 443 default ssl; ssl_certificate /путь/ssl/cert.pem; ssl_certificate_key /путь/ssl/cert.key; ssl_client_certificate /home/ssl/cert.pem; ssl_verify_client off; ssl_ciphers ECDHE-RSA-AES256-SHA:AES256-SHA:CAMELLIA256-SHA:DES-CBC3-SHA; ssl_prefer_server_ciphers on; ssl_protocols TLSv1; ssl_session_cache shared:SSL:10m; ssl_session_timeout 5m;
  1. в файл cert.key необходимо добавить скопированный защитный ключ начинается с BEGIN RSA
  2. в файл cert.pem необходимо добавить сертификат который пришел на почту начинается с --BEGIN CERTIFICATE-- и добавить цепочку сертификатов обычно называется файл bundle

Это то что касается именно установки сертификата. Но вы спросите где его взять? Рассказываю как я получил сертификат сроком на 1 год для 1 домена бесплатно, причём этот сертификат считается доверенным, т.к. официальным и браузеры его принимают на ура!

Для начала перейдём на сайт https://www.startssl.com/ и там регистрируемся, для начала нажмём на фри сертификат, введём свои данные (имя фамилия, адрес проживания, телефон, почта).

На эту почту вам придёт код активации, вы его вводите, потом вводите домен, для которого хотите получить сертификат. Указываете почту администратора (создайте на вашем сервере почту с адресом из предложенных на их сайте, я создал у себя webmaster).

На эту почту вам придёт код, который нужно ввести в следующую форму, это необходимо чтоб подтвердить административный доступ к своему серверу.

После этого вы получите 2 файла, crt и key. Для того чтобы установить ключи на свой сервер через isp manager зайдите в раздел tools на сайте старт ссл, там выберите раскодирование файла ключа, откройте файл формата key в блокноте, скопируйте его содержимое и вставьте в большое поле, ниже введите пароль от этого ключа, который вы указали на этапе его формирования. на выходе вы получите раскодированный текст. Используйте его в качестве рса ключа в isp manager, там же введите пароль к этому ключу, который вы уже указывали ранее.

Перезапустите сервер на всякий случай и попробуйте открыть в браузере https адрес вашего сайта. Если у вас не будет ошибок сертификата - значит всё супер 🙂

Настройка HTTPS на Apache и установка SSL необходима, чтобы обеспечить защиту данных пользователей на вашем веб-сайте..

Активный SSL-сертификат

Перед установкой SSL-сертификата от сайт перейдите к и убедитесь, что услуга SSL-сертификата активна:

Процесс установки SSL

После выпуска SSL на ваш контактный e-mail придёт письмо с данными для его установки, это:

  • сам сертификат;
  • корневой сертификат;
  • промежуточный сертификат.

Приватный ключ обычно генерируется при заказе SSL и сохраняется на ваш локальный ПК.

Установка на Ubuntu/Debian

Перед установкой SSL на Ubuntu/Debian необходимо включить модуль mod_ssl с помощью команды: a2enmod ssl .

Чтобы установить SSL:


На этом настройка SSL-сертификата на Apache закончена. Далее необходимо настроить переадресацию для вашего сайта.

Настройка HTTPS на Apache

После установки SSL необходимо настроить редирект с протокола HTTP на HTTPS. Редирект для Apache настраивается через файл.htaccess.

Чтобы осуществить переадресацию добавьте в конце файла.htaccess следующие строки:

RewriteEngine On RewriteCond %{SERVER_PORT} !^443$ RewriteRule .* https://%{SERVER_NAME}%{REQUEST_URI}

Проверка установленного SSL

Вы можете проверить корректность установки SSL-сертификата по инструкции:

Если у вас возникли сложности с установкой SSL-сертификата, вы можете написать заявку в службу поддержки, и наши специалисты вам помогут.



Просмотров