Typowy błąd serwera WWW z nginx si Certbot, który niedawno odkryłem w error.log:
Zawartość
[alert] 19765#19765: *151498 could not allocate new session in SSL session shared cache "le_nginx_SSL" while SSL handshaking, client: ip.ip.ip.ip, server: 0.0.0.0:443
Jest to błąd, który pojawia się sporadycznie, tylko w określonych scenariuszach i najczęściej na stronach o dużym natężeniu ruchu. Duża liczba zapytań.
"le_nginx_SSL
", jak można wywnioskować z nazwy, odpowiada za sesje SSL służył do przesłuchań. Czas, w którym certyfikat jest również weryfikowany SSL Let's Encrypt, zainstalowany na serwerze z pomocą certbot
.
Dlaczego błąd NGINX „nie można przydzielić nowej sesji w SSL współdzielona pamięć podręczna sesji”le_nginx_SSL" podczas SSL uścisk dłoni ”
Sesje SSL NGINX są przechowywane w pamięci współdzielonej, aby udostępniać je przy każdym zapytaniu w przeglądarce. Gdy miejsce przydzielone do pamięci podręcznej pamięci współdzielonej (współdzielonej) SSL jest pełny, a NGINX nie może zwolnić miejsca na nową sesję, pojawia się ten komunikat o błędzie.
Nie chodzi o jednego błąd krytyczny NGINX nie ma też dużego wpływu na wrażenia użytkownika. Przy okazji w „error.log ”oznaczony przez”[alert]
".
Jak naprawić błąd NGINX „nie można przydzielić nowej sesji w SSL współdzielona pamięć podręczna sesji”le_nginx_SSL" podczas SSL uścisk dłoni ”
Po zainstalowaniu Certbot na serwerze WWW (CentOS, Ubuntu) tworzonych jest kilka plików konfiguracyjnych, dzięki którym nowa usługa odpowiedzialna za certyfikaty SSL (Let's Encrypt) komunikuje się z NGINX. Jednym z tych plików jest i options-ssl-nginx.conf
. Plik konfiguracyjny, w którym możemy przydzielić więcej miejsca na udział pamięci a SSL lub możemy zmienić czas, w którym sesja SSL wygaśnie i zostanie automatycznie usunięty.
sudo nano /etc/letsencrypt/options-ssl-nginx.conf
In options-ssl-nginx.conf
możemy zmienić parametry, ale bądź bardzo ostrożny, ponieważ zmiany tutaj wpłyną na odnowienie certyfikatów SSL.
ssl_session_cache shared:le_nginx_SSL:10m;
ssl_session_timeout 1440m;
ssl_session_tickets off;
ssl_protocols TLSv1.2 TLSv1.3;
ssl_prefer_server_ciphers off;
Możemy zmienić czas przechowywania sesji w pamięci współdzielonej dla „le_nginx_SSL”. Przydzieliłem 10 MB na sesje współdzielonej pamięci podręcznej z SSL, z limitem czasu 1440 minut (24 godziny).
W przypadku witryn o dużym natężeniu ruchu zaleca się zwiększenie współużytkowanej pamięci podręcznej, ale wymagana jest równowaga między ruchem (liczba sesji) a czasem przechowywania sesji.
W moim przypadku zmiana wartości o „ssl_session_cache shared:le_nginx_SSL:15m
".