Parte 4a - Asegurando SSH (Sistema Operativo Windows)

SSH proporciona una opción de autenticación que utiliza un par de claves pública / privada de RSA. Esto le permite bloquear su nodo seguro/super nodo, para que solo sea accesible a través de SSH mediante la clave privada, lo que impide todo acceso basado en contraseña. Si bien esto proporciona un nivel adicional de seguridad al acceder a su nodo de forma remota, se debe tener cuidado para evitar el bloqueo de su nodo. Si ya tiene un par de claves pública / privada SSH RSA existente, puede optar por usar ese par de claves para acceder a su nodo. Si no está seguro, pregunte en Discord o mediante un ticket zenhelp antes de continuar con estos pasos.

** ESTA ES UNA ADVERTENCIA IMPORTANTE - ASEGÚRESE DE COMPRENDER LO QUE ESTÁ HACIENDO ANTES DE CONTINUAR - POR FAVOR LEA EL TEXTO QUE APARECE A CONTINUACIÓN DE ESTA ADVERTENCIA **

** ASEGÚRESE de ABRIR UNA SEGUNDA SESIÓN DE TERMINAL (DEL PASO 10) en su máquina local y está conectado a su nodo con AMBAS sesiones de terminal mientras sigue estos pasos **


NOTA: Esta pagina solo aplica para las terminales PuTTY en Windows 7 64-bit y versiones más recientes, para usuarios de Mac OS y Linux porfavor vea:


DescripciónComando

Genere un par de llaves SSH - los pasos del 4 al 7 y del 10 al 13 se realizan en su máquina local, no en el nodo 

1

Los pasos 1 - 13 son un requisito previo para asegurar SSH en los pasos 15 y 16 a continuación, la intención es generar un par de llaves RSA para desactivar el acceso a la contraseña a través de SSH.

Asegúrese de que todavía está conectado con su primera sesión de terminal (abierta en la Part 2)

Una segunda terminal será usada después del paso 10


En su Nodo

2Crea un directorio .ssh y adentro del directorio un archivo llamado authorized_keys (llaves autorizadas)
mkdir -p ~/.ssh; touch ~/.ssh/authorized_keys; chmod 700 ~/.ssh
3

Edita el archivo de authorized_keys (llaves autorizadas) utilizando nano


NOTA: Minimiza esta terminal y procede con los siguientes pasos.

nano ~/.ssh/authorized_keys

En su Máquina Local

4

Abre PuTTYgen al navegar en la carpeta de PuTTY (64-Bit) dentro de las aplicaciones en el menú de inicio (start). Si te encuentras en windows 10, dale click a inicio (start) y escribe puttygen

5

NOTA: Si usted ya tiene una llave existente usado para otros nodos, presione "(Load)" y navega a tu archivo “.ppk”, abrelo e introduce tu contraseña para cargar la llave privada, después saltar al paso 7 para continuar. 

NOTA: Si usted no tiene una llave, continue con lo siguiente.

Dentro de "Parameters", selecciona RSA y en el campo "Number of bits" introduce 2048.

  • Da Click en “Generate” y mueve el cursor para generar aleatoriedad para crear su par de llave privada/pública.
  • Si usted ya tiene la llave, es recomendado respaldarla lo mas antes posible, ver los enlaces en el paso 4 de abajo.

6

Crea un “Key Comment” (que te ayude a recordar la contraseña) y una contraseña fuerte en el campo “Key passphrase" y vuelve a introducir la contraseña en el campo "Confirm passphrase".

¡NO PIERDAS ESTA CONTRASEÑA Y NO SE RECOMIENDA QUE NO SEA LA MISMA QUE LA CONTRASEÑA DEL USUARIO!

Da click en el botón “Save private key” y guardar el archivo ".ppk" en una ubicación segura, como en un usb encriptado.

7

Click derecho en el texto de la llave en la caja de texto nombrada "Public key for pasting into OpenSSH authorized_keys file"

Da click en Da click en "Seleccionar Todo (Select All)"

Click derecho en el texto nuevamente y selecciona “Copiar (Copy)”


