En el dรญa de hoy, les darรฉ algunos tips de como tener un servidor casero (o un poco mas grande) mรกs seguro. Pero antes de que me descuarticen vivo.
NADA ES TOTALMENTE SEGURO
Con esta salvedad bien definida, prosigo.
Voy ir por partes y no voy a explicar muy detenidamente cada proceso. Solo lo mencionarรฉ y aclararรฉ una que otra cosilla, asรญ podrรกn ir a Googlear con unaย idea mรกs clara de lo que buscan.
Antes y durante la instalaciรณn
- Es bastante recomendado que el servidor sea instalado lo mas ยซminimalยป posible. Asรญ prevenimos que estรฉn corriendo servicios que ni siquiera sabemos que estรกn allรญ, ni para que sirven. Esto asegura que toda la configuraciรณn corra por cuenta propia.
- Se recomienda que el servidor no sea usado como estaciรณn de trabajo cotidiana. (Con la que estas leyendo este post. Por ejemplo)
- Ojalรก el server no tenga un entorno grรกfico
Particionado.
- Se recomienda que las carpetas que son usadas por el usuario como ยซ/home/ยป ยซ/tmp/ยป ยซ/var/tmp/ยป ยซ/opt/ยป sean asignadas a una particiรณn diferente a la del sistema.
- Carpetas criticas como ยซ/var/logยป (Donde se guardan todos los logs del sistema) se ponga en una particiรณn distinta.
- Ahora bien, dependiendo del tipo de servidor, si por ejemplo es un servidor de correo. La carpeta ยซ
/var/mail
y/o/var/spool/mail
ยป deberรญa ser una particiรณn aparte.
La contraseรฑa.
Para nadie es un secreto que la contraseรฑa de los usuarios del sistema y/u otros tipos de servicios que las usen, deben ser seguras.
Las recomendaciones son:
- Que no contenga: Tu nombre, Nombre de tu mascota, Nombre de parientes, Fechas especiales, Lugares, etc. En conclusiรณn. La contraseรฑa no debe tener nada relacionado contigo, o cualquier cosa que te rodee o sea de tu vida cotidiana, tampoco nada relacionado con la cuenta en si.ย Ejemplo: twitter#123 .
- La contraseรฑa tambiรฉn debe cumplir con parรกmetros como: Combinar mayรบsculas, minรบsculas, nรบmeros y caracteres especiales.ย Ejemplo: DiAFsdยท$354โณ
Luego de tener instalado el sistema
- Es algo personal. Pero me gusta eliminar el usuario ROOT y asignarle todos los privilegios a otro usuario, asรญ me evito ataques a ese usuario. Siendo muy comรบn.
- Es muy practico suscribirse a una lista de correo donde anuncien bugs de seguridad de la distribuciรณn que uses. Ademรกs de blogs, bugzilla u otras instancias que te puedan advertir de posibles Bugs.
- Como siempre, se recomienda una constante actualizaciรณn del sistema asรญ como de sus componentes.
- Algunas personas recomiendan tambiรฉn asegurar el Grub o LILO y nuestra BIOS con una contraseรฑa.
- Hay herramientas como ยซchageยป que permite obligar a los usuarios a cambiar la contraseรฑa cada X tiempo, ademรกs del tiempo mรญnimo que deben esperar para hacerlo y otras opciones.
Hay muchรญsimas formas de asegurar nuestro PC. Todo lo anterior fue antes de instalar siguiera un servicio.ย Y solo mencione algunas cosas.
Existen manuales bastante extensos que vale la pena leer.ย para aprender sobre este inmenso mar de posibilidades..ย Con el tiempo vas aprendiendo una que otra cosilla. Y te darรกs cuenta que siempre falta.. Siempreโฆ
Ahora bien vamos asegurar un poco mรกs los SERVICIOS. Mi primera recomendaciรณn siempre es: ยซNO DEJAR LAS CONFIGURACIONES POR DEFECTOยป. Siempre entra a el archivo de configuraciรณn del servicio, lee un poco sobre que hace cada parรกmetro y no lo dejes tal cual se instala. Siempre trae problemas consigo.
Ahora bien:
SSHย ย (/etc/ssh/sshd_config)
En el SSH podemos hacer muchas cosas para que no sea tan fรกcil de vulnerar.
Por ejemplo:
-No permitir el login del ROOT(En caso que no lo hayas cambiado):
"PermitRootLogin no"
-No dejar que las contraseรฑas sean en blanco.
"PermitEmptyPasswords no"
-Cambiar el puerto por donde escucha.
"Port 666oListenAddress 192.168.0.1:666"
-Autorizar รบnicamente a ciertos usuarios.
"AllowUsers alex ref me@somewhere"
ย El me@somewhere es para obligar a que se conecte siempre desde una misma ip ese usuario.
-Autorizar grupos especรญficos.
"AllowGroups wheel admin"
Consejos.
- Es bastante seguro y ademรกs casi obligatorio enjaular los usuarios de ssh por medio deย chroot.
- Puedes tambiรฉn deshabilitar la transferencia de archivos.
- Limitar el numero de intentos de login fallidos.
Herramientas casi esenciales.
Fail2ban: Esta herramienta que estรก en repos, nos permite limitar el numero de accesos a muchos tipos de servicios ยซftp, ssh, apache.. etcยป banneando a las ip que excedan el limite de intentos.
Endurecedores: Son herramientas que nos permiten ยซendurecerยป o mas bien armar nuestra instalaciรณn con Cortafuegos y/u otrasย instancias. Entre ellos ยซHarden y Bastille Linuxยซ
Detectores de intrusos: Existen muchos NIDS, HIDS y otras herramientas que permiten prevenir y protegernos de ataques, mediante de logs y alertas. Entre muchas otras herramientas. Existe ยซOSSECยซ
Para concluir. Este no era un manual de seguridad, mas bien eran una serie de items a tener en cuenta para tener un servidor medianamente seguro.
Como consejo personal.ย Lean mucho de como ver y analizar LOGS, Y volvรกmonos unos nerds de Iptables. Ademรกs, entre mas Software se le instale al servidor mas vulnerable se hace, por ejemplo un CMS debe ser bien administrado, actualizรกndolo y mirando muy bien que clase de plugins le aรฑadimos.
Mas adelante quiero enviar post de como asegurar algo especifico. Allรญ si podre dar mas detalles y hacer la practica.
Guardado en favoritos!
Saludos!
Excelentes TIPS, bueno, el aรฑo pasado, instalรฉ en una ยซImportante LINEA AEREA NACIONALยป varios sistemas de seguridad y monitoreo y me sorprendiรณ conocer que a pesar de las varias decenas de millones de dรณlares en equipo (SUN Solaris, Red Hat, VM WARE, Windows Server, Oracle DB, etc), de seguridad NADA.
Usรฉ Nagios, Nagvis, Centreon PNP4Nagios, Nessus y OSSEC, la clave root era de conocimiento pรบblico, bueno, en un aรฑo quedรณ todo eso saneado, lo que valiรณ de ganar mucho dinero, pero aparte, mucha experiencia en este tipo de cosas. Nunca estรก de mรกs tener en consideraciรณn todo eso que acabas de explicar.
Saludos.
Nice. Directo a mis favoritos.
Estupendo artรญculo… <3
Che, para la prรณxima podรฉs continuarlo explicando como se usa ossec u otras herramientas! Muy bueno el post! Mรกs por favor!
En Febrero, para mis vacaciones, quiero cooperar con un post de Nagios y herramientas de monitoreo.
Saludos.
Buen articulo, yo tenia planeado nada mรกs reparar mi PC escribir uno un tilin mรกs abarcador, pero te me adelantaste xD. Buen aporte!
A mi tambiรฉn me gustarรญa ver un post dedicado a detectores de intrusos. Igual este lo agrego a favoritos.