ОШИБКА ПРОТОКОЛА SSL на поддомене с Apache на сервере Ubuntu 17.04

У меня есть домен, например, я буду использовать test.nl.

Wordpress работает как виртуальный хост в основном домене. Викимедиа работает как виртуальный хост на поддомене: wiki.test.nl

Теперь у меня есть еще один поддомен (vnc.test.nl), который я хочу защитить самозаверяющим сертификатом, чтобы соединение VNC было защищено.

Порты перенаправляются правильно.

Файл виртуального хоста:

<VirtualHost *:80>
   ServerName vnc.test.nl
   Redirect permanent / https://vnc.test.nl/
</VirtualHost>

<IfModule mod_ssl.c>
   <VirtualHost *:443>
       ServerName vnc.test.nl
       DocumentRoot /var/www/vnc.test.nl
       DirectoryIndex index.html index.php index.pl index.cgi
       ErrorLog ${APACHE_LOG_DIR}/error.log
       CustomLog ${APACHE_LOG_DIR}/access.log combined

       SSLEngine on
       SSLCertificateFile /etc/apache2/ssl/server.crt
       SSLCertificateKeyFile /etc/apache2/ssl/server.key

       ProxyPreserveHost On
       ProxyPass / http://10.0.6.4:6080/
       ProxyPassReverse / http://10.0.6.4:6080/
   </VirtualHost>
</IfModule>

Я использовал это руководство о том, как защитить сайт с помощью SSL. https://www.digitalocean.com/community/tutorials/how-to-create-a-ssl-certificate-on-apache-for-ubuntu-14-04

У меня в браузере появляется SLL_PROTOCOL_ERROR. В журнале ошибок apache отмечается следующее:

[Tue Nov 14 13:04:05.476933 2017] [ssl:warn] [pid 2128] AH01906: vnc.test.nl:443:0 server certificate is a CA certificate (BasicConstraints: CA == 
TRUE !?)
[Tue Nov 14 13:04:05.497306 2017] [ssl:warn] [pid 2132] AH01906: vnc.test.nl:443:0 server certificate is a CA certificate (BasicConstraints: CA == 
TRUE !?)
[Tue Nov 14 13:04:05.499219 2017] [mpm_prefork:notice] [pid 2132] AH00163: 
Apache/2.4.25 (Ubuntu) OpenSSL/1.0.2g configured -- resuming normal 
operations
[Tue Nov 14 13:04:05.499241 2017] [core:notice] [pid 2132] AH00094: Command 
line: '/usr/sbin/apache2'

Затем я попробовал CertBot, но единственное, что я получил:

 Server only speaks HTTP, not TLS

Даже когда я удаляю прослушивание порта 80 в файле виртуального хоста.

Как мне исправить ошибка протокола ssl?

0
задан 15 November 2017 в 11:53
1 ответ

Похоже, вы установили не тот файл в качестве сертификата сервера. Вы можете прочитать содержимое сертификата с помощью openssl x509 -in server.crt -text . (Если он не в формате pem , вам придется поиграть с параметром -inform .)

Проверьте свой server.crt и дополнительные файлы, которые вы можете получили от СА. Правый сертификат должен содержать vpn.test.nl как Альтернативное имя субъекта и / или как CN. (В настоящее время сертификаты всегда должны содержать Альтернативное имя субъекта .)

Если вы проверяете правильный файл, должна появиться одна из следующих строк:

    ...
    Subject: CN=vpn.test.nl
    ...
    X509v3 extensions:
        X509v3 Subject Alternative Name: 
            DNS:vpn.test.nl
    ...

PS: Вам следует отредактировать свой вопрос и удалить свой настоящий домен имя ... даже из журналов.

0
ответ дан 5 December 2019 в 07:08

Теги

Похожие вопросы