Ситуация:
Я приобрел мультидомен в namecheap / Comodo (он включает 3 домена: основной домен, например: maindomain.com
, и два других домена: sitea.com
и siteb.com
).
Пока я хотел бы посмотреть, удастся ли правильно настроить сертификат для основного сайта только сначала.
После прочтения различных руководств в Интернете, я считаю, что список файлов, которые, возможно, потребуется отредактировать, чтобы успешно использовать сертификат SSL на 3 веб-сайтах, следующий:
/etc/apache2/sites-available/maindomain.com.conf
/etc/apache2/apache2.conf
/etc/apache2/ports.conf
Список файлов для сертификата, которые были загружены:
115155984.ca-bundle
115155984.crt
(обратите внимание, что файл 115155984.ca-bundle не имеет расширения)
Прямо сейчас похоже на сайте maindomain.com
похоже, указывает на IP-адрес сервера (155.133.130.203). Не знаю почему. Я разместил ниже содержание maindomain.com.conf
файл, который находится в sites-available
каталог. Есть несколько моментов, которые могут помешать правильной реализации сертификата.
У меня следующие вопросы:
Файл /etc/apache2/sites-available/maindomain.com.conf
Вот содержимое файла maindomain.com.conf внутри каталога sites-available:
<VirtualHost *:80>
# The ServerName directive sets the request scheme, hostname and port that
# the server uses to identify itself. This is used when creating
# redirection URLs. In the context of virtual hosts, the ServerName
# specifies what hostname must appear in the request's Host: header to
# match this virtual host. For the default virtual host (this file) this
# value is not decisive as it is used as a last resort host regardless.
# However, you must set it for any further virtual host explicitly.
#ServerName www.example.com
ServerAdmin webmaster@localhost
DocumentRoot /var/www/html
# Available loglevels: trace8, ..., trace1, debug, info, notice, warn,
# error, crit, alert, emerg.
# It is also possible to configure the loglevel for particular
# modules, e.g.
#LogLevel info ssl:warn
ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined
# For most configuration files from conf-available/, which are
# enabled or disabled at a global level, it is possible to
# include a line for only one particular virtual host. For example the
# following line enables the CGI configuration for this host only
# after it has been globally disabled with "a2disconf".
#Include conf-available/serve-cgi-bin.conf
</VirtualHost>
# vim: syntax=apache ts=4 sw=4 sts=4 sr noet
<IfModule mod_ssl.c>
<VirtualHost 155.133.130.203:443>
ServerAdmin admin@maindomain.com
ServerName maindomain.com
ServerAlias www.maindomain.com
DocumentRoot /var/www/html/maindomain.com/
ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined
SSLEngine on
SSLCertificateFile /etc/ssl/certs/115155984.crt
SSLCertificateKeyFile /etc/ssl/private/maindomain.key
SSLCACertificateFile /etc/ssl/certs/115155984.ca-bundle.crt
SSLVerifyClient None
<Directory />
Options FollowSymLinks
AllowOverride None
</Directory>
<Directory /var/www/html/maindomain.com/>
Options Indexes FollowSymLinks MultiViews
AllowOverride All
Order allow,deny
allow from all
</Directory>
</VirtualHost>
</IfModule>
Ненужная информация в файле / etc / host
Это содержимое моего хост-файла, который находится в / etc /. Мне пришлось попробовать несколько разных вещей, прежде чем PHPMailer сможет отправлять электронные письма с сайтов., поэтому, скорее всего, много ненужного линий.
127.0.0.1 localhost
::1 localhost ip6-localhost ip6-loopback
ff02::1 ip6-allnodes
ff02::2 ip6-allrouters
155.133.130.203 servername01.maindomain.com
155.133.130.203 servername01.maindomain.com server01.sitea.com
127.0.0.1 server01 server01.sitea.com sitea.com
127.0.0.1 server01 server01.maindomain.com maindomain.com
155.133.130.203 test.maindomain.com
155.133.130.203 maindomain.com
155.133.130.203 sitea.com
1) у меня был файл ca-bundle без расширения crt: нужно ли вручную добавлять расширение crt?
Расширения файлов не имеют значения, если вы не Microsoft. Для Apache расширение файла - это просто часть более длинного имени файла с точкой в нем;
2) Я не получил никакого pem-файла с загруженными мною файлами: будет ли файл PEM сгенерирован в какой-то момент?
Посмотрите содержимое полученных вами файлов (с cat
или less
) - если они начинаются с -----BEGIN CERTIFICATE-----
(или аналогичные) они PEM. Если это двоичные файлы, они не PEM. Вы можете конвертировать в PEM с помощью openssl x509 -inform DER -in <file_in_der_format> -out <filename_for_pem_file>
;
3) мой файл / etc / hosts правильный? Я добавил несколько строк, чтобы убедиться, что хотя бы одна сработает. Я уверен, что там много лишних строк. Я разместил это ниже.
Это сработает, хотя вы кое-что продублировали. Поместите IP-адрес один раз в одну строку, за которым следуют все имена, которые должны разрешаться в этот IP-адрес;
4) мой файл сертификата не называется maindomain.com.crt, а имеет случайный номер, имеет ли это значение?
Нет, это не так. Вам нужно будет настроить Apache для поиска ваших сертификатов и закрытого ключа. Пока записи в файле conf соответствуют именам файлов и пути, он будет работать;
5) мой ключевой файл, который был сгенерирован ранее в процессе, не имеет расширения домена .com, он называется так: maindomain.key Если я помню, он был сгенерирован одновременно с файлом csr ранее (сделал этот шаг некоторое время назад)
См. Ответ на пункт 4) выше.