O SSH ou Security Shell é um aplicativo utilizado para acesso remoto entre sistemas distribuídos, é um protocolo nativo em sistemas UNIX/LINUX.
Ao contrário do Telnet, fornece autenticação e comunicação segura entre os hosts onde os dados transitam criptografados.
Através do acesso via SSH o administrador tem em suas mãos a máquina remota, podendo então fazer alterações, manutenções, cópias de arquivos, etc.
Usuários Windows podem logar-se em plataformas UNIX/LINUX utilizando o SSH, basta que possuam o aplicativo cliente putty instalado na máquina.
Quando o SSH é utilizado para acesso a servidores devem ser tomadas algumas precauções, pois, caso existam vulnerabilidades seu ambiente poderá estar correndo sérios riscos.
A seguir mostraremos algumas configurações que apesar de básicas devem ser levadas em consideração.
Faremos a edição do arquivo /etc/ssh/sshd_config mostrado na figura abaixo:
- O SSH por padrão trabalha na porta 22, mudaremos para uma porta alta, exemplo 42110
#Port 22
Port 42110
- O tipo de protocolo deve ser 2, pois, o 1 possui vulnerabilidade
#Protocol 1
Protocol 2
- O parâmetro LoginGraceTime é o tempo para o usuário digitar a senha , setaremos para 45
#LoginGraceTime 180
LoginGraceTime 45
- PermitRootLogin , deve ser setado como NO , ou seja, não permitir login como root
#PermitRootLogin yes
PermitRootLogin no
- Podemos acrescentar a linha PermitEmptyPasswords , ou seja, não aceitar login sem senha
PermitEmptyPasswords no
- AllowUsers “Silvio” , ou seja, definir usuários com permissão para login
AllowUsers “Silvio”
Após, basta reiniciar o serviço e pronto !!! observando esses princípios básicos seu SSH já estará com nível aceitável de segurança.