RedHat viene por default con OpenSSH que básicame es el software que nos permite hacer uso del protocolo SSH para comunicarnos. El problema es que su configuración por default no es la más segura, así que con un poco del poder de google y modificando unos archivos de configuración puedes mejorar la seguridad de tu server. Vamos pues a los consejos.
Archivos de configuración
Lo primero que tenemos que saber es que archivos usa OpenSSH y donde estan.
/etc/ssh/sshd_config es el archivo de configuración para el server de OpenSSH
/etc/ssh/ssh_config es el archivo de configuración para el cliente de OpenSSH
IMPORTANTE
En este momento nos interesa el server, que es el que proporciona el servicio y al que alguien podría ingresar. Así que los que modifiquemos será del archivo de configuración del server
/etc/ssh/sshd_config
Consejo #1 Cambiar el puerto por defecto
El puerto por defecto que usa SSH es el 22, no es extraño que algún script kiddie se encuentre un programita para atacar servicios y lo corra, digamos contra ssh, estos van a ir a escanear el puerto 22, así que es básico cambiar el puerto, algunas personas suguieren que esta práctica es inútil por que es Security by Obscurity, no es realmente mas seguro solo lo estas escondiendo, pero es una primera capa de defensa aunque sea contra los intrusos mas inexpertos, de igual manera yo lo recomiendo.
Busca la línea que dice Port y cambia el número de puerto
Port 1234 ListenAddress 192.168.1.5 ListenAddress 202.54.1.5
Si lo deseas aquí mismo podemos poner cuales ips debe escuchar OpenSSH, por ejemplo mi server en el trabajo tiene 2 tarjetas de red, si ambas tiene IP pero solo quieres que se use SSH por solo una de ellas, escribe la IP en esa línea "ListenAddress" estos no es necesarío, en mi caso tengo las NICs en bonding por lo cual ambas tarjetas responden a la misma IP estática definida para el server. (Hablare de bonding en otro post =P )
Consejo #2 Limitar usuarios
Por default todos los usuarios del sistema tienen derecho a conectarse por SSH, aunque esto puede ser práctico, en la mayoría de los casos no es necesario y puede presentar un problema de seguridad, así que es mejor solo permitir que los usuarios que tu le digas se puedan conectar por SSH.
AllowUsers jorge luis jose
Separados por espacios
Consejo #3 Deshabilitar el login de root
Este es básico y super importante, en ningún momento te conectes directamente con tu cuenta de root a tu server, es mejor conectarte por medio de tu cuenta normal y luego escalar a root desde dentro del server, así que deshabilitemos el login de root. Recordemos que al usar SSH la información va encriptada pero aún así es mejor prevenir =P. Además si usamos sudo para escalar privilegios root recivira unos correos bien nice con información de quien corrio que comando bajo sudo esto es genial para el monitoreo de seguridad.
PermitRootLogin no
Consejo #4 No permitas passwords en blanco
Esta también es super importante, es común que algunos dejen passwords en blanco por flojera, comodidad, etc, pero esto es pésimo para la seguridad de un server, así que para estar seguros deshabilitamos el uso de passwords en blanco
PermitEmptyPasswords no
Consejo #5 Uso del protocolo 2 de SSH
El protocolo 1 tiene problemas seguridad, mas info aquí, este protocolo es viejo y obsoleto,esta permitido para ser compatible con clientes que aún lo usen. No es necesario es mejor permitir solo el protocolo 2 que da mayor seguridad y su uso esta muy extendido.
Protocol 2
Por último el consejo más simple de todos
Consejo #6 Usa passwords FUERTES!!
Aunque parece obvio para la mayoría de nosotros, no lo es así para todos, elimina la posibilidad de ataques por fuerza bruta usando passwords fuertes, no uses palabras comunes como password, carro, amor o similares para evitar ser victima de un ataque por diccionario, informate un poco al respecto usa un password fuerte pero que puedas recordar, pro ejemplo.
miABU3LITAmeDIJOqueSI3MPR3meLAVARAlosDI3NT3S0?#
Las frases mezcladas son más faciles de recordar que esto por ejmplo:
#$%TGHJU(nh98nyyas3U/&(Hioj90/UHB%$N4v
Para terminar, reiniciamos el server de ssh como root
# service sshd restart
Y listo, mejoramos la seguridad de nuestro server y solo nos tomo unos minutos, por supuesto que ahy más consejos de seguridad que puedes emplear como usar passwordless login con keys y ahy otros más, por lo pronto estos son los que yo uso en este momento, igual les dejo un link de referencia de alguién que sabe mas que yo =P nos vemos.
Sigue leyendo:
y yo creia que ssh era algo asi como cuando le dices a alguien que se calle! OMG WTF BBQ cuanto aprendizaje saludos surfer!
ResponderEliminar