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
Gracias Alfonso! Gran taller y super apuntes! https://elbinario.net/wp-content/uploads/2014/06/iptables1.odt Graaaaaacias :)
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
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…