SSH

De RJGS Wiki
Ir para navegação Ir para pesquisar

SSH[editar | editar código-fonte]

O que é?[editar | editar código-fonte]

Acrônimo de *Secure Socket Shell* É um protocolo de rede que permite acesso a um determinado sistema (Server ou PC), via shell.

Qual a função?[editar | editar código-fonte]

O mais difundido e utilizado, no mundo linux, é o OpenSSH. E é sobre ele que vamos direcionar esse howto.

Instalação[editar | editar código-fonte]

Antes de instalar, pense nisso:

Qual a minha finalidade para o uso do ssh?

O SSH permite conexões ssh entre um "client" e um "server". Se você queira acessar o seu computador á partir de outro, deve instalar ambos os pacotes. Caso queira apenas acessar outro computador, por motivos de segurança o mais recomendado é instalar somente o pacote "client".

Terminal[editar | editar código-fonte]

Abra uma sessão no terminal e digite:

No Ubuntu e derivados[editar | editar código-fonte]

sudo apt-get install openssh-client openssh-server 

No ArchLinux e derivados[editar | editar código-fonte]

pacman -S openssh 

Aperte ENTER e insira a sua senha de sudo. Espere a instalação acabar.

Pós-intalação[editar | editar código-fonte]

Para se certificar que foi instalado e que está rodando corretamente no seu sistema, use um esses dois comandos:

Para verificar o status do serviço SSH:

service ssh status   ou  service ssh status | grep Active 

Para iniciar o o servico SSH:

service ssh start 

Para reiniciar o o servico SSH:

service ssh restart 

Para parar o o servico SSH:

service ssh stop 

Instruções para conexão[editar | editar código-fonte]

Sintaxe:[editar | editar código-fonte]

Basicamente, a conexão ssh é feita, por escrito no shell, respeitando essa sintaxe:

ssh user@servidor 

Onde:

  • user = usuário real e habilitado á fazer login no sistema que está sendo acessado.
  • servidor = IP ou dominio do computador que será acessado.

Após o request lhe será solicitado inserir a senha do usuário e...BINGO!

Trocar a porta SSH[editar | editar código-fonte]

Para trocar a porta do seu Linux, a configuração deve ser efetuada no arquivo sshd_config do ssh em /etc/ssh/.

sudo vim /etc/ssh/sshd_config

Neste arquivo, procure por #Port 22. Descomente o parâmetro e mude a porta por um numero que você possa utilizar (neste exemplo vamos setar a porta 2222).

Port 2222

Salve e sai do arquivo.

Depois de mudar a porta, é necessário reiniciar o serviço SSH

systemctl restart ssh

Para conferir o status do serviço após a mudança.

systemctl status ssh

Para conferir se a porta escolhida já está em modo "listen" utilize o comando abaixo, inserindo o numero da porta.

ss -tuln | grep 2222

O retorno do comando deverá ser semelhante a isso:

user@ubuntu:~$ ss -tuln | grep 2222
tcp   LISTEN 0      4096                                   *:2222             *:*      

se necessário, reinicie o sistema

sudo reboot

Customização[editar | editar código-fonte]

Para customizar o acesso ssh do seu servidor vocẽ deve editar dois arquivos distintos:

Edite o arquivo /etc/issue.net[editar | editar código-fonte]

O arquivo issue.net contém a mensagem que vai aprecer antes do usuário.

sudo vim /etc/issue.net

Edite o arquivo /etc/motd[editar | editar código-fonte]

O arquivo /etc/motd, por sua vez, contém a mensagem que será exibida logo após a autenticação.

sudo vim /etc/motd

Habilítar os banners[editar | editar código-fonte]

Para habilitar os banners criados nos arquivos acima, vocẽ deve habilitá-los no arquivo /etc/ssh/sshd_config.

No arquivo , procure por uma linha que diz:

#Banner

descomente e insira o nome do arquivo issue ao lado

Banner /etc/issue.net

Reinicie o serviços[editar | editar código-fonte]

Reinicie o serviço ssh para que as aterações entrem em vigor.

sudo service ssh restart 

Chaves SSH[editar | editar código-fonte]

Criando a chave[editar | editar código-fonte]

Para a conexão com chave, primeiro gere a chave em seu computador.

ssh-keygen 

Você pode criar a sua chave com a criptografia RSA:

ssh-keygen -t rsa 

Caso queira identificar o arquivo podes indicar o caminho absoluto para o aqruivo. Por exemplo:

ssh-keygen /home/usuario/.ssh/arquivo 

Durante a criação da chave será necessário determinar uma frase de acesso. trata-se de uma "frase" de segurança: escolha com sabedoria.

Obtendo a chave[editar | editar código-fonte]

Copie o conteúdo da sua chave pública, em um notepad ou editor de texto qualquer. Para abtê-lo, utilize o seguinte comando:

cat /home/usuario/.ssh/arquivo.pub 

Enviando a chave[editar | editar código-fonte]

Para enviar a chave para o host que deverá ser acessado, pode-se utilizar dois métodos:

Metodo direto[editar | editar código-fonte]

ssh-copy-id usuario@ip_do_servidor 
ssh-copy-id -i /home/usuario/.ssh/arquivo.pub usuario@ip_do_servidor 

Metodo tradicional[editar | editar código-fonte]

Incluir a sua chave publica no arquivo /home/usuario/.ssh/authorized_keys .

Para isso, siga esses passos:

Acesse o servidor em questão via ssh (inicialmnte com a senha), e adicione a sua chave ao arquivo /home/usuario/.ssh/authorized_keys :

sudo echo "*conteúdo do arquivo .pub copiado" >> /home/usuario/.ssh/authorized_keys 

Fontes[editar | editar código-fonte]