$_
SSH Toolkit
Home
Tunnels
Hardening
Config
KeyGen
$
Server Hardening
Gere um sshd_config endurecido com score de segurança.
A+
Paranoico
Máxima segurança
A
Equilibrado
Uso geral
B
Permissivo
Lab / testes
A
98/100
Autenticação
Porta SSH
?
Porta onde o sshd escuta. Trocar a 22 pode reduzir ruído de scans, mas não substitui chave forte, firewall e boas políticas.
PermitRootLogin
?
Controla se root pode logar via SSH. 'no' é mais seguro. 'prohibit-password' permite root apenas com chave.
no
prohibit-password
forced-commands-only
yes
PubkeyAuthentication
?
Permite login por chave pública. Mantenha ativado para usar chaves SSH em vez de depender de senha.
PasswordAuthentication
?
Desabilitar força login apenas por chave, que é imune a ataques de força bruta por senha.
AuthenticationMethods
?
Lista separada por vírgula. Use 'publickey' sozinho, ou 'publickey,keyboard-interactive' para 2FA (requer configuração de PAM).
MaxAuthTries
?
Tentativas de autenticação por conexão. Valores baixos dificultam ataques de força bruta.
LoginGraceTime
(s)
?
Tempo máximo para concluir a autenticação. Valores menores reduzem janelas abertas para tentativas lentas ou automatizadas.
PermitEmptyPasswords
?
Permite contas com senha vazia entrarem por SSH. Deve ficar desativado em praticamente todos os servidores.
UsePAM
?
Pluggable Authentication Modules. Necessário para autenticação por senha e 2FA. Seguro manter ativado mesmo com login apenas por chave.
Controle de Acesso
AllowUsers
(espaço entre nomes)
?
Apenas estes usuários podem logar. Sobrepõe outros controles de acesso. Deixe vazio para permitir todos.
AllowGroups
?
Apenas membros destes grupos podem logar via SSH. Útil para limitar acesso a um grupo como ssh-users.
DenyUsers
?
Bloqueia explicitamente estes usuários no SSH. Use para negar contas específicas mesmo que outras regras permitam.
DenyGroups
?
Bloqueia membros destes grupos no SSH. Ajuda a negar acesso administrativo ou contas de serviço específicas.
Rede
ListenAddress
(opcional)
?
Limita em quais IPs/interfaces o sshd escuta. Vazio deixa o servidor ouvir em todos os endereços disponíveis.
AddressFamily
?
Controla se o sshd usa IPv4, IPv6 ou ambos. Use inet para aceitar apenas IPv4, inet6 para apenas IPv6.
any
inet (IPv4)
inet6 (IPv6)
ClientAliveInterval
(s)
?
Intervalo em segundos para o servidor enviar keepalive ao cliente. Ajuda a encerrar sessões mortas.
ClientAliveCountMax
?
Quantidade de keepalives sem resposta antes de derrubar a sessão. Multiplica com ClientAliveInterval para definir o timeout.
UseDNS
?
Faz lookup reverso de DNS no login. Normalmente fica desativado para evitar atrasos e dependência de DNS.
Segurança
X11Forwarding
?
Permite aplicações gráficas via SSH. Desabilite se não precisar — reduz a superfície de ataque.
AllowAgentForwarding
?
Permite encaminhar o ssh-agent para este servidor. Conveniente em saltos, mas arriscado em máquinas não confiáveis.
AllowTcpForwarding
?
Permite encaminhamento de portas pelo servidor. Desabilite se os usuários não precisam de túneis SSH.
AllowStreamLocalForwarding
?
Permite forwarding de sockets Unix. Desative se usuários não precisam criar túneis por socket local.
GatewayPorts
?
Controla se túneis remotos podem escutar fora de localhost. yes pode expor portas para a rede inteira.
no
clientspecified
yes
PermitTunnel
?
Permite dispositivos tun/tap via SSH, usados para VPNs. Deixe desligado se esse recurso não for necessário.
PermitUserEnvironment
?
Permite que usuários definam variáveis de ambiente no SSH. Pode contornar restrições, então mantenha desativado.
PermitUserRC
?
Executa ~/.ssh/rc após o login. Desative quando quiser reduzir hooks controlados pelo usuário.
StrictModes
?
Valida permissões e dono de arquivos SSH antes do login. Mantém chaves e authorized_keys com permissões seguras.
MaxSessions
?
Número máximo de sessões abertas dentro da mesma conexão SSH. Limita multiplexing e sessões simultâneas.
MaxStartups
?
Formato: início:taxa:máximo. Após 'início' conexões não autenticadas, começa a rejeitar 'taxa'% aleatoriamente, limite em 'máximo'. Protege contra DDoS.
LogLevel
?
VERBOSE é recomendado para auditoria. DEBUG é verboso mas útil para troubleshooting.
QUIET
FATAL
ERROR
INFO
VERBOSE
DEBUG
Banners
PrintMotd
?
Mostra a mensagem do dia no login. Pode ser útil para avisos, mas nem sempre é desejado em automações.
PrintLastLog
?
Mostra o último login do usuário. Ajuda a perceber acessos inesperados.
Banner
(caminho do arquivo)
?
Arquivo exibido antes da autenticação. Use para avisos legais ou mensagens institucionais curtas.
sshd_config
Copiar
Baixar sshd_config
Baixar script de aplicação