Last active
May 31, 2023 14:10
-
-
Save Esl1h/65c0d67780ee6212ebce00efe76d6007 to your computer and use it in GitHub Desktop.
A hardening/tunning to sysctl.conf to Linux servers (tested on Debian, CentOS, Amazon Linux and Ubuntu). Otimização para o sysctl.conf em servidores linux
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#CONTEUDO PARA O SYSCTL.CONF | |
# Aumentar o num. max de conex tcp orfans | |
# Conexões que foram encerrados e já não têm um identificador de arquivo anexado a eles | |
net.ipv4.tcp_max_orphans = 262144 | |
# Aumentar o número de conexões | |
net.core.somaxconn = 16384 | |
# Aumentar o número de conexões de entrada backlog | |
# O número máximo de pacotes que podem ser enfileirados na entrada da interface | |
# Se o kernel está recebendo pacotes mais rápido do que podem ser processados | |
# Esta fila aumenta | |
net.core.netdev_max_backlog = 16384 | |
# Máximo para Socket Receive Buffer (16Mb) | |
net.core.rmem_max = 16777216 | |
# Padrão de envio de socket Buffer (16Mb) | |
net.core.wmem_max = 16777216 | |
# Aumentar a alocação para tamanho maximo | |
net.ipv4.tcp_wmem = 4096 12582912 16777216 | |
net.ipv4.tcp_rmem = 4096 12582912 16777216 | |
# Aumentar o número de pedidos pendentes syn permitidos | |
net.ipv4.tcp_max_syn_backlog = 8096 | |
# Para conexões HTTP persistentes | |
net.ipv4.tcp_slow_start_after_idle = 0 | |
# Aumentar o tamanho de tcp-TIME-WAIT para evitar ataques de DOS simples | |
net.ipv4.tcp_tw_reuse = 1 | |
# Range de portas para conexão | |
net.ipv4.ip_local_port_range = 1024 65535 | |
fs.file-max = 2097152 | |
# | |
fs.inotify.max_user_watches=524288 | |
# Timeout - fechamento de conexões TCP após 7 segundos | |
net.ipv4.tcp_fin_timeout = 7 | |
# Evitar cair de volta para retardar início depois que uma conexão estiver inativo | |
# Mantém nosso cwnd grande com as conexões de Atividade | |
net.ipv4.tcp_slow_start_after_idle = 0 | |
# Só repetir a criação de conexões TCP duas vezes | |
# Minimizar o tempo que leva para que uma tentativa de conexão falhe | |
net.ipv4.tcp_synack_retries = 2 | |
net.ipv4.tcp_syn_retries = 2 | |
# As unidades estão em tamanho de página (tamanho da página padrão é 4 KB) | |
# Estas são variáveis globais que afetam total de páginas para os socketes TCP | |
# 8388608 * 4 = 32 GB | |
# Quando o mem atribuído pelo TCP excede a "pressão", o kernel irá transferir a memória TCP | |
# Coloca os valores altos para evitar basicamente qualquer pressão mem nunca ocorra | |
net.ipv4.tcp_mem = 8388608 8388608 8388608 | |
# Aumenta/limita o número máximo de soquetes permitido em TIME_WAIT | |
net.ipv4.tcp_max_tw_buckets = 6000000 | |
# Aumenta/limita conexões max semi-aberto. | |
net.ipv4.tcp_max_syn_backlog = 65536 | |
# Diminuir o uso de swap | |
# caso não tenha swap, dependendo do tipo de serviço no servidor, | |
# coloque ao menos alguns megabytes: | |
# siga este how-to: | |
# https://esli.blog.br/ram-e-swap | |
vm.swappiness = 5 | |
vm.dirty_ratio = 10 | |
vm.dirty_background_ratio = 5 | |
# baseado no Tuning da Netflix para as EC2 com Ubuntu: | |
# https://www.slideshare.net/brendangregg/performance-tuning-ec2-instances |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment