Centos 7 IPTABLE
CONFIGURACIONES PRINCIPALES:
## Habilitar el reenvio de manera permanente CentOS 7
vi /etc/sysctl.conf
net.ipv4.ip_forward=1
nmcli connection up enp0s3
##
yum install epel-release.noarch
yum install iptables-services -y
systemctl enable iptables
systemctl start iptables
sh fw.sh
iptables -L
service iptables save
reboot
###
iptables -L –line- (Numera las reglas)
iptables -nvL (Muestra los contadores en las reglas)
#INSTALAR FTP
yum -y install vsftpd
systemctl restart vsftpd
#INSTALAR SSH
yum -y install openssh-server
systemctl enable sshd
systemctl restart sshd
#INSTALAR WEB
yum -y install httpd
systemctl enable httpd
systemctl restart httpd
CONFIGURAR CON IPTABLES:
##LIMPIAR LAS REGLAS
#SCRIPT CORTAFUEGOS, SH PARA LA CONFIGURACION DE IPTABLES
#
#Primero borramos las reglas previas que existen
iptables -F
iptables -X
iptables -Z
iptables -t nat -F
#Establecemos politicas por defecto
iptables -P INPUT ACCEPT
iptables -P FORWARD ACCEPT
iptables -P OUTPUT ACCEPT
#Habilitamos FTP (DMZ-WEB)para conectarnos desde la Red LAN
iptables -A INPUT -p tcp –dport 20:21 -j ACCEPT
iptables -A OUTPUT -p tcp –sport 20 -d 172.16.3.0/24 -j ACCEPT
#si no funciona usar estos:
#iptables -t nat -A PREROUTING -s 172.16.3.0/24 -p tcp –dport 20 -j DNAT –to-destination 172.16.2.2:20
#iptables -t nat -A PREROUTING -s 172.16.3.0/24 -p tcp –dport 21 -j DNAT –to-destination 172.16.2.2:21
#Habilitar la navegacion a la red Interna y DMZ-DB
#dns udp 53
iptables -A FORWARD -p udp –dport 53 -s 172.16.3.0/24 -j ACCEPT
iptables -A FORWARD -p udp –dport 53 -s 172.16.2.3 -j ACCEPT
#NAvegacion puerto 80
iptables -A FORWARD -p tcp –dport 80 -s 172.16.3.0/24 -j ACCEPT
iptables -A FORWARD -p tcp –dport 80 -s 172.16.2.3 -j ACCEPT
#Navegacion puerto 443
iptables -A FORWARD -p tcp –dport 443 -s 172.16.3.0/24 -j ACCEPT
iptables -A FORWARD -p tcp –dport 443 -s 172.16.2.3 -j ACCEPT
#################################################################
#DESPUES DEL NAT
#################################################################
#Habilitar el enmascaramiento
#ip r
iptables -t nat -A POSTROUTING -o ens33 -s 172.16.3.0/24 -j MASQUERADE
iptables -t nat -A POSTROUTING -o ens33 -s 172.16.2.3 -j MASQUERADE
#Habilitamos la administracion remota desde Internet
#iptables -A INPUT -p tcp –dport 22 -j ACCEPT
#iptables -A OUTPUT -p tcp –sport 22 -d 172.18.0.105 -j ACCEPT
#Permitimos el servicio SSH
iptables -t nat -A PREROUTING -s 172.18.0.0/16 -p tcp –dport 22 -j DNAT –to-destination 172.16.2.3:22
#Ver reglas con iptables -nvL
#Publicar mi servicio web
iptables -t nat -A PREROUTING -s 172.18.0.0/16 -p tcp –dport 80 -j DNAT –to-destination 172.16.2.2:80
# iptables -t nat -A PREROUTING -i ens33 –p tcp –dport 80 -j DNAT –to 172.16.2.2:80
##Permitir el acceso a mi servidor web desde interno
#ip tables -A FORWARD -d 172.16.3.2 -p tcp –dport 80 -j ACCEPT
iptables -t nat -A PREROUTING -s 172.16.3.0/24 -p tcp –dport 80 -j DNAT –to-destination 172.16.2.2:80
##Permitir actualizacion del SO para el Firewall
iptables -A OUTPUT -p udp –dport 53 -j ACCEPT
iptables -A OUTPUT -p tcp –dport 80 -j ACCEPT
iptables -A INPUT -p udp –sport 53 -j ACCEPT
iptables -A INPUT -p tcp –sport 80 -j ACCEPT
#iptables -L –line-number
#Cerramos el acceso de la DMZ-WEB a la Lan
#iptables -t mangle -A PREROUTING -s 172.16.2.2 -j DROP #Elimina el trafico
iptables -A FORWARD -s 172.16.2.0/24 -j ACCEPT #Permite sólo el tráfico de la red interna 172.16.2.0/24.
iptables -A FORWARD -s 172.16.2.2 -j REJECT #Rechaza solo el trafico de la ip 172.16.2.2.
#Cerrar el acceso de DMZ-DB al Firewall
#iptables -A INPUT -p tcp -d 172.16.2.3 -j DROP #Elimina el trafico
iptables -A FORWARD -s 172.16.2.3/24 -j ACCEPT Permite sólo el tráfico de la red interna 172.16.2.0/24.
iptables -A FORWARD -s 172.16.2.2 -j REJECT Rechaza solo el trafico de la ip 172.16.2.2.
#Cerramos el acceso de la LAN al DMZ-WEB y DMZ-DB
iptables -t mangle -A PREROUTING -s 172.16.2.0/24 -j DROP #Elimina el trafico
iptables -A FORWARD -s 172.16.2.2/24 -j ACCEPT Permite sólo el tráfico de la red interna 172.16.2.0/24.
iptables -A FORWARD -s 172.16.2.0/24 -j REJECT Rechaza solo el trafico de la ip 172.16.2.2.
#Esto tambien sirve iptables -i ens34 -A INPUT -s 172.16.2.0/24 -j DROP
##################
#Esto tambien sirve pero primero se tiene que natear la interfaz
#iptables -A POSTROUTING -t nat -s 172.16.2.0/24 -o ens33 -j MASQUERADE
#iptables -A FORWARD -i ens34 -s 172.16.2.0/24 -p tcp –dport 80 -j ACCEPT
#iptables -A FORWARD -i ens33 -d 172.16.2.0/24 -p tcp –sport 80 -j ACCEPT
#iptables -A FORWARD -i ens34 -s 172.16.2.0/24 -p udp –dport 53 -j ACCEPT
#iptables -A FORWARD -i ens33 -d 172.16.2.0/24 -p udp –sport 53 -j ACCEPT
#iptables -A FORWARD -i ens34 -s 172.16.2.0/24 -p tcp –dport 443 -j ACCEPT
#iptables -A FORWARD -i ens33 -d 172.16.2.0/24 -p tcp –sport 443 -j ACCEPT
centos 7