Secure Shell (SSH)

 ¿Qué es?

Hace mucho tiempo, cuando el internet no había madurado, la mayoría de las redes de computadoras eran locales. Generalmente estaban limitados físicamente a un área geográfica, como una universidad o una oficina. Como las redes estaban protegidas físicamente, no necesitaban mucha protección ni encriptaciones.

Sin embargo, con la popularización del internet, la mayoría de las conexiones se volvieron "no privadas". Entonces surgió la necesidad de crear un nuevo protocolo de comunicación más seguro; a raíz de todo esto, Secure Shell o SSH por sus siglas nació.

Existen dos versiones de SSH, la primera fue denominada obsoleta por cuestiones de seguridad. En la actualidad, cuándo alguien se refiere a SSH, se refieren a la segunda versión de SSH.

¿Cómo utilizarlo en la práctica?

SSH generalmente solo se utiliza para acceder a servidores remotos. Windows, MacOS y la mayoría de las distribuciones de Linux utilizan open-ssh como el cliente default de SSH.

Una vez tienes una computadora a la cual quieres conectarte, solo debes conocer su dirección IP. Luego, te pedirá tu usuario y contraseña. Únicamente debés correr el comando: “ssh dirección-ip-destino”.

Pero si sueles utilizar ssh frecuentemente, puedes generar una llave SSH. Utilizando esa llave, puedes conectarte a un servidor sin necesidad de tener que escribir la misma contraseña. Además, usar llaves SSH tiene fuertes ventajas de seguridad.

Para generar tu propia llave SSH, únicamente tienes que correr el comando “ssh-keygen -t ed25519”. Esto va a generar dos archivos, una llave pública y una llave privada. La llave privada únicamente la tienes conocer tú. No debes subirla en ningún sitio y tiene que estar bien protegida.

Por otro lado, tienes que colocar tu llave pública en las máquinas a las que te deseas conectar. En máquinas Linux, las llaves públicas se suelen colocar en “~/.ssh/authorized_keys”.

Usos

Personalmente, solo utilizo conexiones SSH en dos ocasiones: la primera es cuando me tengo que conectar a un servidor. Este servidor puede ser mi Rasbperry Pi, una instancia EC2 o una máquina virtual.

La segunda situación es cuando utilizo SSH para conectarme a Github. Si no utilizas SSH, cada vez que haces un push o pull desde la terminal, te pedirá ingresar tu contraseña y usuario. 

 

-Oz

No hay comentarios:

Con la tecnología de Blogger.