[OT?] Que harian ustedes?
Hola muchachos, hace tiempo ya que tengo en mi casa una pc viejita con
DEtch como dns (bind), dhcp, y router hacia mi lan con este script:
#!/bin/bash
/sbin/modprobe ip_conntrack
/sbin/modprobe ip_conntrack_ftp
/sbin/modprobe ip_tables
/sbin/modprobe iptable_filter
/sbin/modprobe iptable_mangle
/sbin/modprobe iptable_nat
/sbin/modprobe ipt_LOG
/sbin/modprobe ipt_REJECT
/sbin/modprobe ipt_MASQUERADE
iptables -t filter -F
iptables -t filter -X
iptables -t filter -Z
iptables -t nat -F
iptables -t nat -X
iptables -t nat -Z
iptables -t filter -P INPUT DROP
iptables -t filter -P OUTPUT DROP
iptables -t filter -P FORWARD ACCEPT
iptables -t nat -P PREROUTING ACCEPT
iptables -t nat -P OUTPUT ACCEPT
iptables -t nat -P POSTROUTING ACCEPT
iptables -N bad_tcp_packets
iptables -A bad_tcp_packets -p tcp ! --syn -m state --state NEW -j LOG
--log-prefix "New not syn:"
iptables -A bad_tcp_packets -p tcp ! --syn -m state --state NEW -j DROP
iptables -A bad_tcp_packets -i ppp0 -s 192.168.0.0/16 -j DROP
iptables -A bad_tcp_packets -i ppp0 -s 10.0.0.0/8 -j DROP
iptables -A bad_tcp_packets -i ppp0 -s 172.16.0.0/12 -j DROP
iptables -t filter -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
iptables -t filter -A OUTPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
iptables -t filter -A FORWARD -m state --state ESTABLISHED,RELATED -j ACCEPT
iptables -t nat -A PREROUTING -m state --state INVALID -j DROP
iptables -t nat -A POSTROUTING -m state --state INVALID -j DROP
iptables -t nat -A OUTPUT -m state --state INVALID -j DROP
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 -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 -A INPUT -p tcp -j bad_tcp_packets
iptables -t filter -A INPUT -i lo -j ACCEPT
iptables -t filter -A INPUT -i eth1 -p tcp --dport 80 -j ACCEPT #DNS
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 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
iptables -t filter -A INPUT -m limit --limit 3/minute --limit-burst 3 -j
LOG --log-level DEBUG --log-prefix "IPT INPUT packet died: "
# OUTPUT HP #
iptables -A OUTPUT -p tcp -j bad_tcp_packets
iptables -t filter -A OUTPUT -o lo -j ACCEPT
iptables -t filter -A OUTPUT -p tcp --dport 80 -j ACCEPT #www
iptables -t filter -A OUTPUT -p tcp --dport 53 -j ACCEPT #DNS
iptables -t filter -A OUTPUT -p udp --dport 53 -j ACCEPT #DNS
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 filesharing
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
iptables -t filter -A OUTPUT -m limit --limit 3/minute --limit-burst 3
-j LOG --log-level DEBUG --log-prefix "IPT OUTPUT packet died: "
# FORWARD LAN #
iptables -t filter -A FORWARD -i eth1 -p tcp --dport 20 -j ACCEPT
#ftp-control
iptables -t filter -A FORWARD -i eth1 -p tcp --dport 21 -j ACCEPT #ftp-data
iptables -t filter -A FORWARD -i eth1 -p tcp --dport 25 -j ACCEPT #smtp
iptables -t filter -A FORWARD -i eth1 -p udp --dport 25 -j ACCEPT #smtp
iptables -t filter -A FORWARD -i eth1 -p tcp --dport 80 -j ACCEPT #www
iptables -t filter -A FORWARD -i eth1 -p tcp --dport 110 -j ACCEPT #pop
iptables -t filter -A FORWARD -i eth1 -p tcp --dport 137:139 -j ACCEPT
#NetBios
iptables -t filter -A FORWARD -i eth1 -p udp --dport 137:139 -j ACCEPT
#NetBios
iptables -t filter -A FORWARD -i eth1 -p tcp --dport 143 -j ACCEPT #imap
iptables -t filter -A FORWARD -i eth1 -p udp --dport 143 -j ACCEPT #imap
iptables -t filter -A FORWARD -i eth1 -p tcp --dport 443 -j ACCEPT #https
iptables -t filter -A FORWARD -i eth1 -p tcp --dport 445 -j ACCEPT
#Microsoft-DS SMB file sharing
iptables -t filter -A FORWARD -i eth1 -p tcp --dport 465 -j ACCEPT #SMTP
over SSL
iptables -t filter -A FORWARD -i eth1 -p tcp --dport 989 -j ACCEPT #FTP
Protocol (data) over TLS/SSL
iptables -t filter -A FORWARD -i eth1 -p tcp --dport 990 -j ACCEPT #FTP
Protocol (control) over TLS/SSL
iptables -t filter -A FORWARD -i eth1 -p tcp --dport 993 -j ACCEPT #IMAPS
iptables -t filter -A FORWARD -i eth1 -p tcp --dport 995 -j ACCEPT #POP3S
# 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
iptables -t filter -A FORWARD -p tcp --dport 0:1024 -j DROP
iptables -t filter -A FORWARD -p udp --dport 0:1024 -j DROP
Ahora bien, consegui una maquina (i386 P@133@mhz 32 RAM 2 mb video 3,2
GB HHD, etc..)
Actualmente, la red esta de la siguiente manera: modem ADSL conectado
con eth0 (iface ppp0) (pppoeconf) y eth1 al switch de lan.
mi idea es mejorar la seguridad y rendiemiento de la red añadiendo esta
pc que consegui de alguna manera (suena medio anti-ecologico lo sé, ya
que no hay mucha necesidad y si gasto de energia), lo primero que se me
ocurrio fue meterele un dns secundario, y después pensé si seréa
saludable para la red, que esta maquina actual haga de router, sin
tantas lineas y montar un firewall verdadero con esta otra pc; digamos
algo asi como un forward puro, ya que con este script si la cadena de
forward estaba en DROP los p2p y demas no andaban bien, mejor dicho, no
andaban.
Ustedes que es lo que me recomiendan?, asi con la otra pc si podria
filtrar eth0 y eth1 , ya que como veran en este script eth0, no juega un
papel muy importante esta la ppp0 nomas, ¿es lo mismo? No se.
Bueno esa es mi duda.
Saludos
PD: Gracias a todos los que se tomaron el tiempo de leer hasta: ACA.
Reply to: