• Configurarando o SSH
  1. Instalando o SSH no Raspberry pi
    • raspberrypi$: sudo apt-get install openssh-server -y
  2. Instalando o SSH no seu computador
    • seupc$: sudo apt-get install openssh-client
  3. Tentando a primeira conexão com o servidor
    • seupc$: ssh UserPi@IP_do_pi
    • o SSH vai perguntar se voce quer continuar com a conexão, digite yes e enter.
    • O SSH vai pedir a senha do usuário no servidor, digite a senha e aperte enter.
    • Se tudo correu certo você deverá estar tendo acesso ao servidor via SSH.
  4. Para o SSH funcionar sem pedir senhas, devemos criar as nossas Chaves (Public e Private keys) e coloca-las no lugar certo com a permissão certa.
  5. No seu diretório home, crie uma pasta chamada .ssh, em ambos os locais.
    • seupc$: sudo mkdir .ssh
  6. raspberrypi$: sudo mkdir .ssh (NÃO EXECUTE COM SUDO)
  7. Agora vamos criar as chaves:
    • seupc$: ssh-keygen -t dsa
    • Ele vai pedir por uma senha, cabe a você definir se quer usar uma senha ou não para o arquivo
  8. Agora vamos colocar a permissão correta:
    • seupc$: chmod 600 .ssh/id_dsa
  9. Agora enviando a chave pública para o servidor
    • seupc$: scp .ssh/id_dsa.pub user@IP_do_pi: (é necessário colocar o : após o IP)
    • Coloque a senha do servidor remoto
  10. Instalando a sua chave publica no computador remoto
    • raspberrypi$: cat id_dsa.pub >> .ssh/authorized_keys
    • agora estamos colocando a chave na pasta .ssh que foi criada anteriormente, e o proprio cat se encarrega de criar o arquivo authorized_keys
  11. Remover a sua chave do diretório Home
    • raspberrypi$: sudo rm -rf  id_dsa.pub
  12. Alterando as permissões sobre a pasta
    • raspberrypi$: chmod 700 .ssh
  13. Verificando se a conexão está funcionando:
    • seupc$: ssh User@IP_do_pi
    • Você deve ganhar acesso ao servidor sem a necessidade de senhas
    • OBS: Caso você tenha definido uma senha para as suas chaves (No passo 6) você deve fornecer essa senha para o seu computador
  14. Agora, vamos fazer algumas mudanças nas configurações do SSH do seu pi, para torna-lo um pouco mais seguro
  15. Primeiro vamos fazer um back do arquivo de configuração:
    • raspberry$: sudo cp /etc/ssh/sshd_config /etc/ssh/sshd_config.bak
    • Agora vamos tornar o arquivo como read-only para evitar perder as configurações de fábrica
    • raspberry$: sudo chmod a-w /etc/ssh/sshd_config.bak
  16. Agora vamos fazer as edições necessárias no arquivo de configuração:
    •  raspberry$: sudo nano /etc/ssh/sshd_config
  17. Primeiro vamos desabilitar a autenticação por senha, procure pela linha:
    • #PasswordAuthentication yes (no nano voce pode usar o comando ctrl + w para procurar por palavras ou frases no documento)
    • E altere para: PasswordAuthentication no (Retire o # e mude de yes para no)
  18. Segundo, vamos mudar a quantidade de informação que é armazenada no log de acessos, procure pela linha:
    • LogLevel INFO
    • e altere para: LogLevel VERBOSE
  19. Agora vamos para algumas modificações que são opcionais e vão depender muito de suas necessidades:
  20. Desabilitar Forwarding (TCP )
    1.  Por padrão nós podemos canalizar a conexão com a internet pela conexão SSH, por exemplo você poderia conectar pela internet com o seu computador e ativar um sessão de “remote desktop” e acessar se desktop. Isso é conhecido como “port forwarding”.
    2. Para desabilitar isso, procure pela linha:
      • AllowTcpForwarding yes
      • e mude para: AllowTcpForwarding no (Caso essa linha não exista basta adicionar ela ao final do documento)
  21. Desabilitar Forwarding (X11)
    1.  Por padrão você também pode iniciar aplicações que precisam de uma interface gráfica usando o ssh. Isso é conhecido como “X11 forwarding”.
    2. Para desabilitar, procure pela linha:
      • X11Forwarding yes
      • e mude para: x11Forwarding no (Caso a linha não exista basta adiciona-la no final do documento)
  22. Exibir um “banner” (aviso) no início da sessão
    1. Procure pela linha:
      • #Banner /etc/issue.net 
    2.  e altere para:
      • Banner /etc/issue.net
    3. agora editar o Banner que será exibido
      • raspberrypi$: sudo nano /etc/issue.net
    4. E coloque a mensagem a ser exibida
  23. Instale o UFW para lidar com as configurações do firewall do seu pi
    • raspberrypi$: sudo apt-get install ufw
  24. Agora rode o ufw para alterar as configurações do firewall
      • raspberrypi$: sudo ufw limit ssh
  25. Agora reinicie o sistema para salvar as alterações
    • raspberrypi$: sudo reboot
  • Resolvendo alguns problemas na instalação e configuração de arquivos usando o SSH
  1. Algumas falhas que ocorrem caso o locale pt_BR.UTF-8 não seja adicionado ao sistema, quando a conexão esta sendo feita via SSH:
  2. Execução do comando locale:
    •  raspberrypi$: locale (esse comando tem que ser executado por SSH)
    • Locale
    • Caso você receba o erro (via SSH):
      • Locale: Cannot set LC_ALL to default locale: no such file or directory
    • Continue a seguir as instruções, se não pule para a próxima parte.
  3. Resolvendo o problema, primeiro temos que ter acesso root
    • raspberrypi$: sudo -i
  4. Execute os comandos aptitude update e dist-upgrade
    • raspberrypi#: aptitude update && aptitude dist-upgrade
  5. Após a atualização vamos começar a correção
  6. Execute os comandos:
    •  raspberrypi#: locale-gen en_US en_US.UTF-8 pt_BR.UTF-8
    • raspberrypi#: dpkg-reconfigure locales
  7. Siga as instruções do comando locales, adicione en_US.UTF-8 e pt_BR.UTF-8 na lista e finalize.
  8. Reinicie a conexão ssh e o problema deverá ter sido resolvido
    • locales fixed

————————————————–
REFERÊNCIAS:

http://inside.mines.edu/fs_home/gmurray/HowTo/sshNotes.html

https://help.ubuntu.com/community/SSH/OpenSSH/Configuring#Introduction*/

http://mariano.eng.br/erro-cannot-set-lc-all-to-default-locale/

 

Advertisements