signia
Recien llegado

Desconectado
Mensajes: 6
|
 |
« : 16 de Octubre de 2006, 06:17:19 » |
|
hola aca les dejo para el que le interese un minimanual de como protejer nuestro sistema GNU/linux de ataques externos .....espero sea de su agrado
Sistemas de seguridad :FIREWALLS
habiendo identificado los servicios que dispone nuestro sistema , podemos entonses desidir cuales de ellos son accesibles y cuales no.En realidad el problema es un tanto mas complejo : cuando nuestro sistema esta en medio de dos redes (como siempre pasa) tenemos que desidir desde que punto sera accesible un servidor y desde cual no. pero esto es un problema mas bien de planificacion. La herramienta tecnica que podemos aplicar es el famoso firewall , que no es mas que un sistema que permite definir reglas a evaluar cuando un paquete de red se encuentra en nuestro host.
hay 3 situaciones diferentes por la cual un paquete puede estar en nuestra maquina:
1)un paquete de origen externo que llega con destino a nuestro host 2)un paquete de origen interno que sale desde nuestra pc con destino a otra 3)un paquete de origen externo que llega desde otra computadora ,pero tiene como destino otra pc (solamente usa la nuestra como puente)
en conclucion lo que nos permite un firewall es abrirle el paso o no a estos paquetes:
usaremos para definir estas reglas una herramienta de linux llamada IPTABLES que como su nombre lo dise funciona con tablas.
la tabla prinsipal de esta herramienta contiene 3 tablas : INPUT , OUTPUT FORWARD (para definir lo que entra lo que sale y lo que pasa)
sintaxis : iptables (definicion) (Cadena) (opciones) (Accion)
En el parametro definicion hay varias opciones posibles : A (para agregar una nueva regla) D (para borrarla) L (para listar las reglas definidas) Demas esta desir que si ingresamos un parametro que requiere una definicion de cadena lo agregamos a continuacion
En el parametro OPciones definimos todos nuestros filtros como por ejemplo "todo lo que sale hacia internet" "todo lo que viene desde la IP 200.10.22.33 hacia mi host:80"
Finalmente en el campo accion definimos que hacer cuando la regla se cumple.
Para comprender mejor esto nada mejor que ejemplos reales :
iptables -A INPUT -p tcp -dport 80 -j ACCEPT
en este ejemplo emos creado una regla (A) para la cadena de entrada (INPUT) en la cual definimos que todo lo que entre al puerto 80 del protocolo TCP (-p tcp -dport 80) sea aceptado (-j ACCEPT). el parametro -dport requiere si o si que siempre usemos el parametro - tcp sino no sabe de que puerto es el protocolo definido.
iptables -A INPUT -p icmp -j DROP
En este ejemplo simplemente filtramos y descartamos todo lo que ingresa por el protocolo icmp a nuestra computadora , El puerto icmp es utilizado por el comando ping por lo cual con esta regla nadie podra realizar un ping exitoso . sigamos con ejemplos
iptables -A OUTPUT -p tcp -d 10.0.0.11 -j REJECT
aqui , en lugar de definir un firewall para todo lo que entra, definimos un firewall para todo lo que sale desde nuestro sistema hacke la ip definida . la accion REJECT rechaza dicho paquete , como no hay ningun puerto en particular rechaza todo pero esto se puede combinar con el ejemplo anterioor:
iptables -A OUTPUT -p tcp -dport 80 -d 10.0.0.11 -j REJECT
En este caso simplemente rechazamos todo lo que se dirija al puerto 80 del host 10.0.0.11.
iptables -A INPUT -p tcp -s 10.0.0/24 -dport 25 -j ACCEPT
Aqui definimos que todo lo que ingrese desde nuestra propia red hacia el puerto 25 sea aceptado.
Por supuesto podemos definir que todo lo demas no sea aceptado
iptables -P INPUT DENY
aqui aparece un consepto nuevo el parametro -P que corresponde a una politica de funcionamiento general ,,, en este caso todo lo que ingresa es rechazada. esto de las politicas nos da pie para saber como se trabaja generalmente con los firewall , basicamente hay dos metodos LA GRAN PARED: metodo por el cual se define una gran regla en general por la cual todo lo que ingresa es rechazado y despues se le asen huecos (eccepciones) a dicha regla.
iptables -P INPUT DENY iptables -A INPUT -p tcp -s 10.0.0.2 -dport 80 -j ACCEPT iptables -A INPUT -p tcp -s 11.0.0.2 -dport 80 -j ACCEPT
-------------------------------------------------------------------------------------
iptables -A INPUT -p tcp -dport 25 -j DROP iptables -A INPUT -p tcp -dport 80 -j DROP iptables -A INPUT -p tcp -dport 110 -j DROP
en este caso al no tener una regla general definida se tiene que ir reglando una por una hasta que lo creamos nesesario...de mas esta desir que el primer metodo (LA GRAN PARED ) es mas fasil de controlar.
resumen de parametro que se pueden usar con iptables:
*definiciones: -A(crear regla) , -D(borrar regla) *Cadenas : INPUT (ingreso), OUTPUT(egreso), FORWARD (paso) *Parametros: -p (define protocolo), -dport (puerto destino) , -s (Fuente), -d (destino) , -i (dispositivo de red) *Acciones: ACCEPT (aceptar), DROP(descartar), REJECT(rechazar)
bueno con esto finaliza el minitutorial espero que les guste y que les sea de utilidad...ant e cualquier duda no duden en preguntar que es normal que surjan dudas con estas clases de cosas ...ademas este es mi primer manual y espero que este lo mas entendible posible ...chauuuu
|