Question Apache produisant de nombreuses erreurs uniquement liées à SSL même si les données dans le navigateur semblent correctes


J'ai installé un certificat SSL auto-signé pour le site Web que je cours sur localhost. Il semble que les données qui parviennent au navigateur soient complètes et correctes pour les versions SSL et non-SSL, mais je reçois beaucoup d’erreurs de sortie apache qui semblent indiquer le contraire.

Lorsque je clique sur Actualiser, j'ai immédiatement deux ou trois lignes dans le journal.

AH01964: Connection to child 0 established

Les enfants 2, 6, 4, etc. peuvent également apparaître, sans ordre particulier.

Au cours des prochaines secondes, je reçois plusieurs de ces

(70014)End of file found: [client 127.0.0.1:32839] AH01991: SSL input filter read failed.
[client 127.0.0.1:32840] AH01382: Request header read timeout

Je suppose que la multiplicité de ces lignes est due aux scripts, css, etc., car si je vais à "Voir la source" et que je rafraîchit cette fenêtre, je reçois un de ces

AH01964: Connection to child 4 established

...et rien d'autre. Tout cela se produit uniquement pour les connexions https. Le journal pour http est silencieux.

Est quelque chose réellement faux? Je répète, le contenu semble être complètement et correctement servi, ce qui semble contredire le langage "lecture échouée" et "délai d'attente" du journal. Ces erreurs sont-elles simplement du bruit ou dois-je réparer quelque chose?

Si ce ne sont que des bruits inoffensifs, comment puis-je les désactiver?


Voici comment j'ai tout mis en place. (J'ai eu ce processus par morceaux à partir de divers tutoriels sans bien le comprendre.)

Dans / etc / hosts j'ai

127.0.0.1 x.com

J'ai créé un certificat ssl auto-signé via le script suivant

openssl genrsa -des3 -out x.com.key 2048
openssl req -new -key x.com.key -out x.com.csr
cp x.com.key x.com.key.org
openssl rsa -in x.com.key.org -out x.com.key
openssl x509 -req -days 3650 -in x.com.csr -signkey x.com.key -out x.com.crt
chmod 400 x.com.{key,crt,csr}
sudo chown www-data x.com.{key,crt,csr}
sudo mv x.com.{key,crt,csr} /path/to/website/

Au cours de ce processus, je saisis

Common Name (e.g. server FQDN or YOUR name) []:x.com

J'ai à la fois un <VirtualHost x.com:80> et un <VirtualHost x.com:443> mis en place dans sites / enabled / 000-default.conf et la différence entre eux est cette section:

SSLEngine on
SSLCertificateFile /path/to/website/x.com.crt
SSLCertificateKeyFile /path/to/website/x.com.key
SetEnvIf User-Agent ".*MSIE.*" nokeepalive ssl-unclean-shutdown
CustomLog ${APACHE_LOG_DIR}/x.com.ssl.log "%t %h %{SSL_PROTOCOL}x %{SSL_CIPHER}x \"%r\" %b"

Et ils ont ceci en commun:

LogLevel info

6
2018-01-07 22:12


origine




Réponses:


Cette question semble être la même que celui-là, que j'ai évidemment trouvé en diagnostiquant la même chose.

Le problème est dû à la définition d'un attribut basé sur un nom (ou un attribut générique) sur un hôte virtuel au lieu d'une adresse IP. Le problème est que le nom de domaine n'est transmis à un serveur Web qu'une fois la connexion établie. A ce stade, la connexion SSL / TLS doit déjà être active. Le serveur doit donc sélectionner la clé SSL appropriée en fonction des informations minimales disponibles et c'est l'adresse IP de cet hôte virtuel.

Des informations plus détaillées et des exemples de configuration figurent sur le Site Apache, mais au fond, vous voulez changer le <VirtualHost x.com:443> à <VirtualHost 1.2.3.4:443> où cela utilise l'adresse IP de cet hôte / interface.


2
2018-02-09 18:58



Les nouvelles versions d'Apache ont SNI qui autorise plusieurs hôtes virtuels sur la même adresse IP, le caractère générique virtualhost devrait donc fonctionner. Mais hélas, ces messages d’information persistent. - partofthething
Hou la la! Je m'interroge sur celui-ci depuis un moment. Je mets l'adresse IP à la place du joker (*:443) et tout à fait en bas des avertissements. - Alexis Wilke


Comme d’autres l’ont dit, ces messages sont consignés parce que votre LogLevel est réglé sur info. Si vous ne voulez pas ces messages spécifiques, mais voulez quand même info journaux de niveau, vous pouvez le reconfigurer dans votre configuration apache:

LogLevel info ssl:warn


5
2018-04-26 07:49



Erreur: LogLevel prend un argument, niveau de verbosité dans la journalisation des erreurs (apache-2.2.32). Cette option est uniquement disponible pour Apache 2.3 et supérieur. Voir serverfault.com/a/158369/120479 - Will Sheppard
C'est exactement les informations que je cherchais - Merci! - FKEinternet


LogLevel info est probablement la cause, et cela ressemble certainement à un bruit inoffensif.

N'importe quelle raison particulière pour laquelle vous avez besoin de la journalisation définie sur cette journalisation, ou pouvez-vous la recomposer à quelque chose comme notice ou warn?


1
2018-01-07 23:54



Oui, je peux réduire le niveau de journalisation, mais a) je veux quelques messages de niveau information, et b) ils semblent dire que quelque chose ne va pas. Je ne veux pas le brosser sous le tapis. - spraff