Como instalar y usar SSH en Linux?

En este tutorial te voy a enseñar a aprender a instalar y utilizar el SSH en Linux, vamos a:

  • Configurar tu computadora local con ssh
  • Configurar la computadora remota con ssh
  • Checar si el puerto SSH esta abierto
  • Transferir archivos entre computadoras con ssh

Para crear conexiones SSH tienes que correr el siguiente comando en la terminal:

ssh-keygen

Este comando lo que hace es crear una llave publica (id_rsa.pub) y una llave privada las cuales son NECESARIAS si queremos conectarnos mediante SSH.

Al poner el comando nos va a preguntar lo siguiente:

  • Donde queremos guardar las llaves? Por defecto nos ofrece la siguiente dirección: (/home/user/.ssh/id_rsa)
  • Como llamar la llave?
  • Nos pide poner una passphrase opcional

Podemos ver las recientemente creadas keys en el folder de la direccion que escogimos, para esto solamente poner el siguiente comando para ver archivos ocultos:

ls -l

Si pones el comando cat podras ver el contenido:

cat .ssh/id_rsa

o

cat .ssh/id_rsa.pub

Como agregar la llave a la computadora remota?

El metodo más seguro es con el siguiente comando:

ssh-copy-id -i ~/.ssh/id_rsa.pub usuario@tuipaddress

Te va a preguntar si quieres proceder copiando de tu computadora local a tu computadora remota y le pones que si.

Otro método es mediante el comando SCP, te pongo el comando a continuación:

scp ~/.ssh/id_rsa.pub user@tuipaddress:/~/.ssh/authorized_keys

OJO: Si ya usaste el las llaves ssh para conectarte a la computadora remoto, no te recomiendo utilizar el comando SCP ya que te va a reemplazar las llaves y no tendras el acceso que solias tener.

La forma más facil es literal copiar y pegar la llave publica en .ssh/authorized_keys utilizando el siguiente comando:

nano .ssh/authorized_keys

Sin embargo no se recomienda por que al copiar y pegar puedes eliminar algo o tener errores de dedos, pero si se te facilita puedes empezar con este método.

#1

Lo primero que tenemos que hacer, es ver si tienes configurado ya el SSH y eso lo puedes ver con el siguiente comando:

sudo systemctl status ssh

#2

El segundo paso que tienes que hacer, es instalar y configurar el SSH en la computadora de Linux (cliente) que vas a usar. Esta es tu computadora que vas a usar para conectarte a la computadora remoto.

#3

El tercer paso, es que hay que instalar el “openssh-client” y esto lo puedes hacer con el siguiente comando:

sudo apt install openssh-client

Si quieres usar Windows como cliente usa un software que se llama: Putty

#4

El cuarto paso es configurar la computadora a la que me quiero conectar, (la remoto). Para lograr esto, es necesario instalar el “openssh-server” y eso lo podemos hacer con el siguiente comando:

sudo apt install openshh-server

Una vez que este instalado el “openssh” te puedes asegurar que este corriendo con el siguiente comando:

sudo systemctl status ssh

Si no esta corriendo o prendido, simplemente “rebotealo” o “reinícialo” y esto lo puedes hacer con el siguiente comando:

sudo systemctl start shh

#5

El quinto paso es determinar el ip de la computadora remota. Es decir la dirección de la computadora a la que nos vamos a conectar. La forma mas fácil de lograr esto, es ver las configuraciones de red desde la IU. Si solo tienes acceso mediante la terminar de Linux, puedes utilizar el siguiente comando:

ip a

#6

El sexto paso, es ver si el Firewall o el corta fuegos, esta interfiriendo de alguna manera, ya que si no lo checamos podemos tener problemas de conexión. Esto lo podemos checar con el siguiente comando:

sudo lsof -i -P -n  | grep LISTEN

Si tienes un Firewall muy complicado, te dejo este comando que te puede ayudar a abrir el puerto 22, muy facilmente dese la terminal:

sudo ufw allow 22

Ahora la pregunta del millón, como nos conectamos a la computadora remota mediante el SSH?

En tu computadora Linux corre el siguiente comando:

ssh tusuario@tuipaddressqueanotamos

Después te pedirá la clave, así que solamente la pones y estarás dentro de la computadora remota y podrás trabajar con ella como si estuvieras enfrente de la computadora.

BONUS: Como configurar solamente llaves o keys para hacer login mediante SSH

Busca el archivo: /etc/ssh/sshd_config

Editalo con el comando “nano”

nano /etc/ssh/sshd_config

Busca con el comando control + W la palabra: PasswordAuthentication y cambialo de Yes a “NO”

Leave a Reply

Your email address will not be published. Required fields are marked *