informatica:linux:iptables
Differences
This shows you the differences between two versions of the page.
Both sides previous revisionPrevious revisionNext revision | Previous revisionNext revisionBoth sides next revision | ||
informatica:linux:iptables [2012/05/09 09:06] – javi | informatica:linux:iptables [2012/05/16 14:37] – javi | ||
---|---|---|---|
Line 6: | Line 6: | ||
http:// | http:// | ||
- | |||
===== Escribir en log ===== | ===== Escribir en log ===== | ||
Line 63: | Line 62: | ||
May 9 10:11:32 jj kernel: iptables denied: IN=vmbr0 OUT= MAC=00: | May 9 10:11:32 jj kernel: iptables denied: IN=vmbr0 OUT= MAC=00: | ||
+ | ===== Ejemplo OpenVZ ===== | ||
+ | |||
+ | < | ||
+ | #!/bin/bash | ||
+ | |||
+ | # Creamos variables | ||
+ | IPTABLES=/ | ||
+ | DEPMOD=/ | ||
+ | MODPROBE=/ | ||
+ | ROUTER=" | ||
+ | VM=" | ||
+ | PROXMOX=" | ||
+ | |||
+ | INTERNET_HOSTS=" | ||
+ | 192.168.0.203 | ||
+ | " | ||
+ | |||
+ | # Interfaces | ||
+ | EXTIF=" | ||
+ | INTIF=" | ||
+ | |||
+ | # Verifica que los módulos del núcleo están bien | ||
+ | $DEPMOD -a | ||
+ | |||
+ | # Carga manualmente el módulo iptables | ||
+ | $MODPROBE ip_tables | ||
+ | |||
+ | # Éste módulo se carga automáticamente cuando se habilita la | ||
+ | # funcionalidad MASQ | ||
+ | $MODPROBE ip_conntrack | ||
+ | |||
+ | # Opcional: reenvío de tráfico ftp | ||
+ | $MODPROBE ip_conntrack_ftp | ||
+ | |||
+ | # Opcional: reenvío de tráfico irc | ||
+ | $MODPROBE ip_conntrack_irc | ||
+ | |||
+ | # Éste módulo se carga automáticamente cuando se habilita la | ||
+ | # funcionalidad MASQ | ||
+ | $MODPROBE iptable_nat | ||
+ | |||
+ | # Opcional: soporte non-PASV FTP. | ||
+ | $MODPROBE ip_nat_ftp | ||
+ | |||
+ | #CRÍTICO: habilitar redirección IPv4, deshabilitado por defecto | ||
+ | echo " | ||
+ | |||
+ | # Soporte para ip dinámica | ||
+ | echo " | ||
+ | |||
+ | # Borrado de reglas de iptables | ||
+ | $IPTABLES -P INPUT ACCEPT | ||
+ | $IPTABLES -F INPUT | ||
+ | $IPTABLES -P OUTPUT ACCEPT | ||
+ | $IPTABLES -F OUTPUT | ||
+ | $IPTABLES -P FORWARD ACCEPT | ||
+ | $IPTABLES -F FORWARD | ||
+ | $IPTABLES -t nat -F | ||
+ | |||
+ | ############################ | ||
+ | |||
+ | # Abrir acceso hacia fuera | ||
+ | for host in $INTERNET_HOSTS | ||
+ | do | ||
+ | if [[ " | ||
+ | then | ||
+ | | ||
+ | fi | ||
+ | done | ||
+ | |||
+ | # Permitir acceso de las VM's afuera en respuesta a conexiones externas | ||
+ | $IPTABLES -A FORWARD -i $INTIF -o $EXTIF -s " | ||
+ | |||
+ | # Permitir DNS lookups | ||
+ | # TODO: creo que jugando con NAT NO deberia ser necesario estos lookups | ||
+ | $IPTABLES -A FORWARD -p udp --dport 53 -s $VM -d $ROUTER -j ACCEPT | ||
+ | |||
+ | # FTP | ||
+ | $IPTABLES -t nat -I PREROUTING -p tcp --dport 8021 -j DNAT --to-destination 192.168.0.203: | ||
+ | $IPTABLES -A FORWARD -i $EXTIF -o $INTIF -p tcp --dport 21 -d " | ||
+ | |||
+ | # VPN | ||
+ | $IPTABLES -t nat -I PREROUTING -p tcp --dport 1723 -j DNAT --to-destination 192.168.0.203: | ||
+ | $IPTABLES -A FORWARD -i $EXTIF -o $INTIF -p tcp --dport 1723 -d " | ||
+ | |||
+ | # Casca acceso a VM desde Proxmox | ||
+ | #iptables -t nat -A POSTROUTING -j SNAT --to-source 192.168.0.203 | ||
+ | |||
+ | # Permitir la redirección desde una interfaz a la otra solo de determidas conexiones | ||
+ | $IPTABLES -A FORWARD -i $EXTIF -o $INTIF -m state --state ESTABLISHED, | ||
+ | $IPTABLES -A FORWARD -i $EXTIF | ||
+ | |||
+ | # Habilitar NAT masquerade en la interfaz externa | ||
+ | $IPTABLES -t nat -A POSTROUTING -o $EXTIF -j MASQUERADE | ||
+ | |||
+ | # Si las reglas no funcionan escribo una linea | ||
+ | $IPTABLES -A FORWARD -j LOG --log-prefix " | ||
+ | #$IPTABLES -A INPUT -j LOG --log-prefix "INPUT " | ||
+ | #$IPTABLES -A OUTPUT -j LOG --log-prefix " | ||
+ | </ | ||
+ | |||
+ | ===== Mostrar numero de paquetes ===== | ||
+ | |||
+ | < | ||
+ | sudo iptables -L -n -v -x | ||
+ | |||
+ | Chain INPUT (policy ACCEPT 384086 packets, 61462048 bytes) | ||
+ | pkts bytes target | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | |||
+ | Chain FORWARD (policy ACCEPT 0 packets, 0 bytes) | ||
+ | pkts bytes target | ||
+ | 156432 229715525 ACCEPT | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | |||
+ | Chain OUTPUT (policy ACCEPT 370021 packets, 87787030 bytes) | ||
+ | pkts bytes target | ||
+ | </ |
informatica/linux/iptables.txt · Last modified: 2015/04/13 20:19 by 127.0.0.1