alguien que tenga conocimientos sobre iptables¿? es que estoy metido ahora en esto, llamar a festor que me han dicho que esta actualizado sobre el tema jaja,
bueno a ya va mi problema es que quiero una compu que este bloqueada y que controle los puertos como son ssh, ftp etc de entrada y salida. Hasta aqui todo ok, pero el problema principal que me atasca es que necesito que la aplicacion firefox salga ya que esta todo bloqueado, e visto esta funcion:
-m owner -pid-owner pero no me la coje bien, seguramente podria ser la version y mirando ya no me sale ahora me sale -m owner -socket-exists
me podeis explicar un poco esto es que no consigo darle permisos a que la aplicacion tal(firefox), salga por el cortafuegos y no choque con las que bloquea (tcp y udp 1:65535),esto nolo quiero quitar...gracias
Cita de: tictac en 13 Mayo 2010, 18:06 PM
bueno a ya va mi problema es que quiero una compu que este bloqueada y que controle los puertos como son ssh, ftp etc de entrada y salida. Hasta aqui todo ok, pero el problema principal que me atasca es que necesito que la aplicacion firefox salga ya que esta todo bloqueado, e visto esta funcion:
-m owner -pid-owner pero no me la coje bien, seguramente podria ser la version y mirando ya no me sale ahora me sale -m owner -socket-exists
me podeis explicar un poco esto es que no consigo darle permisos a que la aplicacion tal(firefox), salga por el cortafuegos y no choque con las que bloquea (tcp y udp 1:65535),esto nolo quiero quitar...gracias
Por favor, intenta expresarte mejor... no digo que de la noche a la mañana te conviertas en un Cervantes... pero al menos intenta facilitar la lectura a los demás...
¿Podrías volcar el contenido del script que estas usando?
Cita de: tictac en 13 Mayo 2010, 18:06 PMalguien que tenga conocimientos sobre iptables¿? es que estoy metido ahora en esto, llamar a festor que me han dicho que esta actualizado sobre el tema jaja,
Ni soy ningún experto en iptables ni tengo extensos conocimientos sobre la materia.... :¬¬
ok,aya va neng
#!/bin/sh
## SCRIPT DE IPTABLES v1.4.3.2
## Fecha del script 22/04/2010
## Hecho por Sergio
###########################
# Declaracion de variables
###########################
INORIGEN="0.0.0.0/0.0.0.0"
OUTORIGEN="0.0.0.0/0.0.0.0"
INDESTINO="0.0.0.0/0.0.0.0"
OUTDESTINO="0.0.0.0/0.0.0.0"
IFACE1="lo"
IFACE2="eth0"
echo "Aplicando reglas de Firewall"
## FLUSH de reglas
iptables -F && echo "regla-1 ok"
iptables -X && echo "regla-2 ok"
iptables -Z && echo "regla-3 ok"
iptables -t nat -F && echo "regla-4 ok"
## Establecemos politica por defecto
iptables -P INPUT ACCEPT && echo "regla-5 ok"
iptables -P OUTPUT ACCEPT && echo "regla-6 ok"
iptables -P FORWARD ACCEPT && echo "regla-7 ok"
iptables -t nat -P PREROUTING ACCEPT && echo "regla-8 ok"
iptables -t nat -P POSTROUTING ACCEPT && echo "regla-9 ok"
## Empezamos a filtrar
# Paquetes en estado invalid
iptables -A INPUT -s $INORIGEN -d $INDESTINO -i $IFACE2 -p all -m state --state INVALID -j DROP && echo "regla-10 ok"
# Conexiones (localhost)
# Conexiones SSH,DNS
iptables -A INPUT -s 0.0.0.0/0.0.0.0 -d 0.0.0.0/0.0.0.0 -i eth0 -p tcp --dport 22 -j ACCEPT && echo "regla-30 ok"
#iptables -A OUTPUT -s 0.0.0.0/0.0.0.0 -d 0.0.0.0/0.0.0.0 -o eth0 -p tcp --dport 22 -j ACCEPT && echo "regla-31 ok"
#iptables -A INPUT -s 0.0.0.0/0.0.0.0 -d 0.0.0.0/0.0.0.0 -i eth0 -p tcp -m tcp
iptables -A INPUT -s $INORIGEN -d $INDESTINO -i $IFACE2 -p tcp --dport 53 -j ACCEPT && echo "regla-20 ok"
iptables -A INPUT -s $INORIGEN -d $INDESTINO -i $IFACE2 -p udp --dport 53 -j ACCEPT && echo "regla-21 ok"
iptables -A OUTPUT -s $OUTORIGEN -d $OUTDESTINO -o $IFACE2 -p tcp --dport 53 -j ACCEPT && echo "regla-22 ok"
iptables -A OUTPUT -s $OUTORIGEN -d $OUTDESTINO -o $IFACE2 -p udp --dport 53 -j ACCEPT && echo "regla-23 ok"
#iptables -A INPUT -d 0.0.0.0/0.0.0.0 -i eth0 -p tcp --dport 80 -j ACCEPT && echo "regla 24 ok"
#pid de programa para poder cerrar todos los puertos correctamente
#iptables -A OUTPUT -s $OUTORIGEN -d $OUTDESTINO -o $IFACE2 -m owner --socket-exists -j ACCEPT && echo "regla-26 ok"
## BLOQUEAR TODO
iptables -A INPUT -s $INORIGEN -d $INDESTINO -i $IFACE2 -p all -j DROP && echo "regla-44 ok"
iptables -A OUTPUT -s $OUTORIGEN -d $OUTDESTINO -o $IFACE2 -p all -j DROP && echo "regla-45 ok"
por lo visto el problema que tenia para que me salga en firefox se ha solucionado, pero no termino de entender la regla 26, haber si termino de controlar los procesos pid que salen por el cortafuegos
rectifico un error, no me sale el firefox si descomento la regla 26, es k no me he dado cuenta que estaba comentada, lo siento un error de los nervios.
Cita de: tictac en 13 Mayo 2010, 18:06 PMme podeis explicar un poco esto es que no consigo darle permisos a que la aplicacion tal(firefox), salga por el cortafuegos y no choque con las que bloquea (tcp y udp 1:65535),esto nolo quiero quitar...gracias
A ver... corrígeme si me equivoco...
Quieres permitir el trafico en función de la ejecución de una aplicación?
Si es así a ver si te sirve esto que encontré (a partir de la segunda opción):
http://linux.org.ar/pipermail/unlug/2006-June/000829.html
nada me sigue saliendo el mismo error de siempre , iptables v1.4.3.2: unknown option '--pid-owner'
salta cuando ejecuto el script cortafuegos, con -m owner -socket-exists
me deja pasar el firefox, y cualquier cosa que quiera salir, con el output, es decir que coje los sockets de todas las aplicaciones no de las que tu quieres, el manual ese no m a servido d mucho podria ser que esa opcionla ayan quitado(-m -owner -pid-owner¿?,pork el -uid-owner si que lo coje sin problema, pero no es el pid, es usuario, se te ocurre algo neng
Pues más que quitado lo que parece que está desactivado es su soporte en el kernel...
Cita de: http://manpages.ubuntu.com/manpages/hardy/man8/iptables.8.html
--pid-owner processid
Matches if the packet was created by a process with the given
process id. (Please note: This option requires kernel support
that might not be available in official Linux kernel sources or
Debian’s packaged Linux kernel sources. And if support for this
option is available for the specific Linux kernel source
version, that support might not be enabled in the current Linux
kernel binary.)
BTW, ¿que distro Linux usas?
fedora, pero este script lo pasare mas adelante aun debian y ubuntu, entonces es problema de lo modulos del kernel¿?
entonces como me puedo manejar con todo esto de los modulos de iptables,... porque no soy un experto, si tienes algun manual bueno y actualizado, o algun script para hacerme una idea de los modulos a aplicar a mis script me vendria de lujo,
lo probare en otras distros cuando pueda haber como tira
Cita de: tictac en 13 Mayo 2010, 20:57 PM
fedora, pero este script lo pasare mas adelante aun debian y ubuntu, entonces es problema de lo modulos del kernel¿?
Pues parece que si... no sé el motivo pero al menos en las últimas versiones de Debian, Ubuntu y parece ser que también Fedora, los parámetros
pid-owner,
sid-owner y
cmd-owner del iptables carecen de soporte en el kernel por lo que sólo quedan las opciones
uid-owner y
gid-owner, es decir, restringir procesos por usuario y/o grupo de usuarios.
Solución? Pues recompilar el kernel o buscar una alternativa que escapa a mis conocimientos.... :-\