«Échec de la lecture du filtre d'entrée SSL» Apache et 443

17

J'ai un petit problème avec ma conf apache. Lorsque je lis le journal des erreurs, voici ce que je peux voir:

[client xxx.xxx.xx.xx] AH01964: Connection to child 1 established (server www.mywebsite.com:443)
[client xxx.xxx.xx.xx] AH01964: Connection to child 6 established (server www.mywebsite.com:443)
[client xxx.xxx.xx.xx] AH01964: Connection to child 10 established (server www.mywebsite.com:443)
[client xxx.xxx.xx.xx] AH01964: Connection to child 15 established (server www.mywebsite.com:443)
[client xxx.xxx.xx.xx] AH01964: Connection to child 18 established (server www.mywebsite.com:443)
(70014)End of file found: [client xxx.xxx.xx.xx] AH01991: SSL input filter read failed.
(70014)End of file found: [client xxx.xxx.xx.xx] AH01991: SSL input filter read failed.
(70014)End of file found: [client xxx.xxx.xx.xx] AH01991: SSL input filter read failed.
(70014)End of file found: [client xxx.xxx.xx.xx] AH01991: SSL input filter read failed.
(70014)End of file found: [client xxx.xxx.xx.xx] AH01991: SSL input filter read failed.

Et parfois, celui-ci:

 (70007)The timeout specified has expired: [client xxx.xxx.xx.xx] AH01991: SSL input filter read failed.

Je ne sais pas vraiment ... donc mon site est en HTTP complet, sauf deux pages en HTTPS. Voici donc mon virtualHost:

<VirtualHost *:80>
    ServerName mywebsite.com
    Redirect permanent / http://www.mywebsite.com/
</VirtualHost>
<VirtualHost *:80>
    ServerName www.mywebsite.com
    ServerAlias img.mywebsite.com
    ServerAdmin xxx
    DocumentRoot /home/mywebsite/www/public
    <Directory /home/mywebsite/www/>
        Options Indexes Multiviews FollowSymlinks
        AllowOverride All
        Require all granted
        ErrorDocument 403 http://www.google.com/
    </Directory>
    <Directory /home/mywebsite/www/public/resource/private/>
        Require all denied
        ErrorDocument 403 http://www.mywebsite.com/
    </Directory>
    <Location "/robots.txt">
            Require all granted
    </Location>

    LogLevel info
    ErrorLog ${APACHE_LOG_DIR}/mywebsite_error.log
    CustomLog ${APACHE_LOG_DIR}/mywebsite_access.log combined
</VirtualHost>
<IfModule mod_ssl.c>
    <VirtualHost *:443>
        ServerName www.mywebsite.com
        DocumentRoot /home/mywebsite/www/public
            <Directory /home/mywebsite/www/>
                Options Indexes FollowSymlinks Multiviews
                AllowOverride all
                Require all granted
            </Directory>
        LogLevel info
        ErrorLog ${APACHE_LOG_DIR}/mywebsite_error.log
        CustomLog ${APACHE_LOG_DIR}/mywebsite_access.log combined

        SSLEngine on
        SSLCertificateFile ./mywebsite.crt
        SSLCertificateKeyFile ./mywebsite.key
        SSLCertificateChainFile ./intermediate.crt
    </VirtualHost>
</IfModule>

Alors, où j'ai fait une erreur? Je ne peux pas le découvrir ... Pouvez-vous m'aider?

merci :)

user3013440
la source
J'ai le même problème dans Apache 2.4.7. Ce n'est pas une question de support SNI. "
Abaisser

Réponses:

10

J'ai lu qu'Apache ne prend pas en charge SSL sur l'hôte virtuel basé sur le nom, uniquement sur les hôtes virtuels basés sur IP. Je l'ai donc changé:

 <VirtualHost *:443>

par:

 <VirtualHost 192.168.1.1:443>

Pour l'instant, cela semble fonctionner, je ne sais pas si c'est la bonne solution, mais je n'ai aucune erreur ...

user3013440
la source
1
En effet, les recommandations Apache et l'exemple de configuration sont ici .
Ben
10
Le même problème dans apache-2.4 n'est pas résolu par cette solution :(
mircealungu
Vous devrez peut-être ajouter plusieurs adresses IP si vous avez plus d'un nom d'hôte que vous essayez de servir via SSL.
quickshiftin
1
Apache est censé prendre en charge SSL sur plusieurs VirtualHosts utilisant la même IP "à l'aide du serveur Web 2.2.12 ou ultérieur, construit avec 0.9.8j ou OpenSSL ultérieur" avec des clients plus récents que IE8 / WinXP. C'est ce qu'on appelle SNI. Il y a une discussion ici . Je le fais fonctionner, mais ces messages de journal embêtants sont partout!
partofthething
Ça ne fonctionne pas pour moi.
QkiZ
2

Une autre exigence est d'ajouter la ligne suivante à la fin de vos blocs de directives de port SSL VirtualHost 443

SetEnv nokeepalive ssl-unclean-shutdown

Comme indiqué ici :

negamips
la source
2
C'est un mauvais conseil. L'ajout nokeepaliveà la configuration de votre serveur pourrait sérieusement dégrader les performances et n'est nécessaire que pour les anciennes versions de MSIE au maximum. Voir blogs.msdn.microsoft.com/ieinternals/2011/03/26/…
Iguananaut
0

pour moi une solution ridiculement simple pour cette erreur comme suit (cette erreur est apparue après l'ajout de fichiers / dossiers en tant que root):

chown www-data: /var/www -R
chmod 755 /var/www -R
Janos Szabo
la source