Puncte:0

Reînnoirea certificatului LetsEncrypt oprește funcționarea site-ului web bazat pe Apache

drapel us

Am primit recent un e-mail de la LetsEncrypt în care îmi spunea că certificatul meu de site este pe cale să expire - am configurat site-ul web să utilizeze numai HTTPS. Certificatele s-au reînnoit automat fără probleme până acum. Am actualizat bibliotecile OpenSSL pe Ubuntu 18.04 pentru a utiliza cel mai recent TLS, versiunea 1.3. Totul părea să funcționeze bine, dar accesarea site-ului meu web folosind un browser web Firefox care rulează pe Windows 7 a afișat următorul mesaj:

SSL_ERROR_RX_RECORD_TOO_LONG

și fișierul „access.log” al lui Apache de pe server are următoarele atunci când site-ul este accesat:-

"\x16\x03\x01\x02" 400 499 "-" "-"

Ceea ce arată ca o strângere de mână TLS și 400 ar putea fi o cerere proastă.

Ceva, undeva, nu este configurat corect. Cum aflu care este problema?

EDITAȚI | ×

După ce am căutat o soluție, am descoperit că dacă tastez:-

dfsoftware.ddns.net

în bara de adrese a browserului primesc o eroare (pe Firefox, SSL_ERROR...), dar dacă tast:-

http://dfsoftware.ddns.net:443

pagina se incarca corect. Așadar, se pare că apache are probleme cu gestionarea unei conexiuni securizate pe portul 443 și acceptă numai cereri vanilla pe acel port. Fișierele de configurare arată OK (le pot încărca dacă trebuie să vedeți) deci ce se întâmplă?

EDITARE 2

Iată fișierele de configurare Apache care cred că sunt relevante, dacă sunt necesare altele, întrebați.

apache2.conf:-

ServerName dfsoftware.ddns.net
DefaultRuntimeDir ${APACHE_RUN_DIR}
PidFile ${APACHE_PID_FILE}
Timeout 300
Keep Alive On
MaxKeepAliveRequests 100
KeepAliveTimeout 5
Utilizator ${APACHE_RUN_USER}
Grup ${APACHE_RUN_GROUP}
Căutarea numelui gazdei este dezactivată
ErrorLog ${APACHE_LOG_DIR}/error.log
Avertizare LogLevel
IncludeOptional mods-enabled/*.load
IncludeOptional mods-enabled/*.conf
Includeți ports.conf

<Director />
    Opțiuni FollowSymLinks
    AllowOverride Nici unul
    Solicitați refuzul tuturor
</Director>

<Director /usr/share>
    AllowOverride Nici unul
    Solicitați toate acordate
</Director>

<Director /var/www/>
    Opțiuni Indexuri FollowSymLinks
    AllowOverride Nici unul
    Solicitați toate acordate
</Director>

AccessFileName .htaccess

<FilesMatch „^\.ht”>
    Solicitați refuzul tuturor
</FilesMatch>

LogFormat „%v:%p %h %l %u %t \"%r\" %>s %O \"%{Referer}i\" \"%{User-Agent}i\"" vhost_combined
LogFormat „%h %l %u %t \"%r\" %>s %O \"%{Referer}i\" \"%{User-Agent}i\"" combinat
LogFormat "%h %l %u %t \"%r\" %>s %O" comun
LogFormat „%{Referer}i -> %U” referitor
LogFormat agent „%{User-agent}i”.

IncludeOptional conf-enabled/*.conf
IncludeOptional site-enabled/*.conf

<FilesMatch \.php$>
    Aplicația SetHandler/x-httpd-php
</FilesMatch>

ports.conf:-

    Ascultă 80

<IfModule ssl_module>
    Ascultă 443
</IfModule>

<IfModule mod_gnutls.c>
    Ascultă 443
</IfModule>

site-uri-available/dfsoftare.ddns.net.conf:-

    <VirtualHost *:80>
    ServerAdmin webmaster@localhost
    ServerName dfsoftware.ddns.net
    ServerAlias www.dfsoftware.ddns.net
    DocumentRoot /WebSites/Websites
    ErrorLog ${APACHE_LOG_DIR}/error.log
    CustomLog ${APACHE_LOG_DIR}/access.log combined
    <Directory /WebSites/Websites/>
        Options Indexes FollowSymLinks MultiViews
        AllowOverride None
        Require all granted
    </Directory>
    RewriteEngine on
    RewriteCond %{SERVER_NAME} =dfsoftware.ddns.net [OR]
    RewriteCond %{SERVER_NAME} =www.dfsoftware.ddns.net
    RewriteRule ^ https://%{SERVER_NAME}%{REQUEST_URI} [END,NE,R=permanent]
</VirtualHost>

site-uri-available/dfsoftare.ddns.net-le-ssl.conf:-

<IfModule mod_ssl.c>
<VirtualHost *:443>
    ServerAdmin webmaster@localhost
    ServerName dfsoftware.ddns.net
    ServerAlias www.dfsoftware.ddns.net
    DocumentRoot /WebSites/Websites
    SSLEngine on
    ErrorLog ${APACHE_LOG_DIR}/error.log
    CustomLog ${APACHE_LOG_DIR}/access.log combined
    <Directory /WebSites/Websites/>
    Options Indexes FollowSymLinks MultiViews
        AllowOverride None
        Require all granted
    </Directory>
    SSLEngine on
    Include /etc/letsencrypt/options-ssl-apache.conf
    SSLCertificateFile /etc/letsencrypt/live/dfsoftware.ddns.net-    0001/fullchain.pem
    SSLCertificateKeyFile /etc/letsencrypt/live/dfsoftware.ddns.net-0001/privkey.pem
</VirtualHost>
</IfModule>
dave_thompson_085 avatar
drapel jp
Nu există TLS 3.1, presupun că te referi la 1.3.Prin „upgrade” vă referiți la _pachetele_ `libssl` _și_ `apache2-bin` care îl face referire (prin `mod_ssl`) din depozitul standard, sau altceva precum un PPA sau o clădire din sursă? Ați folosit certbot sau altă metodă? Pot reproduce acest lucru setând `SSLEngine off` (explicit) în configurația OOTB la site-available/default-ssl.conf , așa că ați putea căuta așa ceva, deși pare cu adevărat ciudat pentru certbot sau orice client ACME sănătos să face asa ceva.
drapel us
hopa, da, am primit numărul versiunii greșit! Amestecat mic și mare endian lol! (intrebare actualizata).
drapel us
@dave_thompson_085: Am linia „SSLEngine activată” în acel fișier și fișierele la care se referă „SSLCertificateXXX” există. Și am folosit certbot
drapel us
După ce m-am uitat puțin în jur, am văzut o postare despre SSL-ul care nu funcționează pe portul 443, așa că am încercat „http://:443" și iată, a funcționat. Deci se pare că apache nu folosește SSL pe acel port. Aveți idei despre cum să-l activați?
drapel in
Vă rugăm să furnizați configurația Apache

Postează un răspuns

Majoritatea oamenilor nu înțeleg că a pune multe întrebări deblochează învățarea și îmbunătățește legătura interpersonală. În studiile lui Alison, de exemplu, deși oamenii își puteau aminti cu exactitate câte întrebări au fost puse în conversațiile lor, ei nu au intuit legătura dintre întrebări și apreciere. În patru studii, în care participanții au fost implicați în conversații ei înșiși sau au citit transcrieri ale conversațiilor altora, oamenii au avut tendința să nu realizeze că întrebarea ar influența – sau ar fi influențat – nivelul de prietenie dintre conversatori.