FABIAN ESCALONA
  • HOME
  • SERVICIOS
  • BLOG
  • RECOMENDACIONES
  • CONTACTO

22/5/2020

ssh y mejores prácticas

3 Comentarios

Read Now
 
En este post mostrare como conectarse a un servidor nuevo vía ssh con las mejores prácticas. 

Parte 1 - Ten todos tus datos a la mano

Lo primero es tener los datos que vas a utilizar a la mano, como dirección IP del equipo, usuario, contraseña (que introdujiste al instalar el servidor) y el cliente SSH que utilizaras. En este caso voy a utilizar Putty como mi cliente para la conexión, me gusta este programa porque permite guardar sesiones y private-key. Para utilizar la llave privada de SSH necesitaremos convertir el archivo en formato ppk y para eso necesitaremos también el programa Puttygen que lo conseguiremos en la misma página de Putty.

Parte 2 – Inicia sesión
Abre el programa Putty y coloca la IP del dispositivo o el nombre del Server y haz click en“open”.
Imagen
Se va a abrir una ventana preguntando sobre si aceptas el nuevo Host, acepta el menaje y te aparecerá un terminal preguntando por usuario y contraseña, introduce los datos y ya estarás adentro del equipo.
Lo primero que vas a querer hacer es cambiar la clave del root

 passwd root

Te pedirá que coloques la contraseña dos veces, asegúrate de usar una contraseña fuerte que puedas recordar, de todos modos, vamos a deshabilitar el usuario root para iniciar sesión más adelante, pero debemos saber la contraseña para comandos sudo.

Parte 3 – Crea un nuevo usuario
Te recomiendo que crees un nuevo usuario para conexiones SSH y que este sea el único que pueda conectarse al equipo por esta vía. Todas las maquinas Linux tienen como usuario por defecto al root y una de las primeras líneas de defensas es crear un usuario para conexiones remotas y darle los mismos privilegios y luego deshabilitar al root para iniciar sesión vía remota.
Para crear un nuevo usuario solo debes usar el siguiente comando adduser seguido del nombre del usuario, en mi caso será sshescalona.

adduser sshescalona

Este comando te pedirá que crees una contraseña para el nuevo usuario y algunos datos adicionales del usuario si lo deseas. Ahora debes darle el privilegio del sudo.

usermod -aG sudo sshescalona

Ahora este nuevo usuario podrá ejecutar comandos sudo como administrador.

Parte 4 – Crear claves privadas
Ahora creemos nuestro par de claves pública y privada. La clave pública vive en el servidor, y la clave privada se usará para desbloquear el acceso desde cualquier dispositivo que lo necesite.
 
 ssh-keygen
 
Cuando se le pregunte dónde colocar el archivo, tome el valor predeterminado. Puede elegir si desea ingresar o no una frase de contraseña: tener una frase de contraseña significa que necesita tanto la clave privada como la frase de contraseña para obtener acceso. Proporciona una capa adicional de seguridad. Una vez que se hayan creado sus claves, las encontrará en /home/root/.ssh: debe haber archivos id_rsa (clave privada) e id_rsa.pub (clave pública) en ese directorio. A continuación, debemos copiar esa clave en la cuenta del usuario recién creado:
 
| ssh-copy-id sshescalona@[ip del servidor]

Elija "Yes" cuando se le pregunte si desea continuar e ingrese la contraseña de sshescalona cuando se le solicite. Este comando copiará la clave pública al directorio ~ / .ssh del usuario de sshescalona como un archivo de claves autorizadas. Ahora puede usar la clave privada para autenticarse con este servidor como usuario sshescalona.

Parte 5 – Modificar configuración de SSH
El siguiente paso es modificar la configuración de SSH para desactivar el acceso de usuario root y la autenticación de contraseña. Comience editando el archivo de configuración SSH:
 
nano -w /etc/ssh/sshd_config

Comienza cambiando el Puerto por defecto de SSH de 22 a cualquiera que no sea estándar, consigue la línea que dice
 
 #port 22
 
Y cámbiala a

Port [Puerto diferente]
 
Puedes cambiarlo a cualquier número de puerto como por ejemplo 2222, ahora baja un poco y consigue la línea que dice:
 
PermitRootLogin yes
 
Cambia el “Yes” a “No” esto deshabilitar al root para iniciar sesión con ssh, ahora baja un poco mas y busca la siguiente línea
 
#PasswordAuthentication yes
 
