InicioLinuxLogueo sin password por SSH

Logueo sin password por SSH

Linux2/17/2013

Logueo sin password por SSH


Hola Taringueros Linuxeros!

Aca les dejo un tuto para loguerse por ssh a una terminal remota por SSH, sin password en unos pocos pasos. Es algo copado para los que utilizan mucho este servicio ya que ahorra tiempo y evita pifiadas de clave.
En este caso host@local va a ser la terminal de donde vamos a efectuar el logueo y host@remoto es la terminal a donde nos queremos loguar.

0. Antes que nada, si no tienen el ssh arriba en la terminal remota, procedemos a instalarlo en forma local, los comandos a continuacion son sin sudo, o sea logueados como root, si no tienen el logueo como root habilitado usen sudo antes de cada comando:

Distros fork de Debian: apt-get install ssh
Distros fork de Red Hat: yum install openssh-server openssh-client
Distros fork de Arch: pacman -Sy openssh
Distros fork de Slackware: installpkg openssh-4.2p1-i486-1.tgz
Distros fork de Gentoo: emerge -av net-misc/openssh

Aclaraciones:

Para usuarios de Arch levantan el daemon invocando:

# rc.d start sshd



Y para que se levante al inicio despues de una rebooteada editan el archivo /etc/rc.conf añadiendo "sshd" a la siguiente fila

DAEMONS=(syslog-ng network netfs dbus gdm sshd crond)

Para usuarios de Gentoo levantan el daemon invocando:

# /etc/init.d/sshd start



Y para que se levante al inicio despues de una rebooteada:

# rc-update add sshd default



De todos modos si ven que el servicio no esta arriba, invocando cualquiera de estos 2 comandos en cualquier distro, deberían startear:

# service sshd start
# /etc/init.d/sshd start



Tambien vamos a necesitar saber la IP del host remoto, por ende tipeamos:

# ifconfig



Este comando imprime los datos de cada interfaz de red (eth0, wlan0, ppp0)

1. Desde la maquina de donde nos queremos loguear al host remoto, tipeamos sin necesidad de estar como root o invocando a sudo:

# ssh-keygen -t rsa



Rsa es el tipo de encryptación, pueden usar dsa si desean. Rsa loguea mas rápido pero es más seguro, dsa es a la inversa.

Lo anterior les va a producir algo como esto:


Generating public/private rsa key pair.
Enter file in which to save the key (/root/.ssh/id_rsa):
Enter passphrase (empty for no passphrase): ----> presionamos Enter
Enter same passphrase again: ---> Idem
Your identification has been saved in /root/.ssh/id_rsa. ---> yo estaba logueado como root, aca les puede aparecer su usuario
Your public key has been saved in /root/.ssh/id_rsa.pub. ---> Idem.
The key fingerprint is:
xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx host@local
The key's randomart image is:
+--[ RSA 2048]----+
| |
| . |
| . . |
| . + . o|
| . S O o .o|
| + + o .oo|
| .. . . .o|
| .o . o+|
| .. . oE|
+-----------------+



La key fingerprint es una combinación de números y letras

2. Ahora efectuamos los siguientes comandos. En donde dice "host" va el nombre del usuario "remoto" va la IP del host al que nos queremos loguear, por ejemplo [email protected]:

host@local: ssh host@remoto mkdir -p .ssh
host@remoto password: (aca tipean la password del host remoto)



host@local: cat .ssh/id_rsa.pub | ssh host@remoto 'cat >> .ssh/authorized_keys'
host@remoto password:



3. Con esto bastaría, prueben ahora loguearse. Algo más que se puede hacer para que sea todavía más practico es editar los alias de la bash (bash es el tipo de shell, al igual que sh o dash). El archivo se ubica en /home/user/.bashrc para los que esten con user común o /root/.bashrc para los que esten como root. La línea de texto va a ser añadida al final del archivo. Mi editor de preferencia es nano y yo voy a poner que me quiero loguear a proliant. Los alias son comandos que pueden ser creados por uno mismo, tambien pueden crearse algo con su gestor de paquetes de la misma manera

nano /home/user/.bashrc



alias proliant='ssh host@remoto'



Cerramos el archivo y en la terminal efectuamos el siguiente comando para que tenga efecto la mod (en la mayoria de los casos es bash la shell predeterminada:

/bin/bash



4. Probamos lo anterior introduciendo el comando que craeamos bajo alias:

# proliant



Y eso es todo, con esto conseguimos una forma más cómoda para loguearse por ssh.

Un dato que por ahi le sirva a alguno: cuando busquen tutos de como hacer las cosas, si aparece el signo "$" antes del comando significa que está siendo ejecutado como user, si aparece "#" es que está siendo ejecutado como root. Y los "#" que aparecen antes de una línea de texto en un archivo significa que están comentadas, por ende no tienen efecto a menos que la proceda un "!", esto se suele usar en los scripts y se denomina shabang, con eso se indica en que shell se va a efectuar, ej: #!/bin/bash".

ACLARACION: esto NO DEJA SIN PASSWORD al logueo por SSH, solamente la máquina que tenga la key fingerprint que está alojada en el host remoto en .ssh/authorized_keys. De otra manera NO puede loguearse ninguna otra persona sin tipear la password.

Saludos!
Datos archivados del Taringa! original
60puntos
521visitas
0comentarios
Actividad nueva en Posteamelo
0puntos
2visitas
0comentarios
Dar puntos:

Dejá tu comentario

0/2000

Autor del Post

f
fer_fiat🇦🇷
Usuario
Puntos0
Posts8
Ver perfil →
PosteameloArchivo Histórico de Taringa! (2004-2017). Preservando la inteligencia colectiva de la internet hispanohablante.

CONTACTO

18 de Septiembre 455, Casilla 52

Chillán, Región de Ñuble, Chile

Solo correo postal

© 2026 Posteamelo.com. No afiliado con Taringa! ni sus sucesores.

Contenido preservado con fines históricos y culturales.