Skip to content
KitploitKITPLOIT
FerramentasBlog
Enviar
FerramentasBlog
Enviar

Ferramentas de Hacking, PenTest e Cibersegurança para o seu Arsenal de Segurança!

Kitploit é um diretório de ferramentas de hacking, cibersegurança e pentesting. Descubra as últimas atualizações de projetos para encontrar vulnerabilidades, analisar sistemas, automatizar testes e fortalecer sua segurança.

··Feeds·Contato·Privacidade·© 2026 Kitploit

Diretório de Ferramentas

Categorias

Ver todas as categorias
Loading categories
ssh-hardening — Fortalecimento de SSH | Kitploit
Ferramentas/GitHubGitHub/spookey007/ssh-hardening
Utilitários de Propósito GeralScripting e AutomaçãoAuditoria de ConfiguraçãoSegurança de RedeAutenticação
GitHubspookey007/ssh-hardening

ssh-hardening

Fortalecimento de SSH

Ver Repositório
3há 6 mesesAinda não revisado

Mais Populares

Ver todos →

Descubra as ferramentas mais usadas pela nossa comunidade.

Explore todas as ferramentas

Navegue pela nossa coleção de ferramentas

Ver todas as ferramentas →
Compartilhar

SSH Hardening

Bloqueie o SSH no Debian/Ubuntu em uma execução: nova porta, sem login root, autenticação por chave, UFW e Fail2Ban opcionais.


O que você verá

Quando você executar o script, ele detecta seu SO e mostra as configurações antes de perguntar se deseja continuar:

SSH Hardening — prompt do script


Início rápido (passo a passo)

1️⃣ Instale o git (se necessário)

No Debian/Ubuntu:

root@kitploit:~
sudo apt-get install -y git

2️⃣ Clone o repositório e entre na pasta

root@kitploit:~
rm -rf ssh-hardening
git clone https://github.com/spookey007/ssh-hardening.git
cd ssh-hardening

Execute isso sempre que quiser a versão mais recente do script.

3️⃣ Torne os scripts executáveis

root@kitploit:~
chmod +x ssh_harden.sh script.sh

Se pular esta etapa, pode receber "command not found" ao executar ./ssh_harden.sh. Se isso acontecer, use o passo 5 com sudo bash ssh_harden.sh.

4️⃣ Crie uma chave SSH no seu PC (para colar como SSH_PUB_KEY)

Linux / macOS

root@kitploit:~
ssh-keygen -t ed25519 -C "[email protected]"

Pressione Enter para o caminho padrão (~/.ssh/id_ed25519). Opcional: defina uma frase secreta.

Mostre sua chave pública (copie isso para SSH_PUB_KEY):

root@kitploit:~
cat ~/.ssh/id_ed25519.pub

Windows (PowerShell ou Git Bash)

root@kitploit:~
ssh-keygen -t ed25519 -C "[email protected]"

Pressione Enter para o caminho padrão. Opcional: defina uma frase secreta.

Mostre sua chave pública:

  • PowerShell: Get-Content $env:USERPROFILE\.ssh\id_ed25519.pub
  • CMD: type %USERPROFILE%\.ssh\id_ed25519.pub

Copie a linha inteira (começa com ssh-ed25519 ...). Essa é sua SSH_PUB_KEY.

5️⃣ Execute o script como root

Substitua os valores pelos seus e execute:

root@kitploit:~
sudo SSH_USER=kamaileo \
     SSH_PASS='YourStrongPassword123!' \
     SSH_PORT=49221 \
     PORTS="5060,5061,10000-20000" \
     SSH_PUB_KEY="ssh-ed25519 AAAA... you@yourmachine" \
     ./ssh_harden.sh

Se receber "command not found", use:

root@kitploit:~
sudo bash ssh_harden.sh

(com os mesmos SSH_USER=... SSH_PASS=... etc. na frente).

6️⃣ Siga as instruções

  • Confirme as configurações (usuário, porta, chave).
  • Escolha Y ou n para UFW e Fail2Ban.

7️⃣ Teste o login (antes de fechar sua sessão atual)

Em um novo terminal, conecte usando a nova porta (não a 22):

root@kitploit:~
ssh -p 49221 kamaileo@IP_DO_SEU_SERVIDOR

Use a porta e o usuário que você definiu. Feche a sessão original somente após confirmar que o login e o sudo funcionam.


Dicas para novos usuários

  • Use a nova porta sempre. Após o hardening, o SSH não estará mais na porta 22. Conecte-se sempre com:

    root@kitploit:~
    ssh -p <SUA_PORTA> <USUARIO>@<IP_DO_SERVIDOR>
    

    Exemplo: ssh -p 49221 [email protected]

  • Salve a saída do script quando ele terminar. No final, o script exibe um resumo com seu usuário, porta, comando de conexão e se uma senha foi definida. Copie ou tire um print desse bloco e guarde em um local seguro. Se perder sua chave SSH, esquecer a porta ou esquecer a senha, esse registro ajudará a recuperar ou reconectar (por exemplo, via console/VNC usando o mesmo usuário e senha).

  • O script gera tudo que você precisa: usuário, porta, status do UFW/Fail2Ban e o comando ssh -p ... exato. Sem adivinhação.


Se o usuário já existir

Se SSH_USER já existir no servidor, o script não cria um novo usuário e não altera a senha. Ele apenas:

  • Garante que o usuário esteja no grupo sudo
  • Atualiza ~/.ssh/authorized_keys se você passar SSH_PUB_KEY
  • Faz o hardening do SSH config, e opcionalmente UFW e Fail2Ban

Então você pode executá-lo novamente para "apenas fazer o hardening" sem tocar na senha existente.


O que você precisa definir


Suporte a SO e instalação do git

Em SO não suportados, o script exibe Em breve 😊 e sai sem alterar nada.


Notas de segurança

  • Defina SSH_PUB_KEY para que você ainda possa fazer login após a autenticação por senha ser desabilitada.
  • Teste em uma VM ou servidor descartável primeiro.
  • Mantenha sua sessão atual aberta até ter testado ssh -p PORTA usuario@servidor.

Me pague um café

Se este script economizou seu tempo ou evitou uma dor de cabeça, você pode apoiar o projeto com uma contribuição única.

BTC: 3L1Gc4avD4Bqoi2F9aq6z4heT13fXA8DZ9

De qualquer forma, obrigado.


Autor

@spookey007

Baixar ferramenta
VariávelExemploO que faz
SSH_USERkamaileoNome de usuário (criado se não existir; se existir, a senha permanece inalterada).
SSH_PASS'YourPass123!'Senha apenas para novos usuários. Use uma forte.
SSH_PORT49221Porta SSH. Você usará: ssh -p 49221 usuario@servidor.
PORTS"5060,5061,10000-20000"Portas extras para UFW (opcional).
SSH_PUB_KEY"ssh-ed25519 AAAA..."Sua chave pública. Altamente recomendada para não ficar bloqueado.
SOSuportadoTestadoInstalação do git
Debian 12 x64✅✅sudo apt-get install -y git
Debian 11/10, Ubuntu 24/22/20✅❌sudo apt-get install -y git
RHEL / Rocky / Alma / CentOS❌❌sudo yum install -y git
Fedora❌❌sudo dnf install -y git
Arch❌❌sudo pacman -Syu git
openSUSE❌❌sudo zypper install -y git