Está en la página 1de 0

1

IIkLWALL LN U8UN1U 11
Un Firewall es elemental en cualquier sistema operativo, y aunque Linux se caracteriza por ser uno de los
sistemas ms seguros y robustos no lo excluye de tener sus vulnerabilidades de seguridad y un Firewall
sin duda aumentara el nivel de seguridad del mismo.
Primeramente, veremos el estado del Firewall al inicio, porque lo ms probable es que este desactivado,
en una terminal:
sudo ujw status
Como lo ms seguro es que este desactivado, de nuevo en una terminal:
sudo ujw enable
Listo, ahora est activado, ahora instalaremos la interfaz grfica:
sudo at-et isntall ujw
Para iniciar la interfaz grfica, desde una terminal:
ujw
uesde Preccnflguradc puede crear una serle de reglas para una deLermlnada canLldad de
servlclcs y apllcaclcnes. Lcs servlclcs dlspcnlbles scn: l1P, P11P, lHAP, hlS, PUP3, Samba,
SH1P, ssh, vhC y 7ercccnf. Las apllcaclcnes dlspcnlbles scn: Amule, ueluge, K1crrenL,
hlccLlne, q8lLLcrrenL, y 1ransmlsslcn.
uesde Slmple, puede crear reglas para un puerLc predeLermlnadc. LsLc permlLe crear reglas
para servlclcs y apllcaclcnes que nc aparecen dlspcnlbles en Preccnflguradcs. Para ccnflgurar
un rangc de puerLcs, puede pcnerlcs usandc la slgulenLe slnLaxls:
hRUP0LR1U1:hRUP0LR1U2.
uesde Avanzadc, pcdes crear reglas mas especflcas uLlllzandc las dlrecclcnes lP y lcs puerLcs
de crlgen y de desLlnc. LxlsLen cuaLrc cpclcnes dlspcnlbles para deflnlr una regla: permlLlr,
denegar, rechazar y llmlLar. Ll efecLc de permlLlr y denegar es auLcexpllcaLlvc. Rechazar
devclvera un mensa|e "lCHP: desLlnc lnalcanzable" al scllclLanLe. LlmlLar permlLe pcnerle un
ccLc a la canLldad de lnLenLcs de ccnexln sln exlLc. LsLc Le prcLege ccnLra lcs aLaques de
fuerza bruLa.
2
0na vez agregada la regla, esLa aparecera en la venLana prlnclpal de gufw.
Unce a rule has been creaLed, lL wlll be shcwn ln Lhe maln wlndcw cf Cufw. ?cu may alsc vlew
Lhe rule frcm a shell Lermlnal by Lyplng sudc ufw sLaLus.
CCNIIGUkAk I 1A8LLS
3
Tablas Iptables:
FILTER (filtrado)Es la tabla que se encarga del filtrado de paquetes. Las cadenas sern: INPUT OUTPUT y
FORWARD.
NAT (Network Address Translation) Esta tabla se encarga del enmascaramiento de IP, se usa para re
direccionar puertos o cambiar las :IPs de origen y destino a travs de interface de red. Las cadenas
sern :PREROUTING y POSTROUTING
MANGLE (Modificado de paquetes)Permite la modificacin de paquetes como ToS (Type of Service), TTL
(Time to live)o mark, marcar el paquete.
RAW Esta tabla se usa para configurar principalmente excepciones en el seguimiento de paquetes en
combinacin con la accin o target NOTRACK. Trabaja sobre la cadena PREROUTING Y OUTPUT y su nica
accin es Notrack. Puede evitar que iptables haga un seguimiento de los paquetes.
Parmetros:
4
Toda regla iptables est definida por una serie de parmetros aqu veremos los parmetros ms usados.
-i Interfaz de entrada (eth0,eth1,eth2...)
-o Interfaz de salida (eth0,eth1,eth2...)
--sport Puerto de origen
--dport Puerto destino -p El protocolo del paquete a comprobar, tcp, udp, icmp all.
Por defecto es all
-j Esto especifica el objetivo de la cadena de reglas, o sea una accin
Acciones:
Cada regla que se defina en un scrip iptables debe de llevar una serie de parmetros y adems de esto se
debe definir el tipo de accin a realizar una vez un paquete llegue a dicho filtro, ahora veremos cules son las
acciones que se pueden realizar.
ACCEPT---> Paquete aceptado.
REJECT---> Paquete rechazado con notificacin mediante ICMP
DROP---> Paquete rechazado.
MASQUERADE--->Enmascaramiento de la direccin IP origen de forma dinmica. Esta accin es slo vlida
en la tabla NAT en la cadena postrouting.
DNAT---> Enmascaramiento de la direccin destino, muy conveniente para re-enrutado de paquetes.
SNAT---> enmascaramiento de la IP origen de forma similar a masquerade, pero con IP fija.
IICnLkC I 1A8LLS
## Vaciamos las reglas
iptables -F
iptables -X
iptables -t nat -F
## Establecemos politicas predeterminada
iptables -P INPUT ACCEPT
iptables -P OUTPUT ACCEPT
iptables -P FORWARD ACCEPT
iptables -t nat -P PREROUTING ACCEPT
iptables -t nat -P POSTROUTING ACCEPT
# Aceptamos todo de localhost
/sbin/iptables -A INPUT -i lo -j ACCEPT
# A nuestra IP le dejamos todo
iptables -A INPUT -s 192.168.2.1 -j ACCEPT
# A otra ip interna le permitimos todo
iptables -A INPUT -s 192.168.2.99 -j ACCEPT
iptables -A INPUT -s 192.168.2.100 -j ACCEPT
# Permitimos una conexion a ssh y telnet (22 y 23) desde un equipo
iptables -A INPUT -s 192.168.2.10 -p tcp --dport 22:23 -j ACCEPT
# A otro le permitimos acceso FTP
iptables -A INPUT -s 212.176.121.111 -p tcp --dport 20:21 -j ACCEPT
# El puerto 80 y 8080 (www) abierto, para un servidor web.
iptables -A INPUT -p tcp --dport 80 -j ACCEPT
S
iptables -A INPUT -p tcp --dport 8080 -j ACCEPT
# Y el resto, lo cerramos
iptables -A INPUT -p tcp --dport 20:21 -j DROP
iptables -A INPUT -p tcp --dport 22:23 -j DROP
iptables -A INPUT -p tcp --dport 6001 -j DROP
# Cerramos rango de los puertos privilegiados. Cuidado con este tipo de
# barreras, antes hay que abrir a los que s tienen acceso.
iptables -A INPUT -p tcp --dport 1:1024 -j DROP
iptables -A INPUT -p udp --dport 1:1024 -j DROP
# impedimos iniciar conexion los puertos altos
# (puede que ftp no funcione)
iptables -A INPUT -p tcp --syn --dport 1025:65535 -j DROP
# Cerramos otros puertos que estan abiertos
iptables -A INPUT -p tcp --dport 3306 -j DROP
iptables -A INPUT -p tcp --dport 10000 -j DROP
Debemos asegurarnos que el fichero tenga permisos de ejecucin, con el comando
chmod +x iptables.cf
Para arrancar el servicio no tenernos ms que hacer
/etc/init.d/iptables.cf start
Si lo queremos parar
/etc/init.d/iptables.cf stop
Y si lo queremos reiniciar
/etc/init.d/iptables.cf restart
Podemos comprobar las reglas que se han aplicado con el comando
iptables -L
Instalar un servidor proxy HTTP (Squid)
1. Instalar el proxy
Para instalar Squid escribe en un terminal:
sudo apLlLude lnsLall squld
6
2. Configurar el proxy
La configuracin de Squid se hace editando el archivo /etc/squid/squid.conf
Para editar este archivo, presiona Alt+F2 y:
gksu gedlL /eLc/squld/squld.conf
2.1 Nombrar el proxy
Squid necesita conocer el nombre de la mquina. Para ello, ubica la lnea visible_hostname.
Por ejemplo, si la mquina se llama ubuntu, pon:
vlslble_hosLname ubunLu
2.2 Elegir el puerto
Por defecto, el puerto de escucha del servidor proxy ser 3128. Para elegir otro puerto, ubica la lnea:
hLLp_porL 3128
Y cambia el nmero de puerto, por ejemplo:
hLLp_porL 3177
2.3 Elegir la interfaz
Por defecto el servidor proxy escucha por todas las interfaces. Por razones de seguridad, slo debes hacer que
escuche en tu red local.
Por ejemplo si la tarjeta de red ligada a tu LAN tiene el IP 10.0.0.1, modifica la lnea a:
hLLp_porL 10.0.0.1:3177
2.4 Definir los derechos de acceso
Por defecto, nadie est autorizado a conectarse al servidor proxy, excepto tu mquina.
Entonces hay que crear una lista de autorizacin.
Por ejemplo vamos a definir un grupo que abarca toda la red local.
Ubica la lnea del archivo que comienza por acl localhost...
Al final de la seccin, agrega:
acl lanhome src 10.0.0.0/2SS.2SS.2SS.0
7
2.5 Autorizar al grupo
Ahora que el grupo est definido, vamos a autorizar para que utilice el proxy.
Ubica la lnea http_access allow...
Y agrega debajo (antes de la lnea http_access deny all)
hLLp_access allow lanhome
2.6 Autorizar los puertos no estndar
Por defecto, Squid slo autoriza el trafico HTTP en algunos puertos (80, etc.)
Esto puede ocasionar problemas a algunas pginas web que utilizan otros puertos
Ejemplo: http://toto.com/: 81/images/titi.png seria bloqueado por Squid.
Para evitar que lo bloquee, encuentra la lnea:
http_access deny !Safe_ports
Y agrega un comentario:
#http_access deny !Safe_ports

También podría gustarte