MANUAL SEGURIDAD SSH EN DEBIAN Para esta configuración lo primero que debemos hacer es instalar SSH para el servidor y para el cliente.
Luego generaremos las llaves para poder acceder a otros servidores ssh y que los clientes accedan el nuestro.
Mientras el sistema genera las claves nos pedira la clave para las llaves. Acontinuacion podremos ver que se generaron dos llaves la privada y la publica que la enviaremos a nuestro cliente para poder acceder a el.
Ahora crearemos el archivo “authorized_keys” que es donde agregaremos la llaves publicas de los servidores que se quieren conectar a nuestro equipo.
En el archivo “/etc/ssh/sshd_config” debemos descomentar y cambiar algunas líneas para tener un optimo funcionamiento de nuestro servidor SSH. Port 22 --> puerto por donde escuchara el ssh. Protocolo 2 --> Cuando se utiliza el protocolo 2, primeramente se intenta con la autenticación del host, luego por la clave publica/privada y finalmente por password. ListenAddress 0.0.0.0. --> Para que escuche por todos lo direcciones que se conecte a este servidor. HostKey /etc/ssh_host_rsa_key --> Archivo que contiene las llaves privadas rsa del host a usar. HostKey /etc/ssh_host_dsa_key --> Archivo que contiene las llaves dsa del host a usar. KeyRegenerationInterval 1h --> Indica cada cuantos segundos el servidor regenera las llaves, para evitar el que se puedan descifrar sesiones capturadas y luego usarlas. Nunca se guarda en disco. ServerKeyBits 768 --> Especifica el numero de bits de la clave del servidor. SyslogFacility AUTH --> SyslogFacility AUTH y LogLevel INFO --> Tipo de logueo actividades. LoginGraceTime 2m --> Tiempo que espera el servidor para desconectar el cliente si no se a logueado correctamente. PermitRootLogin yes --> Permitir o denegar el logueo del usuario root. StrictModes yes --> SSh comprobara que los archivos tienen los permisos correctos, para evitar tener archivos con todos los permisos a todos los usuarios. RSAAuthentication yes --> Permite la autenticación solo por RSA. PubkeyAuthentication yes --> Permite la autenticación por la clave publica solo v2 AuthorizedKeysFile --> Se ingresa la ruta donde esta el archivo que contiene las claves para la autenticación. RhostsRSAAuthentication no --> Autenticación por rhost HostbasedAuthentication no --> Es para la utilización del protocolo de autenticación por host. IgnoreUserKnownHosts no --> Especifica si SSH puede ignorar los usuarios del archivo Known_hosts durante la autenticación durante RhostsRSASuthentication o HostbaseAuthentication. IgnoreRhosts yes --> Especifica si los archivos .rhost o .shost que no pueden ser usados en RhostsRSASuthentication, HostbaseAuthentication y RhostAuthentication. PasswordAuthentication yes --> Especifica si el password de
autenticación es permitido por defecto es "si" PermitEmptyPasswords no --> Cuando es password de autenticación es permitido, este especifica si el servidor permite el acceso a cuentas con la contraseña vacía. Listo al configurar esta líneas terminamos con la respectiva configuración del openssh. Reiniciamos el openssh. Luego enviaremos nuestra llave publica el cliente y este la agregará al final de su archivo “authorized_keys” para que nuestro servidor pueda acceder a este con la llave que le mandamos.
Para que es cliente reciba nuestra llave nos pedirá la contraseña del administrador de el cliente para autorizar la transferencia y nos indicará que esta se hizo como esperábamos.
Luego de que el cliente agregue nuestra llave pública en su “authorized_keys” podremos loguearnos en su sistema con nuestra llave a través de SSH.
Para entrar solo tendremos que escribir la clave que indicamos al generar las llaves.