Remueve el # y cambia el “yes” a “no” esto desactiva la autenticación por contraseña (La autenticación por llave privada debería estar habilitada, lo puedes verificar buscando la línea PubkeyAuthentication y verifica que este en “yes”)
Presiona CTRL+X seguido de “Y” y enter para guardar y salir.
 
Reinicia el servicio
 
systemctl reload sshd

PARTE 6 - Descarga la llave privada
Ahora necesitamos descargar nuestra llave privada, primero veamos lo que aparece en nuestro documento id_rsa

cat ~/.ssh/id_rsa
Selecciona y copia todo el texto y pegalo en un nuevo block de notas y guarda el archivo en un lugar seguro, una vez guardado el archivo puedes eliminarlo del servidor con el siguiente comando 

rm ~/.ssh/id_rsa

PARTE 7 - Convierte la llave privada a formato PuTTY
Antes de que pueda usar su clave privada con PuTTY, debe convertirla al formato .PPK. Para hacer esto, utilizaremos otro programa gratuito de los creadores de PuTTY llamado PuTTYgen (puede descargarlo desde el mismo enlace que PuTTY arriba). Primero, ejecute PuTTYgen y haga clic en el botón "Cargar". Busque el archivo de clave privada que guardó en el paso 6. Cuando busque su clave privada, cambie el tipo de archivo que está buscando de 'Archivos de clave privada PuTTY (* .ppk)' a 'Todos los archivos (*. *). 'Abra su archivo de clave privada, y debería recibir un aviso de que la clave privada se importó correctamente. Haga clic en Aceptar para salir de esta notificación. Ahora, haga clic en el botón "Guardar clave privada" y guarde su clave privada como un archivo .ppk (generalmente solo uso el mismo directorio que usé para guardar la clave privada original). Ahora puede cerrar PuTTYgen.
Imagen
PARTE 8 - Inicia sesión con el nuevo usuario
Inicia una nueva sesión de PuTTY, en la nueva sesión colocas la IP del servidor y el puerto a numero que cambiaste en el paso 5 
Imagen
Luego, en el menú de la izquierda, expanda la sección "SSH" debajo de "Conexión", luego haga clic en "Auth." Aquí verá un lugar para buscar su archivo de clave privada PuTTY .PPK. Haga clic en "Examinar ..." y busque el archivo .PPK que creamos en la Parte 7.
Imagen
Una vez que haya cargado el archivo, vuelva a hacer clic en "Sesión" en la parte superior del menú de la izquierda. Si desea GUARDAR estos detalles de conexión, ahora debe ingresar un nombre descriptivo en el cuadro "Sesiones guardadas" y hacer clic en el botón "Guardar".
Ahora haga clic en "Abrir" y debería recibir un mensaje "Iniciar sesión como:". Ingrese el nombre del usuario que creó en la Parte 3 (en nuestro caso, fue sshescalona) y ahora debe conectarse al servidor. Si tiene una frase de contraseña en su clave privada, también se le solicitará esa frase de contraseña.

Ya tenemos una conexión segura ssh desde nuestro equipo con claves privadas ssh y el root deshabilitado, para aumentar la seguridad podemos trabajar un poco con las reglas de Firewall pero eso lo haremos en otro post.

Share

3 Comentarios
Juan Contreras
23/5/2020 03:56:58 pm

Excelente información, gracias por tu ayuda

Responder
Hazly Riera
31/5/2020 04:59:33 pm

Justo lo que estaba buscando, será de gran ayuda para mí laboratorio.

Responder
Matthew Michael link
12/10/2022 09:20:06 am

Trial hot may message. They debate middle yourself.
Rule occur fish send. Herself prepare summer dream parent action. Congress cup Congress strong prove our.

Responder



Deja una respuesta.

Details

    Autor

    Mi nombre es Fabian Escalona soy un ingeniero en redes y comunicaciones, cree este blog como un proyecto personal para compartir conocimiento y proyectos que desarrollo en mi trabajo diariamente, acá encontraras post sobre tecnologías, herramientas, opiniones y utilidades que he usado.

    Categorías

    Todos
    Instalación Y Configuración
    Mejores Prácticas
    Opinión

"Si usted piensa que los estudios son costosos, pruebe con la ignorancia"

​HOME

SERVICIOS

BLOG

​RECOMENDACIONES

CONTACTO

Copyright © 2020
  • HOME
  • SERVICIOS
  • BLOG
  • RECOMENDACIONES
  • CONTACTO