Log del taller de iptables

Este ha sido un taller un poco más complicado, ya que requería de ciertos conocimientos previos. Aún así, aunque durante el taller no hayáis entendido todo, releyendo el log y los apuntes que tan amablemente colgó Alfonso, seguro que se acaba de entender todo.

Los apuntes que hizo Alfonso, y tan amablemente compartió, estan aquí.

A continuación el log del taller, como de costumbre dividido en secciones para que sea más sencillo de leer.

Introducción

20:26  he pensado que necesariamente se han de conocer ciertos conceptos para poder trabajar con iptables
20:26  de modo que os metere un poco de chapa al principio, definimos conceptos, y ya despues, dado que no voy a usar ejemplos, buscamos algunos en google y explicamos que hacen ok??
20:26  TALLER DE PROTECCIÓN PERIMETRAL
20:26  IPTABLES
20:27  en primer lugar, que sepais que yo soy un mero usuario que me gustan estas cosas, de ahi que investigue y me interrogue, pero tampoco soy la de dios. Si me equivoco, seguro que algun admin es lo suficientemente perspicaz para corregirme ok?
20:27  Antes de iniciar el taller, quede claro que iptables conforma un anillo de seguridad que se ha de implementar junto con muchos otros, bien en el perímetro, como es el caso de iptables, bien en otros, como la protección a nivel de usuario, o la protección física (de acceso físico a un equipo). La seguridad consiste en la adecuada implementación de otras muchas herramientas en distintos niveles, y, por supuesto, en un constante y ade
20:27  vamos que solo iptables no es seguro
20:27  IPTABLES
20:27  Aplicación de nivel de usuario que permite la administración de paquetes a nivel de red.
20:28  Para ello utiliza Netfilter: framework incluído en el kernel de Linux
20:28  si voy muy rapido me decis eh? voy copiando y pegando
20:28  hasta aqui todo ok??
20:29  Observad que vamos a trabajar con el protocolo IPv4, dado que es el que normalmente suministran nuestras ISPs. Para IPv6 existe ip6tables
20:29  Por defecto, en una nueva instalación, las políticas predefinidas son ACCEPT. He podido comprobar cómo en una instalación de CentOS (derivada de RHEL) ya se establecen ciertas reglas distintas, pero en general cualquier distro configura ACCEPT como políticas por defecto. No sé qué distro usais pero si no habeis tocado nada podéis hacer
20:29  iptables -L
20:29  y lo comprobais
20:30  recordad que iptables solo lo puede utilizar root vale?
20:30  esa salida os mostrara una serie de politicas que generalmente son accept
20:31  es decir, todos los paquetes son aceptados, ya sean entrantes, salientes de nuestra maquina, de cualquier protocolo....
20:31  seguimos??
20:31  dudas??

Funcionamiento Básico

