Bloquear serviços por Layer 7 por Marcelo Leite

Tutoriais BrazilFW 3.x em Português

Bloquear serviços por Layer 7 por Marcelo Leite

Mensagempor reginaldo » Dom Abr 11, 2010 9:06 pm

Pessoal, o marceloleite disponibilizou para a comunidade o tutorial de bloqueio por layer 7 para o BFW 3.0.

Marcelo Leite em Nome do Fórum muito Obrigado. :aplause: :aplause: :aplause: :o! :o! :o!

Abaixo o Tutorial e o link para baixa-lo em .pdf. Entrará tambem como um apendice do Tutorial do BFW 3.0.
*******************************************************************************************************

Tutorial para Bloquear serviços por Layer 7 - por Marcelo Leite

Olá pessoal estou postando isso no intuito de ajudar algumas pessoas que como eu, não saibam muito sobre BFW...
Resolvi fazer o script dessa forma, para facilitar o trabalho de bloquear serviços por categoria.
As categorias aplicadas aqui são as mesma que o time que desenvolve os PAT de Layer 7 utilizam. ( http://l7-filter.sourceforge.net/protocols )
Mãos a obra!!!

1º – Vá em cd /etc/brazilfw/custom e “edit rc.local” coloque o código abaixo. Salve.

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º – Crie um diretório dentro de /etc/brazilfw/custom
Código: Selecionar todos
mkdir l7protocols


3º – Agora vá dentro do diretório recém criado “cd /etc/brazilfw/custom/l7protocols” e crie os seguintes arquivos abaixo:
Código: Selecionar todos
edit [nome_do_arquivo]


Obs: Crie os arquivos pelo terminal, mas cole os códigos abaixo acessando o Gerenciador de Arquivos do BFW pelo navegador, assim se torna menos árdua essa tarefa.
Para pode salvar um arquivo novo criado, é preciso ter algo dentro dele. Então digite algo, nem que seja só um “ . “
Exemplo:
Código: Selecionar todos
edit rc.l7protocols

(o arquivo abril para edição) acrescente “ . “
ctrl+s (para salvar)
ctrl+q (para sair)

"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 Carregado'

#Chat
chmod +x /etc/brazilfw/custom/l7protocols/chat
./chat
echo 'Chat Carregado'

#Document_Retrieval
chmod +x /etc/brazilfw/custom/l7protocols/document_retrieval
./document_retrieval
echo 'Document_Retrieval Carregado'

#Extra
chmod +x /etc/brazilfw/custom/l7protocols/extra
./extra
echo 'Extra Carregado'

#File
chmod +x /etc/brazilfw/custom/l7protocols/file
./file
echo 'File Carregado'

#Game
chmod +x /etc/brazilfw/custom/l7protocols/game
./game
echo 'Game Carregado'

#Mail
chmod +x /etc/brazilfw/custom/l7protocols/mail
./mail
echo 'Mail Carregado'

#Malware
chmod +x /etc/brazilfw/custom/l7protocols/malware
./malware
echo 'Malware Carregado'

#Monitor
chmod +x /etc/brazilfw/custom/l7protocols/monitor
./monitor
echo 'Monitor Carregado'

#Networking
chmod +x /etc/brazilfw/custom/l7protocols/networking
./networking
echo 'Networking Carregado'

#P2P
chmod +x /etc/brazilfw/custom/l7protocols/p2p
./p2p
echo 'P2P Carregado'

#Print
chmod +x /etc/brazilfw/custom/l7protocols/print
./print
echo 'Print Carregado'

#Remote Access
chmod +x /etc/brazilfw/custom/l7protocols/remoteaccess
./remoteaccess
echo 'Remote Access Carregado'

#Secure
chmod +x /etc/brazilfw/custom/l7protocols/secure
./secure
echo 'Secure Carregado'

#Time Version Control
chmod +x /etc/brazilfw/custom/l7protocols/time_versioncontrol
./time_versioncontrol
echo 'Time Version Control Carregado'

#Video
chmod +x /etc/brazilfw/custom/l7protocols/video
./video
echo 'Video Carregado'

#Voip
chmod +x /etc/brazilfw/custom/l7protocols/voip
./voip
echo 'Voip Carregado'

#####################################################################

echo 'Carregamento de Bloqueio por Layer 7 completo'
echo 'Disponibilizando o 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


Ufa... Pronto!
Agora basta você escolher as categorias que quer liberar ou bloquear dentro do arquivo “ rc.l7protocols “
Para liberar basta comentar a categoria com “ # “

Exemplo:

##Audio
#chmod +x /etc/brazilfw/custom/l7protocols/audio
#./audio
#echo 'Audio Carregado'

#Chat
chmod +x /etc/brazilfw/custom/l7protocols/chat
./chat
echo 'Chat Carregado'

No exemplo acima, a categoria AUDIO está liberada e a CHAT está bloqueada.
Para libera somete algum serviço especifico que está dentro de uma categoria, basta ir até a categoria e comentar a linha que contem o code do serviço.


Espero te ajudado.
Obrigado a todos do Fórum do BFW.
*************************************************************************************

Link para baixar o tutorial em .pdf: :arrow: http://public.bay.livefilestore.com/y1p ... f?download
Contribua para que o Projeto BFW permaneça no ar, Doe Click aqui
Contribua com o reginaldo, Doe, favor enviar e-mail para reginaldo@brazilfw.com.br
-----------------------------------------------------------------------------------------------------
"Disciplina é liberdade. Compaixão é fortaleza. Ter bondade é ter coragem" (Há Tempos [Dado Villa-Lobos/Renato Russo/Marcelo Bonfá])
Avatar do usuário
reginaldo
BFW Mediator
BFW Documenter
BFW Manager
BFW 3.x Update
 
Mensagens: 12686
Registrado em: Sáb Ago 27, 2005 12:10 pm
Localização: Rio de Janeiro - RJ
BrazilFW Box: Máquina Física
CPU: Intel Core i3 Model 530
Memória: 8.00 GiB / 2 Links
BFW 3.0.262 64 bits
Serviços Ativos: Control MAC, QOS
Addons: EBackup, EPM e Squid 3.5.x

Voltar para BrazilFW 3.x

Quem está online

Usuários navegando neste fórum: Nenhum usuário registrado e 28 visitantes