Breaking

martes, 26 de enero de 2016

Seguridad en el Servidor (V) (security on the server)

Seguridad en el Servidor  (PARTE V).


Como proteger tu servidor de Ataques

La aplicación que vamos a usar para protegernos de llama Fail2Ban y se va a encargar de proteger durante todo el tiempo y bloquear todo intento de logearse en algunos de nuestros servicios.
Ejecutamos en una terminal como super usuario (root)  y lo instalamos con  el comando:


apt-get install fail2ban

Ahora vamos a renombrar el fichero de configuración jail.conf por jail.confOLD ya que este mismo nos puede servir como referencia aunque mas adelante os explicare como configurarlo.

mv /etc/fail2ban/jail.conf /etc/fail2ban/jail.confOLD

En el interior de el archivo jail.confOLD, ya hay varias opciones editadas por defecto y solo están a la espera de ser editadas para ser activadas. A continuación os voy a exponer cual es la configuración para que os sirva como ejemplo.

Creamos un nuevo jail.conf para asignarle nuestras propias reglas …vi/etc/fail2ban/jail.conf
ignoreip : IPs de nuestra área local que queremos que se haga la vista gorda en caso de equivocación.

bantime : Tiempo que el usuario que fallo el logeo se quedara sin poder acceder al servicio especificado en segundos.

maxretry : Numero de intentos de logeo.

backend : Permite de un modo o otro la escritura de ficheros log. 

destemail : Dirección de correo donde nos enviara las alertas.
action : Forma en que iptables aplica sus reglas.
mail-whois-lines : Se especifica que queremos que nos envié al correo en caso de intrusión.


Esas lineas explican la configuración básica de el fichero, a continuación vamos a ver un ejemplo de las celdas que creamos para cada servicio …
[ssh] : Tomare ssh como ejemplo pero esta es una linea que da igual lo que pongamos, ya que no afecta a la configuración.
enable : Podemos introducir true para activarlo y false para desactivarlo.
port : Nombre del servicio relacionado con el puerto.
filter : Nombre del archivo .conf ubicado en el subdirectorio /etc/fail2ban/filter.d, este va relacionado con algún filtro ya creado.
logpath : Ruta donde se ubica el fichero log donde se almacena toda la información de el servicio en cuestión.
maxretry : Numero de intentos fallidos, aquí podemos especificar un carácter diferente para cada celda que creemos.
findtime : Si alguien prueba x intentos en este periodo de tiempo especificado en segundos se le considera ataque.
Yo voy a proteger a los servicios SSHFTP, y al WWW que son los que ofrecen mi servidor hacia internet. A cada uno le voy a dar un retardo de 300 segundos que vienen a ser unos 5 minutos para que durante ese tiempo el usuario que quiera conectarse no le sea una molestia esta medida de seguridad. 5 minutos es suficiente para evitar el uso malintencionado de un ataque por fuerza bruta o también llamado diccionario de nombres.

[DEFAULT]
ignoreip = 127.0.0.1 192.168.1.0/24
bantime = 300
maxretry = 3
backend = polling
destemail = root@localhost
action = iptables[name=%(__name__)s, port=%(port)s] mail-whois-lines[name=%(__name__)s, dest=%(destemail)s, logpath=%(logpath)s] [ssh]
enabled = true
port = ssh
filter = sshd
logpath = /var/log/auth.log
maxretry = 3
findtime = 600
[apache]
enabled = true
port = http
filter = apache-auth
logpath = /var/log/apache*/*access.log
maxretry = 3
findtime = 600
[apache-noscript]
enabled = true
port = http
filter = apache-noscript
logpath = /var/log/apache*/*error.log
maxretry = 3
findtime = 600
[proftpd]
enabled = true
port = ftp
filter = proftpd
logpath = /var/log/proftpd/proftpd.log
maxretry = 3
findtime = 600

Como podéis ver en la configuración anterior se especifican reglas para cada servicio especificando el puerto, filtro, ruta donde se ubica el fichero log que genera el servicio y el máximo de intentos de logeo. ( Verifica en tu PC que las rutas son correctas )

Una vez editado este fichero de configuración salimos y guardamos con la tecla ESC y :wq! . A continuación ejecutamos nuestro guardián con …

fail2ban-client start

Y veremos algo así …
2008-03-26 14:19:16,700 fail2ban.server : INFO Starting Fail2ban
Si lo configuramos correctamente solo veremos esta linea, si no veremos alguna linea tipo Warning. ( ATENCIÓN : Ella siempre nos especifica el problema que tenemos en el fichero fail.con )
Si queréis ver que tal andamos de bloqueos podéis ver el fichero fail2ban.log que se ubica en la ruta /var/log donde se guardan todos los bloqueos, ips, fecha y hora de quien nos está atacando.

A continuación podemos pasar a la PARTE (6)  del manual Dominios

No hay comentarios:

Publicar un comentario

Adbox