IPFWADM
Section: Manual del Programador de Linux (8)
Updated: 30 Julio 1996
Index Return to Main
Contents
NOMBRE
ipfwadm - Administración del cortafuegos y contabilidad IP
SINOPSIS
ipfwadm -A parámetros [opciones]
ipfwadm -I parámetros [opciones]
ipfwadm -O parámetros [opciones]
ipfwadm -F parámetros [opciones]
ipfwadm -M [-l | -s] [opciones]
DESCRIPCIÓN
Ipfwadm se utiliza para configurar, mantener e inspeccionar
los cortafuegos IP y las reglas de contabilidad del núcleo Linux.
Estas reglas se pueden dividir en cuatro categorías diferentes:
contabilidad de paquetes IP, cortafuegos de entrada IP, cortafuegos
de salida IP y cortafuegos de reenvío. Para cada una de estas
categorías se mantiene una lista separada de reglas.
Las prestaciones de cortafuegos y de contabilidad del núcleo
Linux proporcionan mecanismos para contabilizar paquetes IP, para
construir cortafuegos basados en el filtrado a nivel de paquetes,
para construir cortafuegos que usen servidores proxy transparentes
(mediante redirección de paquetes a conectores (sockets) locales),
y para el reenvio de paquetes enmascarados (con IP-masquerade). La
administración de estas funciones se mantiene en el núcleo mediante
cuatro listas separadas, cada una de las cuales contiene reglas:
ninguna, una, dos... Cada regla contiene información específica
sobre las direcciones origen y destino, protocolos, número de
puerto y algunas otras características. Un paquete se ajusta a una
regla cuando las características de una regla se ajustan a la
dirección IP de ese paquete. Estas reglas se pueden dividir en
cuatro categorías diferentes:
- Reglas de contabilidad del cortafuegos IP:
- Se usan para todos los paquetes IP que son enviados o recibidos
por el interfaz local de red. Cada paquete se compara con la lista
de reglas, y en caso de coincidencia se incrementan los contadores
de paquetes y bytes asociados con las reglas.
- Reglas de entrada del cortafuegos IP:
- Estas reglas se aplican a los paquetes IP entrantes. Todos los
paquetes que llegan por algún interfaz local se comprueban con las
reglas de entrada. La primera regla que se verifica determina la
política que se usa. Cuando no se ajusta a ninguna regla se utiliza
la política por defecto.
- Reglas de salida del cortafuegos IP:
- Estas reglas definen los permisos para enviar paquetes IP.
Todos los paquetes que están listos para ser enviados por un
interfaz local son comprobados con las reglas de salida. La primera
regla que se cumple determina el comportamiento que se aplica.
Cuando no se ajusta a ninguna regla se utiliza la política por
defecto.
- Reglas de reenvío del cortafuegos IP:
- Estas reglas definen los permisos para el reenvío de paquetes
IP. Todos los paquetes enviados por un host remoto con destino a
otro host remoto se comprueban con las reglas de reenvío. La
primera regla que verifica un paquete determina la política que se
utilizará. Cuando no se verifica ninguna regla, se aplica el
comportamiento por defecto.
Para cada una de estas categorías se mantiene una lista separada
de reglas. Véase ipfw(4)
para más detalles.
OPCIONES
Las opciones reconocidas por ipfwadm se dividen en varios
grupos diferentes.
CATEGORÍAS
Las siguientes opciones se usan para seleccionar la categoría de
reglas a las que se aplican los comandos:
- -A [dirección]
- Reglas de contabilidad IP. Opcionalmente se puede especificar
un sentido (in, out, both), indicando
si sólo se deben contar paquetes de entrada, de salida o de ambos
tipos. La opción por defecto es both.
- -I
- Reglas de entrada al cortafuegos IP.
- -O
- Reglas de salida del cortafuegos IP.
- -F
- Reglas de reenvío del cortafuegos IP.
- -M
- Administración de "IP masquerading". Esta categoría sólo se
puede usar en combinación con el comando -l (list) o el
comando -s (fijar tiempo de expiración).
Se tiene que especificar exactamente una de estas opciones.
COMANDOS
Las siguientes opciones especifican la acción concreta que hay que
realizar. Sólo se puede especificar una de ellas en la línea de
comandos, salvo que se indique otra cosa en la descripción.
- -a [comportamiento]
- Añade una o más reglas al final de la lista seleccionada. Para
la contabilidad no se puede especificar ningún comportamiento. Para
el cortafuegos es necesario especificar una de las siguientes
políticas: accept, masquerade (válida sólo para
reglas de reenvío), deny o reject.
Cuando los nombre de origen y/o destino se resuelven con más de
una dirección, se añadirá una regla para cada posible
combinación.
- -i [comportamiento]
- Inserta una o más reglas al principio de la lista seleccionada.
Vea la descripción del comando -a para más detalles.
- -d [comportamiento]
- Borra una o más entradas al comienzo de la lista seleccionada.
La semántica es idéntica a la de los comandos anteriores. Los
parámetros especificados deben coincidir exactamente con los dados
en los comandos añadir o insertar. En otro caso, si no se ajusta a
nada, no se borrará ninguna regla. Sólo se borra la primera
coincidencia.
- -l
- Lista todas las reglas de la lista seleccionada. Este comando
se puede combinar con el comando -z (reiniciar el contador a
cero). En ese caso los contadores de bytes y de paquetes se
reinician inmediatamente tras mostrar sus valores actuales. Salvo
que la opción -x esté presente, los contadores de paquetes
(si son listados) se mostrarán como númeroK o númeroM donde 1K
significa 1000 y 1M significa 1000K (redondeado al valor entero más
cercano). Vea también las opciones -e y -x para ver
más posibilidades.
- -z
- Reinicia los contadores de bytes y de paquetes de todas las
reglas de la lista seleccionada. Este comando se puede combinar con
el comando -l (list).
- -f
- Vacía la lista de reglas seleccionada.
- -p política
- Cambia la política por defecto para el tipo seleccionado de
cortafuegos. La política dada tiene que ser una de accept,
masquerade (sólo válida para reglas de reenvío), deny
o reject. La política por defecto se utiliza cuando no se
encuentra ninguna regla que se ajuste. Esta operación sólo es
válida para cortafuegos IP, esto es, en combinación con las
opciones -I, -O o -F.
- -c
- Comprueba si este paquete IP sería aceptado, denegado o
rechazado por el tipo de cortafuegos seleccionado. Esta operación
sólo es válida para cortafuegos IP en combinación con las opciones
-I, -O
o -F.
- -s tcp tcpfin udp
- Cambia los valores de caducidad (timeout) usados en el
enmascaramiento. Este comando siempre toma tres parámetros, que
representan valores de caducidad (en segundos) para sesiones TCP,
sesiones TCP tras recibir un paquete FIN y paquetes UDP,
respectivamente. Un valor de caducidad 0 significa que el valor
actual de caducidad, de la entrada correspondiente, se preserva.
Esta operación sólo está permitida en combinación con la opción
-M.
- -h
- Ayuda. Da una descripción (actualmente breve) de la sintaxis
del comando.
PARÁMETROS
Los siguientes parámetros se pueden usar en combinación con los
comandos -a, -i, -d o -c:
- -P protocolo
- El protocolo de la regla o del paquete a comprobar. El
protocolo especificado puede ser tcp, udp,
icpm o all. El protocolo all se adaptará a
todos los protocolos y se toma por defecto cuando se omite esta
opción. all no se puede usar en combinación con el comando
-c.
- -S dirección[/máscara] [puerto...]
- Especificación de origen (obligatorio). La dirección puede ser
bien un nombre de host, un nombre de red o una dirección IP
concreta. La máscara puede ser una máscara de red o un número que
indique el número de bits con valor 1 a la izquierda de la máscara
de red. Es decir, son equivalentes la máscara 255.255.255.0 y el
número 24. El origen puede incluir una o más especificaciones de
puertos o tipos ICMP. Cada uno de ellos puede ser un nombre de
servicio, número de puerto o un tipo ICPM (numérico). En el resto
de este párrafo, puerto significa o una especificación de puerto o
un tipo ICPM. Una de estas especificaciones puede ser un rango de
puertos, con el formato puerto:puerto. Además, el número total de
puertos especificados con las direcciones origen y destino no debe
ser mayor que IP_FW_MAX_PORTS (actualmente 10). Aquí un rango de
puertos cuenta como dos puertos.
Los paquetes que no son el primer fragmento de un paquete
TCP, UDP o ICMP son siempre aceptados por el
cortafuegos. Por motivos de contabilidad, estos segundos y
posteriores fragmentos se tratan de forma especial para poderlos
contar de alguna forma. El puerto número 0xFFFF (65535) se usa para
ajustarse con el segundo y siguientes fragmentos de paquetes TCP o
UDP. Estos paquetes se tratarán para propósitos de contabilidad
como si sus puertos fueran 0xFFFF. El número 0xFF (255) se usa para
ajustarse con el segundo y siguientes fragmentos para contabilidad
de paquetes ICPM. Estos paquetes se tratarán, para propósitos de
contabilidad, como si sus tipos ICPM fueran 0xFF. Observe que los
comando y protocolo especificados pueden implicar restricciones
sobre el puerto que sea especificado en combinación con los
protocolos tcp, udp o icpm. También, cuando se
especifica el comando -c, se requiere exactamente un
puerto.
- -D dirección[/máscara] [puerto...]
- Especificaciones de destino (obligatorio). Vea la descripción
de la opción -S (origen) para una descripción detallada de
la sintaxis. Observe que los tipos ICMP no están permitidos
en combinación con la opción -D; los tipos ICMP sólo
se pueden especificar tras la bandera -S.
- -V dirección
- La dirección opcional de un interfaz a través del cual se envía
o recibe un paquete. dirección puede ser un nombre de host o
una dirección IP. Cuando se especifica un nombre de host, éste se
debe resolver a exactamente una dirección IP. Cuando se omite esta
opción, se supone la dirección 0.0.0.0, que tiene un
significado especial y se ajustará a cualquier dirección de
interfaz. Para el comando -c, esta opción es
obligatoria.
- -W nombre
- Nombre opcional de un interfaz a través del cual se envían o
reciben paquetes. Cuando se omite, se supone una cadena de
caracteres vacía, que tiene un significado especial y se ajustará a
cualquier nombre de interfaz.
OTRAS OPCIONES
Se pueden especificar las siguientes opciones adicionales:
- -b
- Modo Bidireccional. La regla se ajustará con paquetes IP en
ambas direcciones. Esta opción sólo es válida en combinación con
los comandos -a, -i o -d.
- -e
- Salida extendida. Esta opción hace al comando -l mostrar
también la dirección del interfaz y las opciones de la regla (si
existe). Para las listas del cortafuegos, también se mostrarán los
contadores de bytes y paquetes (por defecto sólo se muestran los
contadores para las reglas de contabilidad) y se muestran las
máscaras TOS. Cuando se usa en combinación con -M, también
mostrará la información relacionada con la secuencia de números
delta. Esta opción sólo es válida en combinación con el comando
-l.
- -k
- Ajustar sólo a paquetes TCP con el bit ACK activo. Esta opción
sólo es válida en combinación con los comandos -a, -i
o -d, y el protocolo TCP.
- -m
- Enmascaramiento de paquetes aceptados para reenvío. Cuando se
utiliza esta opción, los paquetes aceptados por esta regla serán
enmascarados como si fueran originales del host local. Además, los
paquetes de respuesta serán reconocidos como tales y serán
desenmascarados automáticamente pasando el cortafuegos de reenvío.
Esta opción es sólo válida para las reglas de reenvío con
comportamiento accept (o cuando se haya especificado
accept como el comportamiento por defecto), y sólo se puede
usar cuando se compila el núcleo con la opción
CONFIG_IP_MASQUERADE.
- -n
- Salida numérica. Las direcciones IP y números se imprimirán en
formato numérico. Por defecto, el programa intentará mostrarlos
como nombres de host, nombres de red o servicios (cuando sea
aplicable).
- -o
- Activa el registro del núcleo de paquetes ajustados. Cuando se
pone esta opción para una regla, el núcleo de Linux imprimirá
cierta información básica de todos los paquetes que se ajusten a
ella mediante printk(). Esta opción sólo será efectiva
cuando se compile el núcleo con la opción
CONFIG_IP_FIREWALL_VERBOSE. Esta opción sólo es válida en
combinación con los comandos -a, -i o -d.
- -r [puerto]
- Redirecciona paquetes a un conector (socket) local. Cuanto se
utiliza esta opción, los paquetes aceptados por la regla serán
redireccionados a un conector local, incluso si fueran
redireccionados a un host remoto. Si el puerto redireccionado es 0,
que es el valor por defecto, se usará el puerto destino del paquete
como el puerto de redirección. Esta opción es sólo válida en las
reglas de entrada del cortafuegos con comportamiento accept
y sólo puede ser utilizada cuando el núcleo de Linux está compilado
con la opción CONFIG_IP_TRANSPARENT_PROXY.
- -t andmask xormask
- Máscara utilizada para modificar el campo TOS en la cabecera
IP. Cuando un paquete se acepta (con o sin masquerade) por una
regla del cortafuegos, a su campo TOS primero se le hace un
Y-lógico con la máscara andmask y al resultado se le
aplica un O-lógico exclusivo con la máscara xormask.
La máscara se debe especificar en valores de 8 bits hexadecimales.
Esta opción sólo es válida en combinación con los comandos
-a, -i o -d, y no tendrá efectos cuando se
utilice en combinación con reglas de contabilidad o de cortafuegos
para rechazar o denegar un paquete.
- -v
- Salida detallada. Imprime información detallada de la regla o
paquete añadido, borrado o comprobado. Esta opción sólo tendrá
efecto con los comandos -a, -i, -d o
-c.
- -x
- Expande números. Muestra el valor exacto de los contadores de
bytes y de paquetes, en lugar de sólo los números redondeados a
múltiplos de 1K o de 1M (múltiplo de 1000K). Esta opción sólo
tendrá efecto cuando se muestren los contadores de cualquier forma
(vea la opción -e).
- -y
- Solo ajusta paquetes TCP con el bit SYN activado y el bit ACK
desactivado. Esta opción sólo es válida en combinación con los
comandos -a, -i o -d, y el protocolo TCP.
FICHEROS
/proc/net/ip_acct
/proc/net/ip_input
/proc/net/ip_output
/proc/net/ip_forward
/proc/net/ip_masquerade
VÉASE TAMBIÉN
ipfw(4)
AUTOR
Jos Vos <jos@xos.nl>
X/OS Expert in Open Systems BV, Amsterdam, The Netherlands
Index
- NOMBRE
- SINOPSIS
- DESCRIPCIÓN
- OPCIONES
-
- CATEGORÍAS
- COMANDOS
- PARÁMETROS
- OTRAS OPCIONES
- FICHEROS
- VÉASE TAMBIÉN
- AUTOR
This document was created by man2html, using
the manual pages.
Time: 20:28:09 GMT, January 21, 2005