Estou executando alguns servidores há um tempo relativamente longo, mas sempre os aluguei, portanto não tenho muita experiência em proteger o servidor real (em oposição ao aplicativo em que estou executando).
Agora estou com vontade de abrir meu pequeno servidor SSH doméstico para a Internet.
Eu serei o único a usá-lo, minhas senhas são complicadas o suficiente, mudei a porta SSH padrão para algo em torno de 4000, a única porta acessível é essa porta SSH através do encaminhamento de porta no meu roteador / firewall e é atualizada automaticamente todas as noites (ele roda o Arch Linux, uma distribuição de lançamentos contínuos).
Quais são, se houver, outras coisas que devo fazer para mantê-lo seguro?
Obrigado!
Verifique se apenas o SSH-2 é permitido (já que o SSH-1 levantou algumas preocupações de segurança no passado):
Especifique quais são os únicos usuários com permissão para efetuar login via SSH:
Para aumentar a segurança, desautorize a autenticação por senha e use a autenticação por chave pública:
Nota: este tutorial contém instruções para criar chaves e configurar a autenticação de chave pública.
fonte
Além dos pontos sobre a desativação do login raiz ou o uso apenas da autenticação de chave pública, também verifiquei se não há contas de usuário no sistema que tenham senhas triviais ou vazias. Você disse que suas senhas pessoais estão corretas, mas isso não exclui que uma conta com uma senha ruim tenha sido criada por algum outro motivo.
Como exemplo: eu tive que consertar uma rede em que o administrador anterior instalou o nagios em todos os seus sistemas a partir da fonte e criei um usuário do nagios sem senha ou a senha "nagios" e, em seguida, passei a obter três máquinas diferentes comprometida.
fonte
Você pode querer olhar para algum tipo de ferramenta de lista negra de IP, como http://denyhosts.sourceforge.net/ . Ele bloqueia todos os IPs que tentam efetuar login sem êxito muitas vezes e é altamente configurável.
fonte
Eu sugiro que você instale o Fail2ban! http://www.fail2ban.org
Ele proíbe um IP após x falhas em tentativas por y minutos, ajudando a manter o scriptkiddies sob controle;)
fonte
Revisões recorrentes de logs nas partes / componentes pertinentes de seus sistemas (dependendo da configuração real / específica) ...
fonte