En su nodo

8

Regresa a la terminal PuTTY minimizado en el paso 3

Pega la llave privada que fue copiada en el paso de arriba en la terminal PuTTy dando click derecho dentro de la ventana.

Salve el archivo y salga de el presionando las teclas Ctrl+X, presiona "y" y presiona intro (enter).

9

Actualiza los permisos de los archivos.


NOTA: Minimiza esta terminal y procede a los siguientes pasos.

Mantenga la terminal corriendo en segundo plano hasta que termine la página.

chmod 600 ~/.ssh/authorized_keys

En su Máquina Local

10

Empiece PuTTY para tener una SEGUNDA VENTANA DE TERMINAL e introduzca el <USER>@<FQDN>  dentro del campo de "Host Name".

  • Substituir <USER> con su usuario que no es root de su nodo, remover los <brackets>.
  • Substituir <FQDN> con el Nombre de Dominio Completamente Calificado de su nodo, remover los <brackets>.
  • Asegura que en el campo “Port” este configurado a 22, que "Connection type" sea SSH y "Close window on exit" se encuentre marcado como “Always”
  • Introduzca un nombre para el nodo seguro/super nodo dentro del campo "Saved Sessions" y da click en "Save".

11

Cargue su sesión, previamente salvada creada en el paso 10 y cargue su llave privada dentro de la sesión.

  • Selecciona la sesión del nodo sobre la caja de texto de “Saved Sessions” y presione “Load”
  • Expande la categoría "Connection" y "SSH" y selecciona "Auth" dentro del panel de ventana izquierdo, llamado "Category".
  • Da click en "Browse" dentro del panel de ventana derecho y navega al archivo .ppk, creado en el paso 4, para poder abrirlo.

12

Salve los cambios realizados en el paso 11 en la sesión.

  • Regresar a la parte superior dentro del panel de ventana izquierdo llamado "Category" y selecciona “Session"
  • Asegurarse de tener sobre el campo "Host Name (or IP address)", tenga el <USER>@<FQDN>
  • Dentro de la caja de texto "Saved Sessions" en la derecha, seleccione su sesión de la lista y presione "Save".
  • Una vez que su sesión se salve, puede dar click a “Load” y después "Open" para conectarse con su nodo.

13

Introduzca su contraseña para la llave creada en el paso 4, notaras que se desplegará en la termina el “Key Comment” elaborado en el paso 4.

Si usted no ve el “Key Comment”, regrese y revise de nuevo su trabajo.

Repita los pasos de inicio de sesión en los pasos 12 y 13 cuantas veces sea necesario para que se usted se sienta confiado que no está ingresando con la contraseña del USER, sino con la contraseña de llave RSA. Si usted falla en completar este paso, resultará en bloquearse el acceso de su nodo seguro/super nodo. 


En su nodo

14

NOTA: Proceda con los pasos 15 y 16 SOLAMENTE si has establecido un inicio de sesión con la llave Y REVISADO QUE USTED PUEDE ACCESAR CON LA CONTRASEÑA DE LA LLAVE RSA (NO LA CONTRASEÑA DEL USUARIO)

15

Edite el archivo sshd_config para asegurar el daemon SSH


NOTA: La contraseña de clave RSA solo se usa para iniciar sesión en su nodo seguro/super nodo, todas las demás solicitudes de contraseña requerirán su contraseña de usuario no root

Copy and paste the entire block

sudo sed -i '/PermitRootLogin/d' /etc/ssh/sshd_config && \
sudo sed -i '/PasswordAuthentication/d' /etc/ssh/sshd_config && \
sudo sed -i '/ChallengeResponseAuthentication/d' /etc/ssh/sshd_config && \
echo -e "PermitRootLogin no\nPasswordAuthentication no\nChallengeResponseAuthentication no" | sudo tee -a  /etc/ssh/sshd_config
16Reinicie el SSH con la nueva configuración


sudo systemctl restart sshd

Parte 4a de 11 - Securing SSH (Windows Systems)



© 2019 Horizen. All rights reserved.