20:33  no hay dudas, continua, La_profe_bOmbOn
20:33  ya los vemos despues cuando terminemos, buscamos en google y desciframos que hace cada linea de comandos ok??
20:33  ok sigo pues
20:34  funcionamiento de IPTables
20:34  1/Dado que todos los paquetes han de pasar por el kernel, con iptables podemos definir una serie de REGLAS (RULES) por los que inexorablemente han de pasar dichos paquetes.
20:34  Así pues definimos REGLA: Conjunto de parámetros que definen -o pueden definir- un determinado paquete, según diversos criterios.
20:34  Por su protocolo (TCP; UDP, HTTP; SSH...), por la dirección de IP (de origen y destino), por su estado (NEW, ESTABLISHED, INVALID...), etc
20:35  en cuanto a protocolos: teneis un fichero muy guay que define cada protocolo y el puerto por defecto que usa
20:36  cual?
20:36  asi como -importante- aplicaciones y puertos por defecto
20:36  ese fichero es /etc/services
20:36  se pueden usar protocolos de capa 2 para el filtrado? ya sea mac origen/destino hdlc ppp etc etc etc?
20:37  todas las distros lo traen lista al menos las aplicaciones y puertos mas conocidos
20:37  YiKoRu: para capa 2 existe otro firewall
20:37  iptables siempre en capa 4
20:38  de la pila de protocolos OSI
20:38  continua, La_profe_bOmbOn :)
20:38  YiKoRu: arptables es lo que buscas
20:38  seuimos??
20:39  2/Todas las reglas estarán contenidas en cadenas (CHAINS); podemos definir una cadena como un conjunto de reglas que pueden coincidir con un conjunto de paquetes. Cada regla especifica qué hacer con un paquete coincidente. Esto se llama un `target'
20:39  o coincidencia
20:40  3/accept Todas las cadenas estarán a su vez contenidas en tablas (TABLES); podemos definir una tabla como un conjunto de cadenas, ya estén empotradas o hayan sido definidas por el usuario
20:40  IMPORTANTE: Las reglas se aplicarán antes o después del enrutado del paquete, dependiendo de las tablas o cadenas que contienen las reglas.
20:41  quedan claras estas tres normas???
0:42  en que se diferencia si el paquete es filtrado antes o despues del enrutamiento
20:42  ?
20:42  quede claro que cada tabla contiene cadenas, y en cada cadena se definen unas u otras reglas
20:43  YiKoRu: imaginate que configuras un equipo como firewall dentro de tu LAN
20:43  ok
20:43  dicho equipo tendra dos interfaces de red, una por la que recibe paquetes del exterior y otra por la que echa esos paquetes a las maquinas internas de la LAN
20:44  ese firewall enruta los paquetes de acuerdo a las politicas que tu le mandes YiKoRu
20:44  ok entiendo
20:45  gracias :)
20:45  :)
20:45  piensa que postsouting puede ser de entrada a la LAN y de salida eh?
20:45  postrouting
20:45  eso lo pillas no?
20:46  un paquete cuando sale de la LAN llega a eth0 y sale por eth1
20:46  y cuando un paquete viene del exterior entra por eth1 y sale de la maquina firewall por eht0
20:47  lo pillas?
20:47  ok, pero que diferencia existiria? o sea entiendo que si envio mi paquete a la eth0 eth0 lo enruta hacia eth1 pero en estricto rigor si veo el paquete que entra por eth0 y el que sale por eth1 no deberia haber diferencia a no ser que haya un nat o me equivoco?
20:47  YiKoRu: ahora exlicaremos las NAT
20:47  ok

Las Tablas

20:48  NAT es una tabla
20:48  sigamos. Buenas preguntas YiKoRu
20:48  al menos una tabla para iptables, ademas de ser el protocolo de tal nombre
20:48  ok??
20:51  ACCEPT =  paquete es aceptado.
20:51  DROP = El paquete es rechazado.
20:51  QUEUE = El paquete pasa a espacio de usuario.
20:51  RETURNI= Se detiene el paso del paquete en la cadena actual y se continúa con la siguiente regla de la cadena anterior.
20:51  Otra  que posiblemente veamos a menudo será la target MASQUERADE,pero ojo: sólo es válida en la cadena POSTROUTING de la tabla NAT
20:51  Otras : ver man iptables-extensions (requieren generalmente la opción [-m módulo], aunque si se define la opción [-p  protocolo] iptables tratará de cargar un módulo con el mismo nombre que el protocolo y buscará en él la opción adecuada, si existe). Esto lo veremos con ejemplos que pillemos de google
20:52  queda claro??? dudas???
20:52  ya veremos mas adelante como se implementan las politicas
20:52  lo mismo podremos poner una politica por defecto para una tabla o cadena, que para un protocolo, un puerto, etc
20:53  queda claro????
20:53  recordad que podeis enviar un mensaje a moderador y a mi para cualquier duda
20:54  asumo que todo esto es un poco chapa sin ejemplos pero entiendo que hay que conocer al menos lo basico de iptables para entender su finalidad, y su sintaxis
20:54  seguimos????
20:54  por mi si.
20:55  creo que esta quedando claro, al menos para la gente con nociones sobre redes
20:55  recordad: las tablas contienen cadenas, y cada cadena podemos ponerle una politica
20:55  moderador2: se asume que existe cierto conocimiento de redes, si no...
20:55  La_profe_bOmbOn:
20:55  tenemos una pregunta por privado
20:55  es predicar en el desierto :)
20:55  YiKoRu:
20:56  dime
20:56  comenta lo siguiente:
20:56  20:54  duda
20:56  20:54  QUEUE = El paquete pasa a espacio de usuario.
20:56  20:54  a que se refiere? que pasa con el paquete
20:57  YiKoRu: dentro de la pila de procolocos, sube al nivel superior
20:57  que es espacio de usuario
20:57  os he hablado de modelo OSI porque es mas didactico
20:58  pero piensa que el implementado actualmente es la pila de protocolos TCT/IP
20:58  que solo tiene 4 niveles
20:58  el nivel de red del protocolo TCP/IP engloba 3 nivles del protocolo OSI
20:58  :)
20:58  YiKoRu: te he respondiodo??
20:59  creo que si
20:59  no me ha abierto privado
20:59  beuno si.
21:00  seguimeros definiendo las tablas existentes, y las cadenas que tiene cada tabla
21:00  20:57  ok, entendido muchas gracias
21:00  20:59  si si entendi gracias
21:00  si hay alguna duda mas basica para entender los iptables, cuando La_profe_bOmbOn termine podemos intentar solucionarlos
21:01  recordad: ahora lo digo del reves: reglas contenidas en cadenas, que a su vez estan contenidas en tablas
21:01  ok, pues seguimos entonces explicando las tablas con sus cadenas (cada tabla tendra unas cadenas iguales, o distintas)
21:02  Tablas: conjunto de cadenas, ya estén empotradas (prediseñadas e incluidas en el propio iptables) o hayan sido definidas por el usuario.Por defecto se definen 4 tablas, pudiéndose agregar otras mediante la inserción de módulos:
21:02  en cuanto a los módulos, sabed que iptables es modular: y que viene con el kernel, hay que compilar iptables con el kernel
21:03  si necesito un modulo que no tenga, a compialr un nuevo nucleo
21:03  claro que los modulos basicos que necesita un user normal estan ya incluidos en cualquier distro
21:04  acaso gentoo o alguna similar
21:04  ok?
21:04  entendido????
21:04  cualquier duda mandadmela a mi
21:04  1ª tabla:FILTER   Es  la tabla por defecto (si no es especifica la opción -t): si no especifica en la cadema de comandos se tomará FILTER como la tabla a usar. Se definen 3 cadenas dentro de la tabla FILTER:
21:04  INPUT = Contiene las reglas para paquetes cuyo destino sea la máquina local.
21:04  OUTPUT = Contiene las reglas para p
21:04  aquetes cuyo origen es la máquina local.
21:04  FORWARD = Cuando una máquina se configura como un router, contiene las reglas para paquetes cuyo origen/destino NO es dicha máquina.
21:05  YiKoRu: te va a interesar la cadena forward de la tabla filter verdad?
21:05  :)
21:05  y esta tambien
21:06  2ª tabla: NAT Es la Tabla que se consulta cuando se encuentra un paquete que crea una nueva conexión. Se encarga de procesar los paquetes de procesos NAT configurados mediante iptables.
21:06  PREROUTING = Altera los paquetes entrantes,redirigiéndolos a donde definan sus reglas. Nótese que es decisión de preenrutado.
21:06  POSTROUTING = Altera paquetes después de la decisión de enrutado (SNAT, Source NAT).(Enmascara los paquetes con la IP de la intefaz de salida).
21:06  21:06  jajaja si puede ser :$ XD pero me interesa todo iptables :D
21:06  OUTPUT = En paquetes generados localmente, realiza operaciones de NATeo antes del enrutado.
21:06  :))
21:06  cuantas tablas bienen por defecto?
21:06   aparte de la tabla FILTER?
21:07  desfucon: 5
21:07  pero vamos que las dos mas usadas son las anteriores
21:07  desfucon: sip, ademas de las tablas filter y nat ya vistas
21:08  las tres siguientes os las expongo rapidamente, un user normal poco las va a usar
21:08  y son mas lio, requieren modulos especificos, y son mas especializadas
21:08  3ª tabla:
21:08  MANGLE Tabla utilizada para la alteración especializada de paquetes. ësta y la siguiente son de configuración más avanzada que las tablas FILTER y NAT. En los apuntes os explico algo mñas acerca de ellas. No creo que deba excederme con ellas en el taller porque nos pueden dar las uvas
21:09  Cadenas que puede contener:  INPUT, OUTPUT, FORWARD, PREROUTING y POSTROUTING
21:09  las cadenas no las explico dado que estan ya explicadas para las tablas filter y nat ok?
21:09  4ª tabla:
21:09  RAW Se usa principalmente para la configuración de exenciones del seguimiento de conexiones en combinación con la política (target) NOTRACK, estableciendo una marca (NOTRACK) para evitar que netfilter haga un seguimiento del paquete.(En detrimento de CONNTRACK, que actúa por defecto).
21:09  (NOTA para no coiar en el taller CONTRACKI> Módulo que vigila las conexiones para poder establecer reglas sobre flujos de información (muchos paquetes) en vez de IIIpara paquetes individuales).
21:09  Cadenas que puede contener la tabla RAW:  OUTPUT y PREROUTING
21:10  uiss, pues copie de mas xdd
21:10  weno no importa, lo de notrack es mas lio, no os quiero liar con ello :)
21:11  pero vamos el man iptables-extensions explica muy bien lo que contrack y nocontrack
21:11  dudas a las tablas y las cadenas que contienen????
21:11  Sabed que existe una quinta tabla llamada SECURITY. Algo os pongo tambien el en odt que está colgado de elbinario.net, podeis leerlo si quereis.
21:11  faltaba la 5ª tabla xd
21:11  dudas???
21:12  si no hay dudas nos liamos con la sintaxis de iptables
21:12  a ese respecto: sabed que las politicas que establezcamos no son perpetuas...
21:13  si no se guardan se pierden al siguiente reinicio. iptables-save es buen comando para guardar reglas definitivas
21:13  yu otra cosita que se me ocurre ahora... antes de la sintaxis
21:14  ojito con las reglas que introducis desde remoto
21:14  que lo mismo os quedais sin poder acceder a la maquina remota :)
21:14  duda de YiKoRu 
21:14   existe alguna forma de hacer una especie de backup en las reglas? en caso de aplicar mal una regla y me lie se puede volver a un punto anterior?
21:15  primero se prueban en virtual y despues si funcionan adencuadamente ya se implementan en produccion
21:15  YiKoRu: se pueden borrar reglas sip
21:15  mira, ya te lo anticipo
21:15  a medida que introduces una regla ésta se numera
21:16  puedes hacer un listado de reglas, localizar el error y borrarla por su numero
21:16  recordad en cuando a la numeracion lo que os dije antes: el orden de las reglas es fundamental
21:16  ok??
21:16  ok, gracias :D creo que me adelante 1 poco con la pregunta xD
21:16  esto lo dice YiKoRu 
21:17  YiKoRu: estas haciendo muy buenas preguntas, no te preocupes
21:17  como sigas asi no sabre responderte y me sacaras los colores :D
21:17  xD! todos estamos aprendiendo :)
21:17  mas dudas???
21:17  nos liamos con la sintaxis??
21:18  o descansamos 3 minutos, me hago un cigarro y seguimos?
21:18  descanso de 5 minutos

Sintaxis

21:28  ok, pues seguimos con la SINTAXIS de IPtables
21:28  os he resumido varios comandos y parametros que considero fundamentales... hay otros muchos ok?
21:28  para eso esta el man iptables y el man iptables-extensions
21:29  SINTAXIS de IPTables:
21:29  # iptables [-t TABLA] [-comando CADENA] [-parámetro parámetro]
21:29  veis por que os explique lo anterior?
21:30  definimos un parametro, y una regla, para una cadena especifica de una tabla determina
21:30  determinada*
21:30  Os he puesto la almohadilla: iptables es comando sólo con permisos para el superusuario.
21:30  Otra cosilla: en algunas distros (derivadas de RHEL por ejemplo) hay que definir la ruta absoluta del comando para que funcione: /usr/sbin/iptables es al ruta en mi slackware
21:31  pero weno en slack no hace falta definir la ruta completa
21:31  pasamos a explicar los comandos basicos:
21:31  recordad
21:31  * 3 en debian tampoco hace falta definir la ruta completa
21:31   iptables [-t TABLA] [-comando CADENA] [-parámetro parámetro]
21:32  dado que luego explicaremos los parametros
21:32  :)
21:32  -A, --append chain rule-specification
21:32  Añade (append) una o más reglas al final de la cadena seleccionada. Es la opción que más usaremos.
21:32  bueno, os explico, la opcion es -A, el resto es copiado del man iptables enm ingles
21:33  eso es valido para todos los comandos que os pongo
21:33  -D, --delete chain rule-specification
21:33  -D, --delete chain rulenum
21:33  Elimina una o más reglas de la cadena seleccionada. Soporta dos sintaxis para especificar la regla:
21:33  1. Como una coincidencia (rule-specification)
21:33  2. Como un número en la cadena (NOTA: iptables numera cada regla que se añade (opción -A) numerándolas de 1 en adelante).
21:34  estamos de acuerdo YiKoRu ???
21:34  :D
21:34  -I, --insert chain [rulenum] rule-specification
21:34  Inserta una o más reglas en la cadena especificada.
21:34  jajaja si xD 
21:34  -R, --replace chain rulenum rule-specification
21:34  Reemplaza una regla en la cadena especificada. Fijáos que ya requiere un número de regla (si queremos sustituir una regla, debemos definir cuál por su número).
21:34  podemos ver todas las reglas con sus números de orden con el comando:
21:34  # iptables [-t regla] -nvL --line-numbers
21:34  YiKoRu: y ahora? seguimos estando de acuerdo??
21:35  :D
21:35  puedes borrar una regla o modificarla reemplazandola por una nueva :)
21:35  si si adelante xD cualquier duda molesto al 3 xD
21:35  ok :D
21:36  -L, --list [chain]
21:36  Muestra todas las reglas de la cadena especificada. Si no se especifica una regla, se mostrarán las de todas las cadenas.
21:36  -F, --flush [chain]
21:36  Elimina la cadena especificada, o todas ellas si no se especifica ninguna. Es el equivalente a borrar todas las reglas una por una.
21:36  IMPORTANTE: Eliminar todas las reglas NO equivale a establecer la política por defecto.
21:37  recordad que la politica por defecto normalmente (salvo que la distro ya venga con ciertas reglas definidas) es ACCEPT
21:37  se acepta TODO por defecto, sea entrante o saliente
21:37  por eso cuando haceis una instalacion de linux podeis navegar, chatear, etc...
21:37  quedaron claros estos comandos???
21:38  nos queda poquito ya...
21:39  surgio duda! diferencia entre -I y -A ?? o sea -A añade una regla y -I inserta una regla a mi entender es lo mismo o me equivoco?
21:40  REGLAS CONTENIDAS EN CADENAS, Y CADENAS CONTENIDAS EN REGLAS!!!
21:40  YiKoRu: recuerda que las reglas van numeradad
21:40  -A, --append chain rule-specification
21:40  Añade (append) una o más reglas al final de la cadena seleccionada.
21:41  AL FINAL recordad que os insiti en el orden
21:41  si si lo recuerdo
21:41  -I, --insert chain [rulenum] rule-specification
21:41  RULENUM
21:41  numero de regla
21:42  con -A añades regla al final de la cadena, y se numera por defecto con el numero de la ultima cadena +1
21:42  con -I 13 tal y tal
21:43  que hacemos YiKoRu ??
21:43  aa ya ahi entendi me falto la parte del numero >.<
21:43  sigamos :) gracias.. otra vez (A)
21:43  :D
21:43  en cualquier caso, buena apreciacion YiKoRu

Parámtetros

21:38  nos liamos pues con los parametros???
21:38  iptables [-t TABLA] [-comando CADENA] [-parámetro parámetro]
21:39  estos tienen miga eh? os explico lo basico basico
21:39  Parámetros:
21:39  Los siguientes parámetros crean la especificación de una regla (igual que al añadir borrar, insertar, reemplazar y agregar comandos).
21:39  LOS PÀRAMETROS SON LOS CREAN LAS REGLAS
21:43  seguimos
21:44  -R, --replace chain rulenum rule-specification
21:44  Reemplaza una regla en la cadena especificada. Fijáos que tambien requiere un número de regla (si queremos sustituir una regla, debemos definir cuál por su número).
21:44  podemos ver todas las reglas con sus números de orden con el comando:
21:44  # iptables [-t regla] -nvL --line-numbers
21:45  EL ORDEN EN LAS REGLAS ES IMPORTANTE RECORDAD!!!
21:45  ya se que grito un poco pero me gusta incidir en ciertas cosas...
21:45  -L, --list [chain]
21:45  Muestra todas las reglas de la cadena especificada. Si no se especifica una regla, se mostrarán las de todas las cadenas.
21:46  en este punto os invito a que hagais todos iptables -L
21:47  recordad que ACCEPT es la politica por defecto en casi todas las distros... se libran de lo que yo conozco RHEL y derivadas
21:47  3: :D
21:48  -F, --flush [chain]
21:48  Elimina la cadena especificada, o todas ellas si no se especifica ninguna. Es el equivalente a borrar todas las reglas una por una.
21:48  IMPORTANTE: Eliminar todas las reglas NO equivale a establecer la política por defecto.
21:48  quede claro este extremo ok???
21:48  Eliminar todas las reglas NO equivale a establecer la  política por defecto.
21:49  es decir si la liamos y hacemos iptables -F igual tampoco podemos salir al exterior ok?
21:49  pues estos son los comandos basicos...
21:49  dudas sobre comandos???
21:49  nos liamos con parametros???
21:50  ya no nos queda naaaa, los parametros es mundo aparte (man iptables-extensions tiene miga de cohones, a mi la primera vez que lo abri me hicieron los ojso chirivitas oiga!!)
21:50  parece que queda claro
21:51  ok, os explico 4 parametros muy usados y terminamos :D
21:51  que os estoy metiendo un tosoton soberano
21:51  Parámetros:
21:51  Los siguientes parámetros crean la especificación de una regla (igual que al añadir borrar, insertar, reemplazar y agregar comandos).
21:51  recordad:
21:52  SINTAXIS de IPTables:
21:52  # iptables [-t TABLA] [-comando CADENA] [-parámetro parámetro]
21:52  [!] -p, --protocol protocol
21:52  Define el protocolo de la regla o del paquete a chequear. El argumento ! invierte el texto => !tcp => todos menos tcp
21:52  podemos filtrar paquetes por el tipo de protocolo oiga!!!
21:52  [!] -s, --source address[/mask][,...]
21:52  Define el origen del paquete. Se puede especificar como un nombre de red, un nombre de equipo (hostmane), un dirección de IP (incluso con  /máscara).Fíjáos que también soporta la negación [!]
21:53  o por IPs, mire usted!! que el vecino es un cabron y me anda mi maquina!!!
21:53  [!] -d, --destination address[/mask][,...]
21:53  Especifica el destino de los paquetes, de igual manera que -s define el origen.
21:54  o por el destino!!! que no quiero que mi hija entre al server de youporn!!!
21:54  -j, --jump target DEFINE LA ACCIÓN A APLICAR PARA AQUELLOS PAQUETES QUE COINCIDAN CON LA REGLA (ACCEPT, DROP, QUEUE y RETURN).
21:54  -j fundamental ehh? ya os lo puse en mayus, que me estoy quedando afonico
21:55  [!] -i, --in-interface name
21:55  Especifica el nombre de la interfaz por la que se recibirá el paquete especificado  (sólo para paquetes entrantes de las cadenas INPUT,FORWARD y PREROUTING). Se pueden definir varias interfaces con nombre similar si se antepone + al nombre de la interfaz => +eth equivale eth0, eth1, ...ethN
21:55  [!] -o, --out-interface name
21:55  Igual que  -i,  pero define la interfaz de salida.
21:56  osea que podemos hacer un -i eth0 -o eth1
21:56  te suena de algo YiKoRu ???
21:56  claro que si xD
21:56  y con esto terminamos al sintaxis... si no hay dudas nos quedan dos minutos
21:57  dudas a la sintaxis????
21:57  a los parametros??
21:57 creo que queda claro
21:57  ok, pues terminamos con un breve epílogo
21:57  un momento
21:57  duda con -d nombre de red puedo yo establecer un bloqueo a paginas por ejemplo facebook.com? cierto?
21:58  no por ser el final menos IMPORTANTE
21:58  YiKoRu: CIERTO
21:58  uis las mayus
21:58  os he puesto poquito al respecto pero imagina que puedes filtar, tambien, por ejemplo, un segmento completo de red
21:59  defines por ejemplo 45.123.45.34/24
21:59  como ip
21:59  :D
22:00  a la sintaxis del protocolo ipv4 me remito :D
22:00  eso lo pillais asumo
22:00  recordad que unas nociones basicas de redes son fundamentales
22:01  bueno, por fin, epílogo:
22:01  Cualquier regla nueva que se introduzca, se hace de manera temporal, no siendo recordadas en el siguiente reinicio. Existen varios métodos para HACER LAS REGLAS PERMANENTES. Uno de los más usados es crear un script de bash que recopile todas las reglas que deseemos que se cumplan en nuestro sistema. Ese script se puede ejecutar al inicio lanzándolo desde /etc/rc.local
22:01  YiKoRu: te terminé de responder por fin?
22:01  :D
22:02  El orden en el que se ponen las reglas de firewall es determinante.Normalmente cuando hay que decidir qué se hace con un paquete se va comparando con cada regla del firewall hasta que se encuentra una que le afecta (match), y se hace lo que dicte esta regla (aceptar o denegar); después de eso NO SE MIRARÁN MÁS REGLAS para ese paquete. ¿Cuál es el peligro? Si ponemos reglas muy permisivas entre las primeras del firewall, puede que l
22:03  ahora entendeis el orden??
22:03  Finalmente: en el topic del canal tenéis enlace del hilo de elbinario.net donde se ha subido un manual que hice más amplio, para consulta.
22:03  añado que es un manual muy bueno y muy completo
22:03  Workshop sobre iptables: Jueves 20:00 ->  https://elbinario.net/2014/06/04/workshop-sobre-iptables/
22:03  3: tampoco es para tanto
22:04  una breve brecha en el horizonte de lo potente que es iptables
22:04  hace un tiempo lo estudie y te aseguro que me habrian venido muy bien
22:04  bueno, hemos terminado, yo al menos por mi parte
22:04 mucho mas facil que ir tirando de man
22:05  3: pues traduccion del man iptables, del man iptables-extensions, y de muchas otras fuentes
22:05  es cierto el manual esta muy bueno :D
22:05  mira se me queda una cosilla hablando de fuentes:
22:05  Alien Bob, uno de los mayores colaboradores de desarrollo de la distro Slackware, propone un ?sencillo generador de cortafuegos con IPTables? en este enlace:
22:05  El programa genera un script completo y muy útil para proteger una máquina, y posee varias opciones de configuración.
22:06  si La_profe_bOmbOn, por eso está bien, por que es un resumen muy completo
22:07  Si deseas configurar un equipo como firewall recuerda que has de activar el ?routing bit?:
22:07  # echo 1 > /proc/sys/net/ipv4/ip_forwardII# De manera temporal.
22:08  O descomentando la siguiente línea en el fichero /etc/sysctl.conf para que el cambio se haga permanente en futuros reinicios: net.ipv4.ip_forward=1
22:08  listo
22:08  dando voice al personal 3
22:08  :D
22:08  :)
22:08  por mi parte he terminado
22:08  muchas gracias La_profe_bOmbOn 
22:08  os invito a buscar en google ejemplos de lineas de comando iptables y las comentamos
22:08  3: muchas gracias a ti
22:08  y por supuesto a todos :D
22:09  por aguantar el toston
22:09  plasplasplasplasplas :)
22:09  aplausos aplausos xD

Compartir

3 Comentarios

  1. Yo entre tarde al taller pero ya me he leido la parte que me faltaba. Gracias.
    Ahora a probar a montar algún script con iptables a ver si entiendo lo que hago

  2. Un placer, como siempre.
    A ver si entre todos mejoramos y ampliamos los apuntes para beneficio de la comunidad, y de la nuestra.
    En cuanto al taller, después de releerlo, se me ocurre que es una chapa soberana: mucha teoría y ninguna práctica. Quizás más adelante, a la vista del taller y de los apuntes podamos hacer otro taller práctico. Podemos crear un script sencillo para lanzar desde rc.local…

Deja una respuesta

Your email address will not be published. Required fields are marked *

To create code blocks or other preformatted text, indent by four spaces:

    This will be displayed in a monospaced font. The first four 
    spaces will be stripped off, but all other whitespace
    will be preserved.
    
    Markdown is turned off in code blocks:
     [This is not a link](http://example.com)

To create not a block, but an inline code span, use backticks:

Here is some inline `code`.

For more help see http://daringfireball.net/projects/markdown/syntax