- ssh sem senha
+ Responder ao Tópico
-
ssh sem senha
Administro servidores Linux remotamente via ssh... e acontece um incoveniente de ficar digitando as senhas q variam de 30 a 60 caracteres... lembro de ter lido em algum lugar q eu poderia criar uma chave e nao precisar digitar a senha... alguem sabe alguma coisa sobre isto? Tem alguma maneira de me conectar no servidor remoto sem precisar ficar digitando a senha?
Agradeço
-
ssh sem senha
((
Vc pode configurar o ssh no modo user/password ou por user/chave
Qual vc quer?
Se for chave vc vai ter que digitar sempre a chave
se for user/pasword dá até para criar um user com senha pqn....
))
-
ssh sem senha
((
Completando minha resposta:
Só para lembrar - quem se conectar no seu servidor via ssh e digitar apenas seu nome de login e der enter na senha entrará no seu servidor, mas já que é isso que vc quer vamos lá......
Você vai ter que alterar o modo de autenticação de senha para chave
# linuxconf
-> Opções de segurança
-> Autenticar com senha (NO)
Agora sua autenticação é via frase
Então vamos criar sua frase VAZIA.
Como usuário
Crie sua chave:
$ ssh-keygen
Dê enter na frase, isto é, somente enter, sem mais nada!!!
Proteja este arquivo criado
$ chmod 700 ~/.ssh/identity
Crie sua chave pública
$ cp ~/.ssh/identity.pub ~/.ssh/authorized_keys
Proteja sua chave:
$ chmod 600 ~/.ssh/authorized_keys
Obs:
Para usar o comando "cp" com "ssh", use então o "scp".
$ scp arquivo <a href="mailto:user@servidor:/diretorio/arquivo">user@servidor:/diretorio/arquivo</a>
Para se logar:
# rpm -ivh openssh-clients
$ ssh <a href="mailto:user@servidor">user@servidor</a>
))
-
ssh sem senha
ehhehe e ai vai mais uma do campeao de posts aqui no forum UAHuah <IMG SRC="images/forum/smilies/icon_smile.gif"> valeu paulo pela ajuda a comunidade <IMG SRC="images/forum/smilies/icon_smile.gif">
-
ssh sem senha
Aqui vai a minha dica para as conexoes no SSH sem a utilização de password, ha alguns anos
tive dificudades nessa materia, naquela altura nao havia documentação que ajudasse.
O meu aparte vai como um comentario a resposta postada pelo colega Paulo Grilo, onde os
mais novos no assunto seriam capazes de ter dificudades de onde por os respectivos files
ao trabalhar com varios servidores.
SSH
[Serv A] ---------> [Serv B]
00.
Supondo que o SSH (no caso concreto do OpenSSH) esta instalado e funcionando perfeitamente
em ambas maquinas a conexão se da do [Serv A] para o [Serv B].
O tipo de autenticação nesse caso usado eh o de chave publica/privada, em que quem quer se
conectar tem de necessariamente criar um par de chaves, e estas chama-se normalmete Identity
(chave Privada e que deve ser mantida em segredo "chmod 700"<IMG SRC="images/forum/icons/icon_wink.gif"> e Identity.pub (chave publica,
que voce disponibilizara para o resto do mundo).
No diretorio de configuração [Serv B] do OpenSSH /etc/ssh/sshd_conf (no Debian) rever os
parametros de autenticação, nomeadamente esses dois:
RSAAuthentication yes
PubkeyAuthentication yes
01.
No Serv A correr o "ssh-keygen" por exemplo da seguinte maneira
[Serv A]> ssh-keygen -t dsa -b 2048 -C mcorrea@srv_a -f id_dsa_2048_srv_a
E quando for pedida a "passphrase", simplesmente tecle ENTER, para criarmos as chaves com
passphrase vazia.
Esse processo nao quer dizer que a sua password seja vazia, mas somente que com a chave
criada nao eh pedida a passphrase quando se conectar.
a proxima etapa é por a chave privada no diretorio .ssh/ do utilizador [Serv A] que ira
se logar ao [Serv B].
Isso conclui todo o trabalho no [Serv A].
02.
Nesta fase iremos fazer o upload da chave publica criada no [Serv A] para o [Serv B], e
iremos coloca-la dentro do file .ssh/authorized_keys (file onde estaram todas as chaves
publicas que poderão se conectar a esta conta no [Serv B]) do utilizador com o que voce
ira se logar (ssh user@machine).
[Serv B]> cat id_dsa_2048_srv_a.pub >> authorized_keys
Caso esteja intereresado em se conectar a partir de uma maquina windows (no meu caso com
o SecureCRT) faça o upload (para o servidor onde pretende-se conectar [Serv B]) da chave
publica criada a partir do SecureCRT (no meu caso Identity.pub), e a converta para o
formato entendido pelo OpenSSH, e a ponha dentro do authorized_keys
[Serv B]> ssh-keygen -i -f Identity-dsa-2048.pub > new_id4openssh.pub
[Serv B]> cat new_id4openssh.pub >> authorized_keys
03.
Finalmente a partir do [Serv A] podera se conectar sem password ao [Serv B]
[Serv A]>ssh user@Serv_A
[Serv B]>
Note que a segurança esta na chave privada, quem tiver acesso a ela podera se logar ao
servidor em questão [Serv B] sem nenhum contratempo.
Em sintese, os dados sao codificados com a sua chave publica e so poderao ser
descodificados com a sua chave privada, a chave privada fica contigo (bem guardada)
e a chave publica vai para o authorized_keys da outra maquina.
espero ter ajudado...