Puedes usar Firestarter, es mucho facil
yo lo uso y tengo termianl server
----- Mensaje original ---- De: Andre Aspée easpee@gmail.com Para: centos-es@centos.org Enviado: martes, 22 de julio, 2008 19:08:58 Asunto: [CentOS-es] Problemas Iptables - Direccionar a maquina interna
Buenas a todos, Necesito direccionar a una maquina de mi red para utilizar terminal server, desde dentro de la red me basta con ingresar a traves de su ip. Pero desde afuera (internet) no me puedo conectar, necesito entonces que me puedan ayudar con las reglas de mi firewall, ya que lo que he intentado no me resulta. Les dejo el archivo de mi firewall (si alguien ve algo que no corresponda porfavor me avisa) Saludos
#!/bin/sh
## Configuracion de clientes # IP: 192.168.10.x # mascara: 255.255.255.0 # gateway: 192.168.10.1 # dns1: 200.75.0.4 # dns2: 200.75.25.224
# Ruta del archivo iptables IPTABLES=/sbin/iptables
# IFEXT por donde salgo a internet # ip externa: 111.111.111.111 (es para ejemplo) IFEXT="eth1"
# IFINT red interna, la que conecta a los cliente IFINT="eth0" # IP: 192.168.10.1 # Broadcast: 192.168.10.255 # gateway 192.168.10.1
fw_start() { echo "Iniciando FIREWALL, [DEFAULT ACCEPT Policy]"
# Inicializando $IPTABLES -F # Limpia todas las cadenas $IPTABLES -X # Borra cadenas vacias $IPTABLES -Z # Pone a 0 lo contadores de paquetes y bytes de todas las reglas de todas las cadenas $IPTABLES -t nat -F
# Politica por defecto $IPTABLES -P INPUT ACCEPT && echo "regla: 1 - OK!" $IPTABLES -P OUTPUT ACCEPT && echo "regla: 2 - OK!" $IPTABLES -P FORWARD ACCEPT && echo "regla: 3 - OK!" $IPTABLES -t nat -P PREROUTING ACCEPT && echo "regla: 5 - OK!" $IPTABLES -t nat -P POSTROUTING ACCEPT && echo "regla: 6 - OK!"
## INICIO DE FILTRADO # dejamos que vayan al firewall $IPTABLES -A INPUT -s 192.168.10.0/24 -i $IFINT -j ACCEPT && echo "regla: 7 - OK!"
## Puertos y SITIOS DENEGADOS iptables -A FORWARD -s 192.168.10.0/24 -d 64.13.152.67 -p tcp --dport 443 -j DROP #imo.im iptables -A FORWARD -s 192.168.10.0/24 -d 64.13.152.67 -p udp --dport 443 -j DROP #imo.im
## PUERTOS PERMITIDOS # Aceptamos que vayan a puertos 80:HTTP, 443:HHTPS, 110:SMTP, 25:POP3, 465:GMAIL, 995:GMAIL, 53:DNS
$IPTABLES -A FORWARD -s 192.168.10.0/24 -i $IFINT -p tcp --dport 80 -j ACCEPT && echo "regla: 8 - OK!" $IPTABLES -A FORWARD -s 192.168.10.0/24 -i $IFINT -p tcp --dport 443 -j ACCEPT && echo "regla: 9 - OK!" $IPTABLES -A FORWARD -s 192.168.10.0/24 -i $IFINT -p tcp --dport 8080 -j ACCEPT && echo "regla: 10 - OK!" $IPTABLES -A FORWARD -s 192.168.10.0/24 -i $IFINT -p tcp --dport 110 -j ACCEPT && echo "regla: 11 - OK!" $IPTABLES -A FORWARD -s 192.168.10.0/24 -i $IFINT -p tcp --dport 25 -j ACCEPT && echo "regla: 12 - OK!" $IPTABLES -A FORWARD -s 192.168.10.0/24 -i $IFINT -p tcp --dport 465 -j ACCEPT && echo "regla: 13 - OK!" $IPTABLES -A FORWARD -s 192.168.10.0/24 -i $IFINT -p tcp --dport 995 -j ACCEPT && echo "regla: 14 - OK!" $IPTABLES -A FORWARD -s 192.168.10.0/24 -i $IFINT -p tcp --dport 53 -j ACCEPT && echo "regla: 15 - OK!" $IPTABLES -A FORWARD -s 192.168.10.0/24 -i $IFINT -p udp --dport 53 -j ACCEPT && echo "regla: 16 - OK!" $IPTABLES -A FORWARD -s 192.168.10.0/24 -i $IFINT -p tcp --dport 20:23 -j ACCEPT && echo "FTP TCP OK!!" $IPTABLES -A FORWARD -s 192.168.10.0/24 -i $IFINT -p udp --dport 20:23 -j ACCEPT && echo "FTP UDP OK!" $IPTABLES -A FORWARD -s 192.168.10.0/24 -i $IFINT -p tcp --dport 3389 -j ACCEPT && echo "terminal TCP OK"
# CERRAMOS LOS DEMAS PUERTOS $IPTABLES -A FORWARD -s 192.168.10.0/24 -i $IFINT -j DROP && echo "regla: 17 - OK!"
# NAT echo 1 > /proc/sys/net/ipv4/ip_forward
$IPTABLES -t nat -A POSTROUTING -s 192.168.10.0/24 -o $IFEXT -j SNAT --to 111.111.111.111
#ICMP $IPTABLES -A INPUT -i $IFEXT -p ICMP -j ACCEPT #dejo pasar al puerto 3389 $IPTABLES -A INPUT -i $IFEXT -p TCP --dport 3389 -m state --state NEW -j ACCEPT #direcciono a maquina interna $IPTABLES -t nat -A PREROUTING -i $IFEXT -p tcp --dport 3389 -j DNAT --to 192.168.10.100:3389 #acepto paquetes de conexiones establecidas $IPTABLES -A INPUT -i $IFEXT -p TCP -m state --state RELATED -j ACCEPT
$IPTABLES -t nat -A PREROUTING -i $IFINT -p tcp --dport 80 -j REDIRECT --to-port 8080
$IPTABLES -A FORWARD -i $IFEXT -o $IFINT -m state --state ESTABLISHED,RELATED -j ACCEPT $IPTABLES -A FORWARD -i $IFINT -o $IFEXT -j ACCEPT $IPTABLES -A FORWARD -j LOG --log-level warning --log-prefix "IPTABLES FORWARD: "
# CERRAMOS LOS ACCESOS INDESEADOS DESDE EL EXTERIOR 0.0.0.0/0 ES CUALQUIER RED $IPTABLES -A INPUT -s 0.0.0.0/0 -p tcp --dport 1:1024 -j DROP $IPTABLES -A INPUT -s 0.0.0.0/0 -p udp --dport 1:1024 -j DROP $IPTABLES -A INPUT -s 0.0.0.0/0 -p tcp --dport 10000 -j DROP }
fw_stop() { echo "Finalizando FIREWALL, [DEFAULT ACCEPT Policy]" $IPTABLES -F $IPTABLES -X $IPTABLES -Z $IPTABLES -P INPUT ACCEPT $IPTABLES -P OUTPUT ACCEPT $IPTABLES -P FORWARD ACCEPT }
fw_status() { $IPTABLES -nL }
case "$1" in 'start') fw_start ;; 'stop') fw_stop ;; 'status') fw_status ;; *) echo "Usage: $0 start|stop|status" esac
_______________________________________________ CentOS-es mailing list CentOS-es@centos.org http://lists.centos.org/mailman/listinfo/centos-es
____________________________________________________________________________________ Yahoo! MTV Blog & Rock >¡Cuéntanos tu historia, inspira una canción y gánate un viaje a los Premios MTV! Participa aquí http://mtvla.yahoo.com/
Rene Chirivi escribió:
Puedes usar Firestarter, es mucho facil
yo lo uso y tengo termianl server
----- Mensaje original ---- De: Andre Aspée easpee@gmail.com Para: centos-es@centos.org Enviado: martes, 22 de julio, 2008 19:08:58 Asunto: [CentOS-es] Problemas Iptables - Direccionar a maquina interna
Buenas a todos, Necesito direccionar a una maquina de mi red para utilizar terminal server, desde dentro de la red me basta con ingresar a traves de su ip. Pero desde afuera (internet) no me puedo conectar, necesito entonces que me puedan ayudar con las reglas de mi firewall, ya que lo que he intentado no me resulta. Les dejo el archivo de mi firewall (si alguien ve algo que no corresponda porfavor me avisa) Saludos
#!/bin/sh
## Configuracion de clientes # IP: 192.168.10.x # mascara: 255.255.255.0 # gateway: 192.168.10.1 # dns1: 200.75.0.4 # dns2: 200.75.25.224
.... Bueno, instale firestarter, problema solucionado....gracias
Hola,
Ayer me instale el firestarter y logre direccionar el servicio de terminal server a una maquina de mi lan, pero se me creo otro problema. Resulta que tengo squid y el firewall en la misma máquina, entonces con las reglas de iptables yo redireccionaba hacia el puerto 8080 todas las peticiones de los clientes lan, asi los hacia pasar por el squid y lograba filtrar contenido. Bueno, con el firestarter no logro realizar este paso, puedo direccionar lo que viene desde afuera (internet) hacia una maquina interna, pero no logro direccionar de mi lan al squid que se encuentra en la misma máquina de firewall. Si me pueden ayudar, ya sea corrigiendo mi script de firewall para poder direccionar a maquinas de mi lan, o indicandome si con el firestarter puedo lograr que todos los clientes lan pasen por squid antes de salir a internet. Saludos
----- Mensaje original ---- De: Andre Aspée easpee@gmail.com Para: centos-es@centos.org Enviado: martes, 22 de julio, 2008 19:08:58 Asunto: [CentOS-es] Problemas Iptables - Direccionar a maquina interna
Buenas a todos, Necesito direccionar a una maquina de mi red para utilizar terminal server, desde dentro de la red me basta con ingresar a traves de su ip. Pero desde afuera (internet) no me puedo conectar, necesito entonces que me puedan ayudar con las reglas de mi firewall, ya que lo que he intentado no me resulta. Les dejo el archivo de mi firewall (si alguien ve algo que no corresponda porfavor me avisa) Saludos
#!/bin/sh
## Configuracion de clientes # IP: 192.168.10.x # mascara: 255.255.255.0 # gateway: 192.168.10.1 # dns1: 200.75.0.4 # dns2: 200.75.25.224
# Ruta del archivo iptables IPTABLES=/sbin/iptables
# IFEXT por donde salgo a internet # ip externa: 111.111.111.111 (es para ejemplo) IFEXT="eth1"
# IFINT red interna, la que conecta a los cliente IFINT="eth0" # IP: 192.168.10.1 # Broadcast: 192.168.10.255 # gateway 192.168.10.1
fw_start() { echo "Iniciando FIREWALL, [DEFAULT ACCEPT Policy]"
# Inicializando $IPTABLES -F # Limpia todas las cadenas $IPTABLES -X # Borra cadenas vacias $IPTABLES -Z # Pone a 0 lo contadores de paquetes y bytes de todas las reglas de todas las cadenas $IPTABLES -t nat -F
# Politica por defecto $IPTABLES -P INPUT ACCEPT && echo "regla: 1 - OK!" $IPTABLES -P OUTPUT ACCEPT && echo "regla: 2 - OK!" $IPTABLES -P FORWARD ACCEPT && echo "regla: 3 - OK!" $IPTABLES -t nat -P PREROUTING ACCEPT && echo "regla: 5 - OK!" $IPTABLES -t nat -P POSTROUTING ACCEPT && echo "regla: 6 - OK!"
## INICIO DE FILTRADO # dejamos que vayan al firewall $IPTABLES -A INPUT -s 192.168.10.0/24 -i $IFINT -j ACCEPT && echo "regla: 7 - OK!"
## Puertos y SITIOS DENEGADOS iptables -A FORWARD -s 192.168.10.0/24 -d 64.13.152.67 -p tcp --dport 443 -j DROP #imo.im iptables -A FORWARD -s 192.168.10.0/24 -d 64.13.152.67 -p udp --dport 443 -j DROP #imo.im
## PUERTOS PERMITIDOS # Aceptamos que vayan a puertos 80:HTTP, 443:HHTPS, 110:SMTP, 25:POP3, 465:GMAIL, 995:GMAIL, 53:DNS
$IPTABLES -A FORWARD -s 192.168.10.0/24 -i $IFINT -p tcp --dport 80 -j ACCEPT && echo "regla: 8 - OK!" $IPTABLES -A FORWARD -s 192.168.10.0/24 -i $IFINT -p tcp --dport 443 -j ACCEPT && echo "regla: 9 - OK!" $IPTABLES -A FORWARD -s 192.168.10.0/24 -i $IFINT -p tcp --dport 8080 -j ACCEPT && echo "regla: 10 - OK!" $IPTABLES -A FORWARD -s 192.168.10.0/24 -i $IFINT -p tcp --dport 110 -j ACCEPT && echo "regla: 11 - OK!" $IPTABLES -A FORWARD -s 192.168.10.0/24 -i $IFINT -p tcp --dport 25 -j ACCEPT && echo "regla: 12 - OK!" $IPTABLES -A FORWARD -s 192.168.10.0/24 -i $IFINT -p tcp --dport 465 -j ACCEPT && echo "regla: 13 - OK!" $IPTABLES -A FORWARD -s 192.168.10.0/24 -i $IFINT -p tcp --dport 995 -j ACCEPT && echo "regla: 14 - OK!" $IPTABLES -A FORWARD -s 192.168.10.0/24 -i $IFINT -p tcp --dport 53 -j ACCEPT && echo "regla: 15 - OK!" $IPTABLES -A FORWARD -s 192.168.10.0/24 -i $IFINT -p udp --dport 53 -j ACCEPT && echo "regla: 16 - OK!" $IPTABLES -A FORWARD -s 192.168.10.0/24 -i $IFINT -p tcp --dport 20:23 -j ACCEPT && echo "FTP TCP OK!!" $IPTABLES -A FORWARD -s 192.168.10.0/24 -i $IFINT -p udp --dport 20:23 -j ACCEPT && echo "FTP UDP OK!" $IPTABLES -A FORWARD -s 192.168.10.0/24 -i $IFINT -p tcp --dport 3389 -j ACCEPT && echo "terminal TCP OK"
# CERRAMOS LOS DEMAS PUERTOS $IPTABLES -A FORWARD -s 192.168.10.0/24 -i $IFINT -j DROP && echo "regla: 17 - OK!"
# NAT echo 1 > /proc/sys/net/ipv4/ip_forward
$IPTABLES -t nat -A POSTROUTING -s 192.168.10.0/24 -o $IFEXT -j SNAT --to 111.111.111.111
#ICMP $IPTABLES -A INPUT -i $IFEXT -p ICMP -j ACCEPT #dejo pasar al puerto 3389 $IPTABLES -A INPUT -i $IFEXT -p TCP --dport 3389 -m state --state NEW -j ACCEPT #direcciono a maquina interna $IPTABLES -t nat -A PREROUTING -i $IFEXT -p tcp --dport 3389 -j DNAT --to 192.168.10.100:3389 #acepto paquetes de conexiones establecidas $IPTABLES -A INPUT -i $IFEXT -p TCP -m state --state RELATED -j ACCEPT
$IPTABLES -A FORWARD -i $IFEXT -o $IFINT -m state --state ESTABLISHED,RELATED -j ACCEPT $IPTABLES -A FORWARD -i $IFINT -o $IFEXT -j ACCEPT $IPTABLES -A FORWARD -j LOG --log-level warning --log-prefix "IPTABLES FORWARD: "
$IPTABLES -t nat -A PREROUTING -i $IFINT -p tcp --dport 80 -j REDIRECT --to-port 8080
# CERRAMOS LOS ACCESOS INDESEADOS DESDE EL EXTERIOR 0.0.0.0/0 ES CUALQUIER RED
$IPTABLES -A INPUT -s 0.0.0.0/0 -p tcp --dport 1:1024 -j DROP $IPTABLES -A INPUT -s 0.0.0.0/0 -p udp --dport 1:1024 -j DROP $IPTABLES -A INPUT -s 0.0.0.0/0 -p tcp --dport 10000 -j DROP }
fw_stop() { echo "Finalizando FIREWALL, [DEFAULT ACCEPT Policy]" $IPTABLES -F $IPTABLES -X $IPTABLES -Z $IPTABLES -P INPUT ACCEPT $IPTABLES -P OUTPUT ACCEPT $IPTABLES -P FORWARD ACCEPT }
fw_status() { $IPTABLES -nL }
case "$1" in 'start') fw_start ;; 'stop') fw_stop ;; 'status') fw_status ;; *) echo "Usage: $0 start|stop|status" esac
El mié, 23-07-2008 a las 10:08 -0400, Andre Aspée escribió:
Hola,
Ayer me instale el firestarter y logre direccionar el servicio de terminal server a una maquina de mi lan, pero se me creo otro problema. Resulta que tengo squid y el firewall en la misma máquina, entonces con las reglas de iptables yo redireccionaba hacia el puerto 8080 todas las peticiones de los clientes lan, asi los hacia pasar por el squid y lograba filtrar contenido. Bueno, con el firestarter no logro realizar este paso, puedo direccionar lo que viene desde afuera (internet) hacia una maquina interna, pero no logro direccionar de mi lan al squid que se encuentra en la misma máquina de firewall. Si me pueden ayudar, ya sea corrigiendo mi script de firewall para poder direccionar a maquinas de mi lan, o indicandome si con el firestarter puedo lograr que todos los clientes lan pasen por squid antes de salir a internet. Saludos
Hace muchos año que ya no escribo scripts para manejar mis reglas de iptables, porque empezé a utilizar Shorewall http://www.shorewall.net/
Es facil de instalar, y de usar. Podrás hacer prácticamente todo lo que necesites a nivel de IPTables.
Exitos y cuéntanos como te va