Autor: marceloleite
Traductor: rinrinrenacuajo
Compañeros, marceloleite ha dispuso en la comunidad el tutorial de bloqueo por layer 7 para el BFW 3.0
Marcelo Leite en Nombre del Foro, Muchas Gracias.
Abajo se encuentra el tutorial y el link para bajarlo en formato .pdf. El cual entra también como un apéndice del Tutorial de BFW 3.0.
*******************************************************************************************************
Tutorial para Bloquear servicios por Layer 7 - por Marcelo Leite
Hola todos, estoy publicando esto con el fin de ayudar algunas personas que al igual que yo, no conozcan mucho sobre BFW...
Decidí hacer un script, y de esta forma facilitar el trabajo de bloquear servicios por categoría.
Las categorías aplicadas aquí son las mismas que el time que desarrolla los usados por el PAT de Layer 7. ( http://l7-filter.sourceforge.net/protocols )
Manos a la obra!!!
1º – Vaya a: cd /etc/brazilfw/custom y edite “edit rc.local”, coloque el código de abajo y después guarde.
- Código: Selecionar todos
########################################################################
##Script de Bloqueio por Layer 7
echo 'Executando Script de Bloqueio por Layer 7'
chmod +x /etc/brazilfw/custom/l7protocols/rc.l7protocols
cd /etc/brazilfw/custom/l7protocols
./rc.l7protocols
########################################################################
2º – Cree un directorio dentro de /etc/brazilfw/custom
- Código: Selecionar todos
mkdir l7protocols
3º – Ahora, vaya al directorio recién creado “cd /etc/brazilfw/custom/l7protocols” y cree los siguientes archivos:
- Código: Selecionar todos
edit [nome_do_arquivo]
Obs: Cree los archivos desde el terminal, pero pegue los códigos que se muestran más abajo usando el administrador de archivos del BFW por medio de un navegador (webadmin), de esta manera será menos ardua esta tarea.
Para poder guardar un nuevo archivo creado, es necesario tener algo en el. Entonces digite algo, aunque se solo un punto “ . “
Ejemplo:
- Código: Selecionar todos
edit rc.l7protocols
(Después de abrir el archivo para edición) añada “ . “
ctrl+s (para guardar)
ctrl+q (para salir)
"edit rc.l7protocols"
- Código: Selecionar todos
##Script de Bloqueio por Layer 7
echo 'Iniciando Bloqueios'
sleep 1
######################################################################
#Audio
chmod +x /etc/brazilfw/custom/l7protocols/audio
./audio
echo 'Audio Cargado'
#Chat
chmod +x /etc/brazilfw/custom/l7protocols/chat
./chat
echo 'Chat Cargado'
#Document_Retrieval
chmod +x /etc/brazilfw/custom/l7protocols/document_retrieval
./document_retrieval
echo 'Document_Retrieval Cargado'
#Extra
chmod +x /etc/brazilfw/custom/l7protocols/extra
./extra
echo 'Extra Cargado'
#File
chmod +x /etc/brazilfw/custom/l7protocols/file
./file
echo 'File Cargado'
#Game
chmod +x /etc/brazilfw/custom/l7protocols/game
./game
echo 'Game Cargado'
#Mail
chmod +x /etc/brazilfw/custom/l7protocols/mail
./mail
echo 'Mail Cargado'
#Malware
chmod +x /etc/brazilfw/custom/l7protocols/malware
./malware
echo 'Malware Cargado'
#Monitor
chmod +x /etc/brazilfw/custom/l7protocols/monitor
./monitor
echo 'Monitor Cargado'
#Networking
chmod +x /etc/brazilfw/custom/l7protocols/networking
./networking
echo 'Networking Cargado'
#P2P
chmod +x /etc/brazilfw/custom/l7protocols/p2p
./p2p
echo 'P2P Cargado'
#Print
chmod +x /etc/brazilfw/custom/l7protocols/print
./print
echo 'Print Cargado'
#Remote Access
chmod +x /etc/brazilfw/custom/l7protocols/remoteaccess
./remoteaccess
echo 'Remote Access Cargado'
#Secure
chmod +x /etc/brazilfw/custom/l7protocols/secure
./secure
echo 'Secure Cargado'
#Time Version Control
chmod +x /etc/brazilfw/custom/l7protocols/time_versioncontrol
./time_versioncontrol
echo 'Time Version Control Cargado'
#Video
chmod +x /etc/brazilfw/custom/l7protocols/video
./video
echo 'Video Cargado'
#Voip
chmod +x /etc/brazilfw/custom/l7protocols/voip
./voip
echo 'Voip Cargado'
#####################################################################
echo 'Carga de Bloqueo por Layer 7 completo'
echo 'Haciendo disponible el Sistema'
sleep 2
“edit audio”
- Código: Selecionar todos
iptables -t mangle -A l7-filter -p tcp -m layer7 --l7proto live365 -j DROP
iptables -t mangle -A l7-filter -p tcp -m layer7 --l7proto http-itunes -j DROP
iptables -t mangle -A l7-filter -p tcp -m layer7 --l7proto httpaudio -j DROP
iptables -t mangle -A l7-filter -p tcp -m layer7 --l7proto quicktime -j DROP
iptables -t mangle -A l7-filter -p tcp -m layer7 --l7proto shoutcast -j DROP
“edit chat”
- Código: Selecionar todos
iptables -t mangle -A l7-filter -p tcp -m layer7 --l7proto aim -j DROP
iptables -t mangle -A l7-filter -p tcp -m layer7 --l7proto aimwebcontent -j DROP
iptables -t mangle -A l7-filter -p tcp -m layer7 --l7proto chikka -j DROP
iptables -t mangle -A l7-filter -p tcp -m layer7 --l7proto cimd -j DROP
###iptables -t mangle -A l7-filter -p tcp -m layer7 --l7proto gtalk -j DROP ## INDISPONIVEL ## usa o jabber
iptables -t mangle -A l7-filter -p tcp -m layer7 --l7proto irc -j DROP
iptables -t mangle -A l7-filter -p tcp -m layer7 --l7proto jabber -j DROP
iptables -t mangle -A l7-filter -p tcp -m layer7 --l7proto msn-filetransfer -j DROP
iptables -t mangle -A l7-filter -p tcp -m layer7 --l7proto msnmessenger -j DROP
iptables -t mangle -A l7-filter -p tcp -m layer7 --l7proto qq -j DROP
iptables -t mangle -A l7-filter -p tcp -m layer7 --l7proto yahoo -j DROP
“edit document_retrieval"
- Código: Selecionar todos
iptables -t mangle -A l7-filter -p tcp -m layer7 --l7proto gopher -j DROP
iptables -t mangle -A l7-filter -p tcp -m layer7 --l7proto http-dap -j DROP
iptables -t mangle -A l7-filter -p tcp -m layer7 --l7proto http-freshdownload -j DROP
iptables -t mangle -A l7-filter -p tcp -m layer7 --l7proto http -j DROP
iptables -t mangle -A l7-filter -p tcp -m layer7 --l7proto httpcachehit -j DROP
iptables -t mangle -A l7-filter -p tcp -m layer7 --l7proto httpcachemiss -j DROP
iptables -t mangle -A l7-filter -p tcp -m layer7 --l7proto pressplay -j DROP
iptables -t mangle -A l7-filter -p tcp -m layer7 --l7proto tftp -j DROP
iptables -t mangle -A l7-filter -p tcp -m layer7 --l7proto uucp -j DROP
“edit file”
- Código: Selecionar todos
iptables -t mangle -A l7-filter -p tcp -m layer7 --l7proto exe -j DROP
iptables -t mangle -A l7-filter -p tcp -m layer7 --l7proto flash -j DROP
iptables -t mangle -A l7-filter -p tcp -m layer7 --l7proto ftp -j DROP
iptables -t mangle -A l7-filter -p tcp -m layer7 --l7proto gif -j DROP
iptables -t mangle -A l7-filter -p tcp -m layer7 --l7proto html -j DROP
iptables -t mangle -A l7-filter -p tcp -m layer7 --l7proto jpeg -j DROP
iptables -t mangle -A l7-filter -p tcp -m layer7 --l7proto mp3 -j DROP
iptables -t mangle -A l7-filter -p tcp -m layer7 --l7proto ogg -j DROP
iptables -t mangle -A l7-filter -p tcp -m layer7 --l7proto pdf -j DROP
iptables -t mangle -A l7-filter -p tcp -m layer7 --l7proto perl -j DROP
iptables -t mangle -A l7-filter -p tcp -m layer7 --l7proto png -j DROP
iptables -t mangle -A l7-filter -p tcp -m layer7 --l7proto postscript -j DROP
iptables -t mangle -A l7-filter -p tcp -m layer7 --l7proto rar -j DROP
iptables -t mangle -A l7-filter -p tcp -m layer7 --l7proto rpm -j DROP
iptables -t mangle -A l7-filter -p tcp -m layer7 --l7proto rtf -j DROP
iptables -t mangle -A l7-filter -p tcp -m layer7 --l7proto tar -j DROP
iptables -t mangle -A l7-filter -p tcp -m layer7 --l7proto zip -j DROP
“edit game”
- Código: Selecionar todos
iptables -t mangle -A l7-filter -p tcp -m layer7 --l7proto armagetron -j DROP
iptables -t mangle -A l7-filter -p tcp -m layer7 --l7proto battlefield1942 -j DROP
iptables -t mangle -A l7-filter -p tcp -m layer7 --l7proto battlefield2 -j DROP
iptables -t mangle -A l7-filter -p tcp -m layer7 --l7proto battlefield2142 -j DROP
iptables -t mangle -A l7-filter -p tcp -m layer7 --l7proto counterstrike-source -j DROP
iptables -t mangle -A l7-filter -p tcp -m layer7 --l7proto dayofdefeat-source -j DROP
iptables -t mangle -A l7-filter -p tcp -m layer7 --l7proto doom3 -j DROP
iptables -t mangle -A l7-filter -p tcp -m layer7 --l7proto guildwars -j DROP
iptables -t mangle -A l7-filter -p tcp -m layer7 --l7proto halflife2-deathmatch -j DROP
iptables -t mangle -A l7-filter -p tcp -m layer7 --l7proto liveforspeed -j DROP
iptables -t mangle -A l7-filter -p tcp -m layer7 --l7proto mohaa -j DROP
iptables -t mangle -A l7-filter -p tcp -m layer7 --l7proto quake-halflife -j DROP
iptables -t mangle -A l7-filter -p tcp -m layer7 --l7proto quake1 -j DROP
##iptables -t mangle -A l7-filter -p tcp -m layer7 --l7proto runesofmagic -j DROP ## INDISPONIVEL
iptables -t mangle -A l7-filter -p tcp -m layer7 --l7proto subspace -j DROP
iptables -t mangle -A l7-filter -p tcp -m layer7 --l7proto teamfortress2 -j DROP
iptables -t mangle -A l7-filter -p tcp -m layer7 --l7proto xboxlive -j DROP
iptables -t mangle -A l7-filter -p tcp -m layer7 --l7proto worldofwarcraft -j DROP
“edit mail”
- Código: Selecionar todos
iptables -t mangle -A l7-filter -p tcp -m layer7 --l7proto biff -j DROP
iptables -t mangle -A l7-filter -p tcp -m layer7 --l7proto imap -j DROP
iptables -t mangle -A l7-filter -p tcp -m layer7 --l7proto pop3 -j DROP
iptables -t mangle -A l7-filter -p tcp -m layer7 --l7proto smtp -j DROP
“edit malware”
- Código: Selecionar todos
iptables -t mangle -A l7-filter -p tcp -m layer7 --l7proto code_red -j DROP
iptables -t mangle -A l7-filter -p tcp -m layer7 --l7proto nimda -j DROP
“edit monitor”
- Código: Selecionar todos
iptables -t mangle -A l7-filter -p tcp -m layer7 --l7proto gkrellm -j DROP
iptables -t mangle -A l7-filter -p tcp -m layer7 --l7proto hddtemp -j DROP
“edit networking”
- Código: Selecionar todos
iptables -t mangle -A l7-filter -p tcp -m layer7 --l7proto bgp -j DROP
iptables -t mangle -A l7-filter -p tcp -m layer7 --l7proto dhcp -j DROP
iptables -t mangle -A l7-filter -p tcp -m layer7 --l7proto dns -j DROP
iptables -t mangle -A l7-filter -p tcp -m layer7 --l7proto ident -j DROP
iptables -t mangle -A l7-filter -p tcp -m layer7 --l7proto nbns -j DROP
iptables -t mangle -A l7-filter -p tcp -m layer7 --l7proto ncp -j DROP
iptables -t mangle -A l7-filter -p tcp -m layer7 --l7proto netbios -j DROP
iptables -t mangle -A l7-filter -p tcp -m layer7 --l7proto smb -j DROP
iptables -t mangle -A l7-filter -p tcp -m layer7 --l7proto snmp -j DROP
iptables -t mangle -A l7-filter -p tcp -m layer7 --l7proto socks -j DROP
iptables -t mangle -A l7-filter -p tcp -m layer7 --l7proto ssdp -j DROP
iptables -t mangle -A l7-filter -p tcp -m layer7 --l7proto stun -j DROP
iptables -t mangle -A l7-filter -p tcp -m layer7 --l7proto tor -j DROP
iptables -t mangle -A l7-filter -p tcp -m layer7 --l7proto whois -j DROP
iptables -t mangle -A l7-filter -p tcp -m layer7 --l7proto zmaap -j DROP
iptables -t mangle -A l7-filter -p tcp -m layer7 --l7proto snmp-mon -j DROP
iptables -t mangle -A l7-filter -p tcp -m layer7 --l7proto snmp-trap -j DROP
“edit p2p”
- Código: Selecionar todos
iptables -t mangle -A l7-filter -p tcp -m layer7 --l7proto 100bao -j DROP
iptables -t mangle -A l7-filter -p tcp -m layer7 --l7proto applejuice -j DROP
iptables -t mangle -A l7-filter -p tcp -m layer7 --l7proto ares -j DROP
iptables -t mangle -A l7-filter -p tcp -m layer7 --l7proto audiogalaxy -j DROP
iptables -t mangle -A l7-filter -p tcp -m layer7 --l7proto bittorrent -j DROP
iptables -t mangle -A l7-filter -p tcp -m layer7 --l7proto directconnect -j DROP
iptables -t mangle -A l7-filter -p tcp -m layer7 --l7proto edonkey -j DROP
iptables -t mangle -A l7-filter -p tcp -m layer7 --l7proto fasttrack -j DROP
iptables -t mangle -A l7-filter -p tcp -m layer7 --l7proto freenet -j DROP
iptables -t mangle -A l7-filter -p tcp -m layer7 --l7proto gnucleuslan -j DROP
iptables -t mangle -A l7-filter -p tcp -m layer7 --l7proto gnutella -j DROP
iptables -t mangle -A l7-filter -p tcp -m layer7 --l7proto goboogy -j DROP
iptables -t mangle -A l7-filter -p tcp -m layer7 --l7proto hotline -j DROP
iptables -t mangle -A l7-filter -p tcp -m layer7 --l7proto imesh -j DROP
iptables -t mangle -A l7-filter -p tcp -m layer7 --l7proto kugoo -j DROP
iptables -t mangle -A l7-filter -p tcp -m layer7 --l7proto mute -j DROP
iptables -t mangle -A l7-filter -p tcp -m layer7 --l7proto napster -j DROP
iptables -t mangle -A l7-filter -p tcp -m layer7 --l7proto openft -j DROP
iptables -t mangle -A l7-filter -p tcp -m layer7 --l7proto poco -j DROP
iptables -t mangle -A l7-filter -p tcp -m layer7 --l7proto pplive -j DROP
iptables -t mangle -A l7-filter -p tcp -m layer7 --l7proto soribada -j DROP
iptables -t mangle -A l7-filter -p tcp -m layer7 --l7proto soulseek -j DROP
iptables -t mangle -A l7-filter -p tcp -m layer7 --l7proto tesla -j DROP
iptables -t mangle -A l7-filter -p tcp -m layer7 --l7proto thecircle -j DROP
iptables -t mangle -A l7-filter -p tcp -m layer7 --l7proto xunlei -j DROP
“edit print”
- Código: Selecionar todos
iptables -t mangle -A l7-filter -p tcp -m layer7 --l7proto ipp -j DROP
“edit remoteaccess”
- Código: Selecionar todos
iptables -t mangle -A l7-filter -p tcp -m layer7 --l7proto ciscovpn -j DROP
iptables -t mangle -A l7-filter -p tcp -m layer7 --l7proto citrix -j DROP
iptables -t mangle -A l7-filter -p tcp -m layer7 --l7proto pcanywhere -j DROP
iptables -t mangle -A l7-filter -p tcp -m layer7 --l7proto radmin -j DROP
iptables -t mangle -A l7-filter -p tcp -m layer7 --l7proto rdp -j DROP
iptables -t mangle -A l7-filter -p tcp -m layer7 --l7proto rlogin -j DROP
iptables -t mangle -A l7-filter -p tcp -m layer7 --l7proto ssh -j DROP
iptables -t mangle -A l7-filter -p tcp -m layer7 --l7proto telnet -j DROP
iptables -t mangle -A l7-filter -p tcp -m layer7 --l7proto vnc -j DROP
iptables -t mangle -A l7-filter -p tcp -m layer7 --l7proto x11 -j DROP
“edit secure”
- Código: Selecionar todos
iptables -t mangle -A l7-filter -p tcp -m layer7 --l7proto ssh -j DROP
iptables -t mangle -A l7-filter -p tcp -m layer7 --l7proto ssl -j DROP
iptables -t mangle -A l7-filter -p tcp -m layer7 --l7proto validcertssl -j DROP
“edit time_versioncontrol”
- Código: Selecionar todos
iptables -t mangle -A l7-filter -p tcp -m layer7 --l7proto cvs -j DROP
iptables -t mangle -A l7-filter -p tcp -m layer7 --l7proto nntp -j DROP
iptables -t mangle -A l7-filter -p tcp -m layer7 --l7proto subversion -j DROP
iptables -t mangle -A l7-filter -p tcp -m layer7 --l7proto tsp -j DROP
iptables -t mangle -A l7-filter -p tcp -m layer7 --l7proto unknown -j DROP
iptables -t mangle -A l7-filter -p tcp -m layer7 --l7proto unset -j DROP
“edit video”
- Código: Selecionar todos
iptables -t mangle -A l7-filter -p tcp -m layer7 --l7proto http-rtsp -j DROP
iptables -t mangle -A l7-filter -p tcp -m layer7 --l7proto rtp -j DROP
iptables -t mangle -A l7-filter -p tcp -m layer7 --l7proto rtsp -j DROP
iptables -t mangle -A l7-filter -p tcp -m layer7 --l7proto httpvideo -j DROP
iptables -t mangle -A l7-filter -p tcp -m layer7 --l7proto replaytv-ivs -j DROP
“edit voip”
- Código: Selecionar todos
iptables -t mangle -A l7-filter -p tcp -m layer7 --l7proto h323 -j DROP
iptables -t mangle -A l7-filter -p tcp -m layer7 --l7proto sip -j DROP
iptables -t mangle -A l7-filter -p tcp -m layer7 --l7proto skypeout -j DROP
iptables -t mangle -A l7-filter -p tcp -m layer7 --l7proto skypetoskype -j DROP
iptables -t mangle -A l7-filter -p tcp -m layer7 --l7proto teamspeak -j DROP
iptables -t mangle -A l7-filter -p tcp -m layer7 --l7proto ventrilo -j DROP
Uff... Listo!
Ahora, basta con que usted escoja las categorías que desee liberar o desbloquear dentro del archivo“ rc.l7protocols “
Para liberar/desbloquear, simplemente comente la categoría con “ # “
Ejemplo:
##Audio
#chmod +x /etc/brazilfw/custom/l7protocols/audio
#./audio
#echo 'Audio Cargado'
#Chat
chmod +x /etc/brazilfw/custom/l7protocols/chat
./chat
echo 'Chat Cargado'
En este ejemplo, la categoría AUDIO está desbloqueada y la categoría CHAT está bloqueada.
Para libera solamente algún servicio específico que está dentro de una categoría, basta con ir hasta esa categoría y comentar la línea que contiene el código del servicio.
Espero haber ayudado.
Gracias a toda la gente del foro de BFW.
*************************************************************************************
Link para baixar o tutorial em .pdf: http://public.bay.livefilestore.com/y1p ... f?download