Logins remotos pela rede sem password, usando o Putty

16 Comentários

Como já tive oportunidade de referir, sou um “viciado” em SSH para acesso remoto as minhas máquinas. O SSH (Secure Shell) também conhecido como Secure Socket Shell é um protocolo/aplicação que permite de forma segura aceder remotamente a uma máquina Linux. Como é normal, a identificação perante uma máquina remota é realizada através de um utilizador e password, mas hoje vamos mostrar uma forma que nos permite aceder remotamente a uma máquina recorrendo a chaves públicas/chaves privadas.

ssh_10

Como configurar o SSH para aceder sem user/password?

Para este exemplo vamos considerar uma máquina com Windows 7 (Win7) e o servidor com Linux (Linux). De forma simples, pode dizer-se que o processo consiste na utilização de duas chaves: uma pública, que serve para encriptar a informação, e uma chave privada que serve para abrir/desencriptação a informação.

No Windows 7

Passo 1 – Fazemos o download do PuttyGen, aqui para gerar o par de chaves (publica/privada). Abrimos o programa, definimos o tamanho da chave para 2048 por questões de segurança (ver aqui), e em seguida carregamos no botão Generate.

ssh_0

Nota: Para ser mais rápida a criação do par das chaves, deve mover o rato no painel onde diz No Key.

ssh_1

Depois de geradas as chaves vamos guardar as mesmas numa pasta na nossa máquina (Win7).

ssh_4

Com o notepad, abrimos o ficheiro key.ppk e vamos copiar a chave pública (Também o podíamos fazer através do ficheiro key.pub). Copiamos a informação que se encontra entre Public-Lines e Private-Lines.

ssh_5

No Linux

Vamos à directoria do utilizador e abrimos o ficheiro (/home/<user>/.ssh/authorized_keys) e incluímos a chave publica obtida anteriormente. Devemos ainda colocar antes da ichave a string ssh-rsa (espaço antes e depois).

ssh_6

 

Putty no Windows 7

Vamos  agora ao Putty e efectuamos as seguintes configurações:

Em Connection—>SSH –>Auth, indicamos a chave privada.

 ssh_7

Em Connection—>Data, indicamos qual o utilizador a autenticar

ssh_8

E está feito. Agora é só estabelecer uma ligação remota segura do Win7 ao Linux.

ssh_9

Artigos relacionados

Partilhar:
Tags:

Comentários

16

Deixe um comentário

