- Como desabilitar o acesso root ssh no Debian 10 Buster
- Alternativas para proteger seu acesso ssh
- Filtrando a porta ssh com iptables
- Usando TCP wrappers para filtrar ssh
- Desativando o serviço ssh
- Artigos relacionados
Como desabilitar o acesso root ssh no Debian 10 Buster
Para desabilitar o acesso root ssh você precisa editar o arquivo de configuração ssh, no Debian é / etc / ssh / sshd_config
, para editá-lo usando o editor de texto nano, execute:
No nano você pode pressionar CTRL + W (onde) e digite PermitRoot para encontrar a seguinte linha:
#PermitRootLogin proibição-senha
Para desativar o acesso root através do ssh apenas descomente essa linha e substitua proibir senha para não como na imagem a seguir.
Depois de desabilitar o acesso root, pressione CTRL + X e Y para salvar e sair.
O proibir senha opção impede o login com senha, permitindo apenas o login por meio de ações de fallback, como chaves públicas, evitando ataques de força bruta.
Alternativas para proteger seu acesso ssh
Restringir o acesso à autenticação de chave pública:
Para desativar o login por senha, permitindo apenas o login usando uma chave pública, abra o / etc / ssh / ssh_config
arquivo de configuração novamente executando:
Para desativar o login por senha, permitindo apenas o login usando uma chave pública, abra o / etc / ssh / ssh_config arquivo de configuração novamente executando:
nano / etc / ssh / sshd_configEncontre a linha que contém PubkeyAuthentication e certifique-se de que diz sim como no exemplo abaixo:
Certifique-se de que a autenticação de senha está desabilitada, encontrando a linha que contém PasswordAuthentication, se for comentado, descomente-o e certifique-se de que está definido como não como na seguinte imagem:
Então aperte CTRL + X e Y para salvar e sair do editor de texto nano.
Agora, como o usuário que deseja permitir o acesso ssh, você precisa gerar pares de chaves privadas e públicas. Corre:
ssh-keygenResponda a sequência de perguntas deixando a primeira resposta como padrão pressionando ENTER, defina sua senha, repita e as chaves serão armazenadas em ~ /.ssh / id_rsa
Gerando par de chaves rsa pública / privada.
Insira o arquivo no qual deseja salvar a chave (/ root /.ssh / id_rsa):
Digite a senha longa (vazio se não houver senha):
Sua identificação foi salva em / root /.ssh / id_rsa.
Sua chave pública foi salva em / root /.ssh / id_rsa.bar.
A impressão digital principal é:
SHA256: 34 + uXVI4d3ik6ryOAtDKT6RaIFclVLyZUdRlJwfbVGo root @ linuxhint
A imagem randomart da chave é:
+---[RSA 2048]----+
Para transferir os pares de chaves que você acabou de criar, você pode usar o ssh-copy-id comando com a seguinte sintaxe:
ssh-copy-idAltere a porta ssh padrão:
Abra o / etc / ssh / ssh_config arquivo de configuração novamente executando:
nano / etc / ssh / sshd_config
Digamos que você queira usar a porta 7645 em vez da porta 22 padrão. Adicione uma linha como no exemplo abaixo:
Então aperte CTRL + X e Y para salvar e sair.
Reinicie o serviço ssh executando:
reiniciar serviço sshd
Então você deve configurar o iptables para permitir a comunicação através da porta 7645:
iptables -t nat -A PREROUTING -p tcp --dport 22 -j REDIRECT --para a porta 7645
Você também pode usar UFW (Uncomplicated Firewall) em seu lugar:
ufw permitir 7645 / tcp
Filtrando a porta ssh
Você também pode definir regras para aceitar ou rejeitar conexões ssh de acordo com parâmetros específicos. A sintaxe a seguir mostra como aceitar conexões ssh de um endereço IP específico usando iptables:
iptables -A INPUT -p tcp --dport 22 --sourceiptables -A INPUT -p tcp --dport 22 -j DROP
A primeira linha do exemplo acima instrui o iptables a aceitar solicitações TCP de entrada (INPUT) para a porta 22 do IP 192.168.1.2. A segunda linha instrui as tabelas de IP a descartar todas as conexões para a porta 22. Você também pode filtrar a fonte por endereço mac como no exemplo abaixo:
iptables -I INPUT -p tcp --dport 22 -m mac ! --mac-source 02: 42: df: a0: d3: 8f-j REJEITAR
O exemplo acima rejeita todas as conexões, exceto para o dispositivo com endereço mac 02: 42: df: a0: d3: 8f.
Usando TCP wrappers para filtrar ssh
Outra maneira de colocar endereços IP na lista de permissões para se conectar por meio de ssh enquanto rejeita o resto é editando os diretórios de hosts.negar e hospedar.permitir localizado em / etc.
Para rejeitar todos os hosts, execute:
nano / etc / hosts.negar
Adicione uma última linha:
sshd: ALL
Pressione CTRL + X e Y para salvar e sair. Agora, para permitir hosts específicos através do ssh, edite o arquivo / etc / hosts.permitir, para editá-lo, execute:
nano / etc / hosts.permitir
Adicione uma linha contendo:
sshd:
Pressione CTRL + X para salvar e sair do nano.
Desativando o serviço ssh
Muitos usuários domésticos consideram o ssh inútil, se você não o usar, você pode removê-lo ou pode bloquear ou filtrar a porta.
No Debian Linux ou sistemas baseados como o Ubuntu, você pode remover serviços usando o gerenciador de pacotes apt.
Para remover o serviço ssh, execute:
Pressione Y se solicitado para finalizar a remoção.
E isso é tudo sobre medidas domésticas para manter o SSH seguro.
Espero que você tenha achado este tutorial útil, continue seguindo LinuxHint para obter mais dicas e tutoriais sobre Linux e redes.
Artigos relacionados:
- Como habilitar o servidor SSH no Ubuntu 18.04 LTS
- Ativar SSH no Debian 10
- Encaminhamento de porta SSH no Linux
- Opções de configuração SSH comuns Ubuntu
- Como e por que alterar a porta SSH padrão
- Configurar SSH X11 Forwarding no Debian 10
- Configuração, personalização e otimização do servidor SSH do Arch Linux
- Iptables para iniciantes
- Trabalhando com Firewalls Debian (UFW)