Abrir puertos en Centos (Iptables)

Standard

El archivo que define las reglas que usa el firewall de linux Centos es iptables, este se encuentra en

/etc/sysconfig/iptables

Podemos editar este archivo para definir nuestras reglas.

Por ejemplo si deseamos abrir el puerto del SSH (22):

  1. Abrimos el archivo de iptables
    nano /etc/sysconfig/iptables
  2. Buscamos la linea que contiene
    [0:0] -A RH-Firewall-1-INPUT -i lo -j ACCEPT

    y le damos un ENTER

  3. Escribimos
    [0:0] -A RH-Firewall-1-INPUT -p tcp --dport 21 -j ACCEPT
  4. Guardamos el archivo con CRTL + O y lo cerramos con CTRL + X
  5. Reiniciamos el servicio con
    service iptables restart

Los argumentos importantes que debemos tener en cuenta son -p que es el protocolo y –dport el puerto

De esta manera podemos usarlo para habilitar cualquier puerto cambiando únicamente los parámetros -p y –dport.

Podemos encontrar un completo listado de los puertos y su correspondencia en wikipedia

Ejemplo de Reglas para abrir puertos:

#Acepta conexiones localmente y desde eth0 y eth1

-A RH-Firewall-1-INPUT -i lo -j ACCEPT

-A RH-Firewall-1-INPUT -i eth0 -j ACCEPT

-A RH-Firewall-1-INPUT -i eth1 -j ACCEPT

# PROTECCION CONTRA PORT SCANNERS (nmap, etc…)

-A RH-Firewall-1-INPUT -p tcp –tcp-flags SYN,ACK,FIN,RST RST -m limit –limit 1/s -j ACCEPT

-A RH-Firewall-1-INPUT -p tcp -j REJECT –reject-with icmp-port-unreachable  –syn

-A RH-Firewall-1-INPUT -p udp -j REJECT –reject-with icmp-port-unreachable

# PROTECCION CONTRA WORMS

-A RH-Firewall-1-INPUT -p tcp –dport 135:139 -j REJECT

-A RH-Firewall-1-INPUT -p udp –dport 135:139 -j REJECT

# PROTECCION CONTRA SYN-FLOODS

-A RH-Firewall-1-INPUT -p tcp –syn -m limit –limit 1/s -j ACCEPT

# PROTECCION CONTRA PING DE LA MUERTE

-A RH-Firewall-1-INPUT -p icmp –icmp-type echo-request -m limit –limit 1/s -j ACCEPT

-A RH-Firewall-1-INPUT -p icmp –icmp-type any -j ACCEPT

-A RH-Firewall-1-INPUT -m state –state ESTABLISHED,RELATED -j ACCEPT

#Acepta conexiones http,https,ftp,smtp,ssh,proxy,pop,dns,webmin

-A RH-Firewall-1-INPUT -m state –state NEW -m tcp -p tcp –dport 80 -j ACCEPT

-A RH-Firewall-1-INPUT -m state –state NEW -m tcp -p tcp –dport 443 -j ACCEPT

-A RH-Firewall-1-INPUT -m state –state NEW -m tcp -p tcp –dport 20 -j ACCEPT

-A RH-Firewall-1-INPUT -m state –state NEW -m tcp -p tcp –dport 21 -j ACCEPT

-A RH-Firewall-1-INPUT -m state –state NEW -m tcp -p tcp –dport 25 -j ACCEPT

-A RH-Firewall-1-INPUT -m state –state NEW -m tcp -p tcp –dport 22 -j ACCEPT

-A RH-Firewall-1-INPUT -p tcp -m state -m tcp –dport 8080 –state NEW -j ACCEPT

-A RH-Firewall-1-INPUT -p tcp -m state -m tcp –dport 110 –state NEW -j ACCEPT

-A RH-Firewall-1-INPUT -p tcp -m state -m tcp –dport 53 –state NEW -j ACCEPT

-A RH-Firewall-1-INPUT -p udp -m state -m udp –dport 53 –state NEW -j ACCEPT

-A RH-Firewall-1-INPUT -p tcp -m state -m tcp –dport 10000 –state NEW -j ACCEPT

-A RH-Firewall-1-INPUT -p udp -j ACCEPT  –source-port 53

-A RH-Firewall-1-INPUT -j REJECT –reject-with icmp-host-prohibited

COMMIT

About these ads

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s