O seu endereço de email não será publicado. Campos obrigatórios marcados com *

  1. Avatar de Sun II
    1. Avatar de Sun II
      Sun II

      Fica so a dica que, em vez de abrir ficheiros e andar a meter e copiar espacos, é só copiar o que o puttygen dá

    2. Avatar de leitorassiduo
      leitorassiduo

      X2 😀

      E logo eu que só uso o putty 34234325 vezes por dia 😛

  2. Avatar de BMJ
    BMJ

    Fantástico…. Tutoriais Linux são sempre bem-vindos…. Obrigado

  3. Avatar de Alexandre Alves
    Alexandre Alves

    Pequena correcção, isto não é válido SÓ para linux mas sim para qualquer sistema UNIX que tenha um servidor ssh.

    1. Avatar de Pedro Pinto

      Isso não é uma correcção, é um UPDATE 🙂

  4. Avatar de tbogas
    tbogas

    Bom post,

    Para quem tem muitas ligações aconselho:

    PuTTY Connection Manager – http://puttycm.free.fr/cms/

    Experimentem.

  5. Avatar de DreamWave
    DreamWave

    Podem carregar as chaves no pageant do putty.

    Assim nao é necessário indicar a chave de cada vez que ligam a um servidor.

  6. Avatar de MGD
    MGD

    Olá, no texto:
    No Linux

    Vamos à directoria do utilizador e abrimos o ficheiro (/home//.ssh/authorized_keys) e incluímos a chave publica obtida anteriormente. Devemos ainda colocar antes da ichave a string ssh-rsa (espaço antes e depois).

    o ficheiro não é o /home//.ssh/authorized_keys
    mas sim:
    /home//.ssh/authorized_keys2

    Bom trabalho 😉

    1. Avatar de Pedro Pinto

      @MGD
      tens de indicar de quem é essa home.

      no meu caso por exemplo e para o utilizador ppinto:
      /home/ppinto/.ssh/authorized_keys

    2. Avatar de Ricardo Elias
      Ricardo Elias

      O authorized_keys era usado para versoes 1.x do OpenSSH, e o authorized_keys2 para as versoes 2.0.

      Desde a versao OpenSSH 3.0 que o authorized_keys2 foi “deprecated” (2001), mesmo que continue a usa’-lo.

      Portanto, se nao tiveres nada no authorized_keys sempre podes usar:

      $ mv authorized_keys{2,}

      Ou continuar a usar um ou outro. Eu ja’ actualizei os meus.

      PS: Excelente Post!

      Fica bem!

  7. Avatar de Nuno Peralta

    Não me levem a mal, mas eu não acho que este artigo esteja bem explícito.

    1) “Com o notepad, abrimos o ficheiro key.ppk e vamos copiar a chave pública”
    Para quê? No resto do artigo não diz porque é que copiamos a chave.

    2) “deve mover o rato no painel onde diz No Key”
    Não vi nenhum sítio a dizer “No Key”

    3) “Putty no Windows 7, Vamos agora ao Putty e efectuamos as seguintes configurações:”
    Isto já é no outro computador onde me quero ligar, ou é neste que eu estou a permitir a ligação?

    4) “E está feito. Agora é só estabelecer uma ligação remota segura do Win7 ao Linux.”
    Como é que estabelecemos a ligação?


    Agora, só como adicição, “por questões de segurança (ver aqui)” – “ver aqui” não está ligado a nenhuma página.

    Mais uma vez, por favor não me levem a mal. Apenas são dúvidas que me surgiram ao ler o artigo.
    Parabéns pelo artigo, na mesma, pois anteontem eu queria fazer isto para poder vir ao meu computador a partir da faculdade 🙂

    Obrigado.

    1. Avatar de Pedro Pinto

      Boas Nuno,

      Na boa, as críticas construtivas são sempre bem aceites até para mantermos um trabalho mais profissional. Vamos la ver então

      1) Teremos de passar a chave publica para o lado do servidor. Em termos gerais a chave publica é sempre conhecida de todos no entanto a informação só é desencriptada com a chave privada.

      2) imagem 2 (no Putty Key Generator)

      3) Tens um windows e um Linux. No Windows abres o putty.

      4) crias uma sessão (Session, metes IP da maquina) no Putty e defines os parâmetros extra definidos nas imagens acima. depois voltas a Session e fazes LOAD.

      5) Essa foi mesmo esquecimento. O link é para o artigo da quebra do RSA.

      Este artigo foi elaborado considerando que já se domina um bocadito o Putty. Considero que faltou no artigo como se cria uma sessão.

      Obrigado pelos reparos

      1. Avatar de Nuno Peralta

        Desde já obrigado pelas respostas! Eu uso o Putty para o meu servidor, mas não o domino nem de perto 😛

        1) Pois, eu pensei isso, mas, no entanto, continuo sem saber para ONDE é que a copio. Quando faço ligação para o meu servidor, ou para a minha conta na faculdade, apenas preciso de username + password.

        2) Got it! 🙂

        3) Yah, mas é no mesmo computador onde comecei o artigo, ou é no computador onde quero fazer a ligação para aqui? Agora estou a assumir que é tudo no mesmo.

        4) Ok, vou tentar entender/procurar sobre isto.

        Mais uma vez obrigado 🙂

  8. Avatar de Francis
    Francis

    Bom dia
    O exemplo prático apontado pelo Nuno Peralt parece-me interessante.
    Há uma coisa que não percebo, no artigo não há indicação onde colocar o IP do host :S
    Ou seja ligar-se de casa para a universidade ainda não é desta

    Estou certo ou errado?

    Cheers