Um erro típico de servidor da web com NGINX si Certbot, que descobri recentemente em error.log:
[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
É um erro que ocorre esporadicamente, apenas em determinados cenários e mais frequentemente em sites de alto tráfego. Grande número de consultas.
"le_nginx_SSL
", Como se deduz do nome, é responsável pelas sessões SSL serviu para interrogatórios. Hora em que o certificado também é verificado SSL Let's Encrypt, instalado no servidor com a ajuda certbot
.
Contente
Por que o erro NGINX “não foi possível alocar nova sessão em SSL cache compartilhado de sessão “le_nginx_SSLenquanto SSL aperto de mãos "
Sessões SSL do NGINX são armazenados em uma memória compartilhada para compartilhar com cada consulta no navegador. Quando o espaço alocado para o cache de memória compartilhada (compartilhado) SSL estiver cheio e o NGINX não liberar espaço para uma nova sessão, essa mensagem de erro será exibida.
Não é sobre um erro crítico de NGINX nem tem um grande impacto na experiência do usuário. A propósito em “error.log ”é denotado por“[alert]
".
Como corrigir o erro NGINX “não foi possível alocar nova sessão em SSL cache compartilhado de sessão “le_nginx_SSLenquanto SSL aperto de mãos "
Quando você instala Certbot em um servidor web (CentOS, Ubuntu) são criados diversos arquivos de configuração por meio dos quais o novo serviço responsável pelos certificados SSL (Let's Encrypt) se comunica com NGINX. Um desses arquivos é e options-ssl-nginx.conf
. Arquivo de configuração no qual podemos alocar mais espaço para um compartilhamento de memória SSL ou podemos alterar o tempo em que uma sessão SSL expirar e ser excluído automaticamente.
sudo nano /etc/letsencrypt/options-ssl-nginx.conf
In options-ssl-nginx.conf
podemos alterar os parâmetros, mas tenha muito cuidado, pois as alterações aqui afetarão a renovação dos certificados 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;
Podemos alterar quanto tempo uma sessão é armazenada na memória compartilhada para “le_nginx_SSL”. Aloquei 10 MB para as sessões de cache compartilhadas de SSL, com um tempo limite de 1440 minutos (24 horas).
Para sites de alto tráfego, é recomendado que o cache compartilhado seja aumentado, mas é necessário um equilíbrio entre o tráfego (número de sessões) e a quantidade de tempo que uma sessão será armazenada.
No meu caso, o valor muda em "ssl_session_cache shared:le_nginx_SSL:15m
".