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

NewNAT COMO HACERLO Y NO MORIR EN EL INTENTO



El tema de newnat no es facil pero tampoco imposible aca mando la mini
receta con los links y otras yerbas

1 iptables version 126a (apt-get y listo ya instaladas)
2 kernel 2.4.16 ( lo bajamos www.kernel.org)
3 newnat5-and-helpers-2.4.16.patch.gz  (lo bajamos de
http://roeder.goe.net/~koepi/newnat/newnat5-and-helpers-2.4.16.patch.gz)
4 en la carpeta /usr/src/ tiramos el kernel 2.4.16
5 tar xvzf linux-2.4.16.tar.gz
6 gzip -cd newnat5-and-helpers-2.4.16.patch.gz | patch -p1 -E
7 make menuconfig
8 Networking options  --->
 [*] Network packet filtering (replaces ipchains)
 [*] TCP/IP networking
   IP: Netfilter Configuration  --->
  <M> Connection tracking (required for masq/NAT)
  <M>  FTP protocol support
  <M>  talk protocol support
  <M>  H.323 (netmeeting) support
  <M>  IRC protocol support
  ..................................... carguen todo como modulo por las
dudas
9 make dep && make bzImage && make modules && make modules_install (despues
copian el system.map, el bzimage y tocan el lilo.etc)
10 les paso mi script............ acepto sugerencias

#!/bin/bash
IP='iptables'
Mod='modprobe'

$Mod ip_tables
$Mod iptable_filter
$Mod ip_conntrack_h323
$Mod ip_nat_h323

$IP -F
$IP -t nat -F

echo 1 > /proc/sys/net/ipv4/ip_forward
echo 1 > /proc/sys/net/khttpd/start

$IP -t nat -A POSTROUTING -o eth0 -j MASQUERADE

# This tracks H.323 connections and allows and NAT them correctly
$IP -A FORWARD -m state --state RELATED,ESTABLISHED -j ACCEPT
$IP -A FORWARD -i eth0 -o eth1 -p tcp --dport 1720 --syn -j ACCEPT

#SE PUEDE HACER QUE CUANDO CUALQUIER IP PRIVADA PIDA USAR EL NETGAROMPA SIN
#PROBLEMA
# This allows calls to go from outside to the internal address
# It is not needed, if you only want to make calls; not receive them
$IP -t nat -A PREROUTING -i eth0 -d 64.116.229.30 -p tcp --dport
1720 --syn -j DNAT --to 192.168.1.4
$IP -A FORWARD -i eth0 -o eth1 -p tcp --dport 1720 --syn -j ACCEPT

$IP -A INPUT -p tcp --dport 1024: -j ACCEPT
$IP -A INPUT -p udp --dport 1024: -j ACCEPT

$IP -t nat -A POSTROUTING -d ! 192.168.1.0/24 -j MASQUERADE
$IP -t nat -A POSTROUTING -d ! 192.168.6.0/24 -j MASQUERADE
$IP -t nat -A POSTROUTING -d ! 192.168.7.0/24 -j MASQUERADE
$IP -A FORWARD -s 192.168.1.0/24 -j ACCEPT
$IP -A FORWARD -d 192.168.1.0/24 -j ACCEPT
$IP -A FORWARD -s 192.168.6.0/24 -j ACCEPT
$IP -A FORWARD -d 192.168.6.0/24 -j ACCEPT
$IP -A FORWARD -s 192.168.7.0/24 -j ACCEPT
$IP -A FORWARD -d 192.168.7.0/24 -j ACCEPT
$IP -A FORWARD -i eth0 -m state --state NEW,INVALID -j DROP

$IP -t nat -A PREROUTING -i eth1 -s 192.168.1.0/24 -p tcp --dport 80 -j
REDIRECT --to-port 3128

$IP -A INPUT -i eth0 -p icmp  -j DROP

# tiro todo lo que llega al port 9
$IP -A INPUT -i eth0 --protocol udp --source-port 9 -j DROP
$IP -A INPUT -i eth0 --protocol udp --destination-port 9 -j DROP
$IP -A INPUT -i eth0 --protocol tcp --source-port 9 -j DROP
$IP -A INPUT -i eth0 --protocol tcp --destination-port 9 -j DROP

# tiro todo lo que llega al port 13
$IP -A INPUT -i eth0 --protocol udp --source-port 13 -j DROP
$IP -A INPUT -i eth0 --protocol udp --destination-port 13 -j DROP
$IP -A INPUT -i eth0 --protocol tcp --source-port 13 -j DROP
$IP -A INPUT -i eth0 --protocol tcp --destination-port 13 -j DROP

# tiro todo lo que llega al port 37
$IP -A INPUT -i eth0 --protocol udp --source-port 37 -j DROP
$IP -A INPUT -i eth0 --protocol udp --destination-port 37 -j DROP
$IP -A INPUT -i eth0 --protocol tcp --source-port 37 -j DROP
$IP -A INPUT -i eth0 --protocol tcp --destination-port 37 -j DROP

# tiro todo lo que llega al port 111
$IP -A INPUT -i eth0 --protocol udp --source-port 111 -j DROP
$IP -A INPUT -i eth0 --protocol udp --destination-port 111 -j DROP
$IP -A INPUT -i eth0 --protocol tcp --source-port 111 -j DROP
$IP -A INPUT -i eth0 --protocol tcp --destination-port 111 -j DROP

# tiro todo lo que llega al port 113
$IP -A INPUT -i eth0 --protocol udp --source-port 113 -j DROP
$IP -A INPUT -i eth0 --protocol udp --destination-port 113 -j DROP
$IP -A INPUT -i eth0 --protocol tcp --source-port 113 -j DROP
$IP -A INPUT -i eth0 --protocol tcp --destination-port 113 -j DROP

# tiro todo lo que llega al port 119
$IP -A INPUT -i eth0 --protocol udp --source-port 119 -j DROP
$IP -A INPUT -i eth0 --protocol udp --destination-port 119 -j DROP
$IP -A INPUT -i eth0 --protocol tcp --source-port 119 -j DROP
$IP -A INPUT -i eth0 --protocol tcp --destination-port 119 -j DROP

# tiro todo lo que llega al port 139
$IP -A INPUT -i eth0 --protocol udp --source-port 139 -j DROP
$IP -A INPUT -i eth0 --protocol udp --destination-port 139 -j DROP
$IP -A INPUT -i eth0 --protocol tcp --source-port 139 -j DROP
$IP -A INPUT -i eth0 --protocol tcp --destination-port 139 -j DROP

# tiro todo lo que llega al port 143
$IP -A INPUT -i eth0 --protocol udp --source-port 143 -j DROP
$IP -A INPUT -i eth0 --protocol udp --destination-port 143 -j DROP
$IP -A INPUT -i eth0 --protocol tcp --source-port 143 -j DROP
$IP -A INPUT -i eth0 --protocol tcp --destination-port 143 -j DROP

# tiro todo lo que llega al port 220
$IP -A INPUT -i eth0 --protocol udp --source-port 220 -j DROP
$IP -A INPUT -i eth0 --protocol udp --destination-port 220 -j DROP
$IP -A INPUT -i eth0 --protocol tcp --source-port 220 -j DROP
$IP -A INPUT -i eth0 --protocol tcp --destination-port 220 -j DROP

# tiro todo lo que llega al port 515
$IP -A INPUT -i eth0 --protocol udp --source-port 515 -j DROP
$IP -A INPUT -i eth0 --protocol udp --destination-port 515 -j DROP
$IP -A INPUT -i eth0 --protocol tcp --source-port 515 -j DROP
$IP -A INPUT -i eth0 --protocol tcp --destination-port 515 -j DROP

# tiro todo lo que llega al port 953
$IP -A INPUT -i eth0 --protocol udp --source-port 953 -j DROP
$IP -A INPUT -i eth0 --protocol udp --destination-port 953 -j DROP
$IP -A INPUT -i eth0 --protocol tcp --source-port 953 -j DROP
$IP -A INPUT -i eth0 --protocol tcp --destination-port 953 -j DROP

# tiro todo lo que llega al port 3128
$IP -A INPUT -i eth0 --protocol udp --source-port 3128 -j DROP
$IP -A INPUT -i eth0 --protocol udp --destination-port 3128 -j DROP
$IP -A INPUT -i eth0 --protocol tcp --source-port 3128 -j DROP
$IP -A INPUT -i eth0 --protocol tcp --destination-port 3128 -j DROP

# tiro todo lo que llega al port 30000
$IP -A INPUT -i eth0 --protocol udp --source-port 30000 -j DROP
$IP -A INPUT -i eth0 --protocol udp --destination-port 30000 -j DROP

# Registra todo para el depurado (la última de todas las reglas, pero
# antes de DROP/REJECT)
$IP -A INPUT   -j LOG --log-prefix "FIREWALL:INPUT  "
$IP -A FORWARD -j LOG --log-prefix "FIREWALL:FORWARD"
$IP -A OUTPUT  -j LOG --log-prefix "FIREWALL:OUTPUT "


Con esto funciono si tiene sugerencias o dudas si puedo les doy una
mano........Saludos

"Sólo el conocimiento nos hace libres"




Reply to: