[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Ayuda con netfilter.



Hola listeros, recurro a ustedes por el suiguiente motivo:
tengo una maquina debian como router, con el siguiente script..

#!/bin/bash
#/usr/local/sbin/setiptables.bash

iptables -F
iptables -X
iptables -Z
iptables -t nat -F

iptables -P INPUT DROP
iptables -P OUTPUT DROP
iptables -P FORWARD *DROP*
iptables -t nat -P PREROUTING ACCEPT
iptables -t nat -P OUTPUT ACCEPT
iptables -t nat -P POSTROUTING ACCEPT

iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
iptables -A OUTPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
iptables -A FORWARD -m state --state ESTABLISHED,RELATED -j ACCEPT

iptables -t nat -A POSTROUTING -o ppp0 -j MASQUERADE

echo 1 > /proc/sys/net/ipv4/ip_forward
echo 2 > /proc/sys/net/ipv4/conf/all/rp_filter
echo 1 > /proc/sys/net/ipv4/icmp_echo_ignore_broadcasts
echo 0 > /proc/sys/net/ipv4/conf/all/accept_source_route
echo 0 > /proc/sys/net/ipv4/tcp_timestamps
echo 30 > /proc/sys/net/ipv4/tcp_fin_timeout
echo 2400 > /proc/sys/net/ipv4/tcp_keepalive_time
echo 0 > /proc/sys/net/ipv4/tcp_window_scaling
echo 0 > /proc/sys/net/ipv4/tcp_sack

iptables -A INPUT -i lo -j ACCEPT
iptables -A OUTPUT -o lo -j ACCEPT

iptables -A INPUT -p tcp --tcp-flags ALL NONE -j DROP
iptables -A FORWARD -p tcp --tcp-flags ALL NONE -j DROP
iptables -A INPUT -p tcp --tcp-flags SYN,FIN SYN,FIN -j DROP
iptables -A FORWARD -p tcp --tcp-flags SYN,FIN SYN,FIN -j DROP
iptables -A INPUT -p tcp --tcp-flags SYN,RST SYN,RST -j DROP
iptables -A FORWARD -p tcp --tcp-flags SYN,RST SYN,RST -j DROP
iptables -A INPUT -p tcp --tcp-flags FIN,RST FIN,RST -j DROP
iptables -A FORWARD -p tcp --tcp-flags FIN,RST FIN,RST -j DROP
iptables -A INPUT -p tcp --tcp-flags ACK,FIN FIN -j DROP
iptables -A FORWARD -p tcp --tcp-flags ACK,FIN FIN -j DROP
iptables -A INPUT -p tcp --tcp-flags ACK,PSH PSH -j DROP
iptables -A FORWARD -p tcp --tcp-flags ACK,PSH PSH -j DROP
iptables -A INPUT -p tcp --tcp-flags ACK,URG URG -j DROP
iptables -A FORWARD -p tcp --tcp-flags ACK,URG URG -j DROP

# INPUT HP #

iptables -t filter -A INPUT -i eth1 -p tcp --dport 53 -j ACCEPT #DNS
iptables -t filter -A INPUT -i eth1 -p udp --dport 53 -j ACCEPT #DNS
iptables -t filter -A INPUT -i eth1 -p udp --dport 67 -j ACCEPT #DHCP
iptables -t filter -A INPUT -i eth1 -p tcp --dport 3128 -j ACCEPT #SQUID
iptables -t filter -A INPUT -i eth1 -p udp --dport 445 -j ACCEPT #Microsoft-DS SMB file sharing iptables -t filter -A INPUT -i eth1 -p tcp --dport 137:139 -j ACCEPT #NetBios iptables -t filter -A INPUT -i eth1 -p udp --dport 137:139 -j ACCEPT #NetBios iptables -t filter -A INPUT -i eth1 -p tcp --dport 22 -j ACCEPT -s 192.168.0.2 #SSH

# OUTPUT HP #

iptables -t filter -A OUTPUT -p tcp --sport 53 -j ACCEPT #DNS
iptables -t filter -A OUTPUT -p udp --sport 53 -j ACCEPT #DNS
iptables -t filter -A OUTPUT -p tcp --sport 3128 -j ACCEPT #SQUID
iptables -t filter -A OUTPUT -p tcp --dport 80 -j ACCEPT #WWW
iptables -t filter -A OUTPUT -p udp --sport 67 -j ACCEPT #DHCP
iptables -t filter -A OUTPUT -p udp --dport 445 -j ACCEPT #Microsoft-DS SMB file sharing
iptables -t filter -A OUTPUT -p tcp --dport 137:139 -j ACCEPT #NetBios
iptables -t filter -A OUTPUT -p udp --dport 137:139 -j ACCEPT #NetBios

# FORWARD LAN #

*iptables -t filter -A FORWARD -j ACCEPT*
iptables -t filter -A FORWARD -i eth1 -p tcp --dport 20:21 -j ACCEPT #FTP
iptables -t filter -A FORWARD -i eth1 -p tcp --dport 25 -j ACCEPT #SMTP
iptables -t filter -A FORWARD -i eth1 -p tcp --dport 110 -j ACCEPT #POP3
iptables -t filter -A FORWARD -i eth1 -p tcp --dport 143 -j ACCEPT #IMAP4
iptables -t filter -A FORWARD -i eth1 -p tcp --dport 989:990 -j ACCEPT #FTPS
iptables -t filter -A FORWARD -i eth1 -p tcp --dport 993 -j ACCEPT #IMAP4S
iptables -t filter -A FORWARD -i eth1 -p tcp --dport 995 -j ACCEPT #POP3S
iptables -t filter -A FORWARD -i eth1 -p tcp --dport 465 -j ACCEPT #SMTPS

# NAT #

# TEGNet
iptables -t nat -A PREROUTING -i ppp0 -p tcp --dport 5479 -j DNAT --to 192.168.0.2:5479

# BitTorrent
#iptables -t nat -A PREROUTING -i ppp0 -p tcp --dport ? -j DNAT --to 192.168.0.2:?

# eMule's
iptables -t nat -A PREROUTING -i ppp0 -p tcp --dport 2000 -j DNAT --to 192.168.0.2:2000 iptables -t nat -A PREROUTING -i ppp0 -p udp --dport 2010 -j DNAT --to 192.168.0.2:2010 iptables -t nat -A PREROUTING -i ppp0 -p tcp --dport 3000 -j DNAT --to 192.168.0.3:3000 iptables -t nat -A PREROUTING -i ppp0 -p udp --dport 3010 -j DNAT --to 192.168.0.3:3010 iptables -t nat -A PREROUTING -i ppp0 -p tcp --dport 4000 -j DNAT --to 192.168.0.4:4000 iptables -t nat -A PREROUTING -i ppp0 -p udp --dport 4010 -j DNAT --to 192.168.0.4:4010 iptables -t nat -A PREROUTING -i ppp0 -p tcp --dport 5000 -j DNAT --to 192.168.0.5:5000 iptables -t nat -A PREROUTING -i ppp0 -p udp --dport 5010 -j DNAT --to 192.168.0.5:5010

# SQUID
iptables -t nat -A PREROUTING -i eth1 -p tcp --dport 80 -j REDIRECT --to-port 3128 iptables -t nat -A PREROUTING -i eth1 -p tcp --sport 80 -j REDIRECT --to-port 3128

*iptables -t filter -A FORWARD -j DROP*

Les llamará la atención seguramente los astericos, estos NO estan en el script original, pero el problema que estoy teniendo es que, si la politica por defecto de la cadena FORWARD la pongo en DROP (como esta) y saco esta linea *iptables -t filter -A FORWARD -j ACCEPT* (que creo que es lo mismo a que la policy este en accept..) No me me funciona NAT (es decir el emule me da ID baja por ejemplo), ni tampoco me fuciona el FTP.. y sin embargo estan en la cadena forward. pero no hay caso.
¿que estoy haciendo mal?
por este motivo, estoy dejando que pase casi todo a la LAN. con la linea *...*.
Alguien sabe a que se debe esto?
Muchas gracias.



Reply to: