Необходимо в apache настроить _default_ хост на отдачу 404 страницы для всех запросов для http и https соединений.
Создание самоподписного ssl-сертификата
Сертификат будем генерировать сразу в каталоге /etc/apache2/ssl/
openssl req -new -x509 -days 365 -keyout server.key -out server.pem
где -days 365
— скок действия сертификата в днях
На вопрос «Enter PEM pass phrase:» отвечаем паролем, подтверждаем и запоминаем. На все последующие вопросы отвечаем произвольно, можно просто щелкать по Enter.
На вопрос «Common Name (eg, YOUR name) []:» отвечаем именем сайта, для которого создаем сертификат, например www.example.com.
После ответа на все вопросы в директории должны появиться два новых файла — server.pem и server.crt (ключ и сертификат, соответственно).
Снимаем пароль с ключа:
cp server.key{,.orig} openssl rsa -in server.key.orig -out server.key rm server.key.orig chmod 0600 server.key
Правка VirtualHost
В файл 000-default.conf
вставляем
<VirtualHost _default_:80> ServerName default ServerAdmin webmaster@localhost DocumentRoot /var/www/html ErrorLog ${APACHE_LOG_DIR}/error.log CustomLog ${APACHE_LOG_DIR}/access.log vhost_combined Redirect 404 / </VirtualHost> <VirtualHost _default_:443> ServerName default ServerAdmin webmaster@localhost DocumentRoot /var/www/html ErrorLog ${APACHE_LOG_DIR}/error.log CustomLog ${APACHE_LOG_DIR}/access.log vhost_combined SSLEngine on SSLProtocol all -SSLv2 SSLCertificateFile /etc/apache2/ssl/server.pem SSLCertificateKeyFile /etc/apache2/ssl/server.key Protocols h2 h2c http/1.1 Redirect 404 / </VirtualHost>
apachectl configtest service apache2 restart
Просмотреть VirtualHost конфигурацию
apachectl -S
и убеждаемся, что в 000-default.conf
смотрит только default хост