Asegurando nuestro Server con IPTABLES

Para poder tener cierta seguridad en nuestro server deberemos valernos de un Firewall apropiado. Este podremos montarlo utilizando IPTABLES.

El orden de aplicación de las reglas sera el siguiente.

1ro Permito todas las excepciones, una por una.

2do, Deniego todo.

si lo hacemos al revés, por mas que las excepciones estén permitidas no las respetara y quedara todo cerrado.

Para iniciar el iptables podremos crear un archivo de texto de la siguiente manera.

# vim /etc/init.d/reglasiptables

A modo de ejemplo y como script básico podremos utilizar el siguiente ejemplo.

 

#!/bin/sh
### BEGIN INIT INFO
# Provides: IPTABLES
# Required-Start: $local_fs $network $syslog $named
# Required-Stop: $local_fs $network $syslog $named
# Default-Start: 2 3 4 5
# Default-Stop: 0 1 6
# X-Interactive: true
# Short-Description: Inicio/parada de las reglas IPTABLES
### END INIT INFO

#Script para la carga de reglas IPTALBES

IPTABLES=/sbin/iptables
echo “Iniciando IPTALBES”
#Limpio el IPTABLES
$IPTABLES -F
$IPTABLES -X
$IPTABLES -Z
$IPTABLES -t nat -F

#********Agrego las excepciones***********

#Excepciones basicas
$IPTABLES -A INPUT -m state –state RELATED,ESTABLISHED -j ACCEPT
$IPTABLES -A FORWARD -i eth0 -m state –state RELATED,ESTABLISHED -j ACCEPT
$IPTABLES -A OUTPUT -m state –state NEW,RELATED,ESTABLISHED -j ACCEPT

# Permito SSH
$IPTABLES -A INPUT -d 192.168.1.2 -p tcp –dport 22 -j ACCEPT

# Permito WEB
$IPTABLES -A INPUT -d 192.168.1.2 -p tcp –dport 80 -j ACCEPT
$IPTABLES -A INPUT -d 192.168.1.2-p tcp –dport 443 -j ACCEPT

# Permito VPN
$IPTABLES -A INPUT -p tcp –dport 1723 -j ACCEPT
$IPTABLES -A OUTPUT -p tcp –sport 1723 -j ACCEPT
$IPTABLES -A INPUT -p gre -j ACCEPT
$IPTABLES -A OUTPUT -p gre -j ACCEPT

# Permito WebAdmin
$IPTABLES -A INPUT -d 192.168.1.2 -p tcp –dport 10000 -j ACCEPT

# Permito el enrutamiento desde la VNP hacia afuera
$IPTABLES -t nat -A POSTROUTING -s 192.168.2.0/24 -o eth0 -j MASQUERADE
# Permito el ICMP
$IPTABLES -A INPUT -d 192.168.1.2 -p icmp -j ACCEPT

# DENIEGO ALL
$IPTABLES -A INPUT -i ppp0 -p tcp –dport 1:1024 -j REJECT
$IPTABLES -A INPUT -i ppp0 -p udp –dport 1:1024 -j REJECT
$IPTABLES -A INPUT -i ppp0 -p tcp –syn –dport 1025:65535 -j REJECT

:wq!

Luego debemos asignarle permisos de lectura y ejecución a nuestro script de la siguiente manera :

# chomod 775 /etc/init.d/reglasiptables

 

Ya podemos probar el funcionamiento del mismo  corriéndolo a mano y verificando que se apliquen los cambios

para ejecutarlo: # ./etc/init.d/reglasiptables

para verificar tan solo debemos ver las reglas aplicadas: # iptables

Si hasta aqui todo ha ido bien solo deberemos de asegurarnos de que se ejecute durante cada inicio.

# update-rc.d reglasiptables defaults

Eso es todo, luego para permitir nuevas excepciones solo bastará con modificar el script y ejecutarlo para que las reglas se apliquen inmediatamente.

Saludos!

 

Mira también estos otros artículos

One Reply to “Asegurando nuestro Server con IPTABLES”

  1. Pingback: Firewall con IPTablesEpelByte | EpelByte

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

*