Resistir a inundações de conexões
Mantém a máquina respondendo quando alguém a inunda com conexões pela metade.
Por que importa
Um SYN flood envia enorme quantidade de pedidos de conexão e nunca os completa. Cada conexão meio aberta ocupa memória, então o servidor enche e para de responder a visitantes reais. SYN cookies deixam a máquina respondendo enquanto o flood dura.
Como funciona
Define net.ipv4.tcp_syncookies como 1. Quando a fila de conexões meio abertas transborda, o kernel para de guardá-las e codifica o estado necessário na resposta, então o flood não consuma memória.
Quem deve usar
Qualquer coisa que aceite conexões TCP: servidores, laboratórios caseiros, notebooks com serviços. Só age sob carga, então há pouca razão para deixar desligado. A maioria das distribuições já ativa.
O que você pode notar
Nada, pois só importa durante sobrecarga. Num flood, alguns recursos opcionais do TCP podem faltar nas conexões afetadas.
Verifique no seu computador
Leia o valor atual:
sysctl net.ipv4.tcp_syncookies Aplique à mão
Defina agora (até a próxima reinicialização):
sudo sysctl -w net.ipv4.tcp_syncookies=1 Mantenha após reinicializações, em um arquivo seu:
sudo tee /etc/sysctl.d/90-net-tcp-syncookies.conf <<'EOF'
net.ipv4.tcp_syncookies = 1
EOF
sudo sysctl --system Desfaça
Remova o arquivo e reinicie, ou volte ao valor antigo com sysctl -w.
Configurações relacionadas
Fontes
- Linux Hardening Guide (madaidans)
- 2.2.2
- Linux kernel documentation
- net