domingo, 2 de outubro de 2011

SSH - Secure Shell

SSH, ou Secure Shell é um protocolo criptografado para o controle remoto de máquinas de sistemas Linux ou MacOs. Utilizando o ssh, após a autenticação se tem acesso ao terminal da máquina na qual se entrou, com isso pode-se executar comandos e aplicativos dentro daquela máquina.
Dentre o que se pode fazer com o ssh está a execução de scripts, controlamento remoto de uma máquina, etc.

Para utilizar o ssh é necessário um cliente e um servidor. O servidor será a máquia a qual se conectará, e cliente, o equipamento pelo qual pode-se conectar à máquina. Para isso, vamos dividir essa explicação em duas partes, primeiramente, a configuração de um servidor em uma máquina Linux.

Configurando um servidor SSH

Supondo que se está usando uma distribuição com pacotes APT, basta instalar o servidor ssh rodando o seguinte comando no terminal:


sudo apt-get install openssh-server


E então, se tudo der certo, você terá um servidor ssh instalado e configurado na máquina. Mas isso não é tudo, o ssh utiliza por padrão a porta 22, e pode ser bastante vulnerável mantê-la como porta padrão, para modificar a porta que o ssh-server utiliza basta modificar a porta no arquivo de configuração do ssh, que se localiza em /etc/ssh/sshd_config , para isso, pode-se utizilar um editor de textos, no caso o nano.


sudo nano /etc/ssh/sshd_config


Na linha 5 do arquivo deve haver algo como "Port 22", para modificar a porta ativa, basta mudar o número, de 22 para algum outro, recomendo a utilização de uma porta que esteja entre 1000 e 65536, já que as portas anteriores a 1000 podem estar sendo utilizadas para outros serviços e um conflito de portas nunca é algo bom. E, apenas ressaltando, 65536 é o numero máximo de portas, logo não existe uma porta "maior".

E se tudo deu certo até agora, a configuração mínima do servidor está feita. Vamos pular para o cliente ssh.

Cliente SSH

Cliente ssh é o programa que será utilizado para acessar um servidor ssh. Um cliente ssh, diferentemente de um servidor, não requer uma máquina com Linux/MacOs instalado, logo, pode ser executado nas mais diferentes plataformas, desde Windows, até plataformas móveis como IOS ou Android.
Mas vale lembrar que, o ssh só consegue acessar máquinas em uma mesma rede, para que você possa acessar uma máquina em outra rede, é necessário que configurações de port-fowarding estejam aplicadas.

Em linux, basta digitar a seguinte linha de comando para acessar uma máquina via ssh.


ssh <ip do servidor> -p <porta do servidor>


Após a inserção destes dados, e se tudo der certo, ele pedirá o usuário/senha para acessar o servidor, e pronto.

No windows, é necessário um aplicativo chamado PuTTY, com ele se pode acessar um servidor preenchendo os campos de ip e porta, a seguir, aparecerá uma tela de terminal pedindo usuário e senha, que se preenchidos corretamente darão acesso ao servidor. Download do PuTTY aqui.



No android há um app chamado ConnectBot, que efetua conexões ssh, seu funcionamento é bem semelhante ao do PuTTY, link para o android market.

E no caso do IOS, não conheço nenhum aplicativo, mas suponho que com uma visita à appstore é possível encontrar alguns aplicativos para isso.

Nenhum comentário:

Postar um comentário