Você está na página 1de 19

1

MINICURSOCONTROLEESEGURANACOMIPTABLES
Ministrante:EdsonMarcoFerrariJunior
Local:CESUMARCentroUniversitriodeMaring
Cargahorria:8horas
Data:18denovembrode2006

Sumrio
1.OqueumFirewall.......................................................................................................................
........3
2.Conceitodeprotocolos..........................................................................................................
................4
2.1Oqueumprotocoloderede..............................................................................................
..........4
2.1.1ProtocoloTCP...............................................................................................
.........................4
2.1.1.1Estabelecendoumaconexo.......................................................................
....................4
2.1.1.2FlagsdoprotocoloTCP...................................................................................
...............5
2.1.2ProtocoloUDP.............................................................................................
..........................5
2.1.3ProtocoloICMP...................................................................................................................
...5
3.Conceitodeportas.................................................................................................................
...............5
4.IPTABLES..................................................................................................................................
..........7
4.1Principaisfunesdoiptables..................................................................................
.....................7
4.2Tabelas..................................................................................................................
.........................7
4.2.1FILTER..................................................................................................................................
.7
4.2.2NAT.................................................................................................................................
.......7
4.2.3MANGLE..................................................................................................
............................7
4.3Chains..................................................................................................................
..........................8
4.3.1Chainsembutidas....................................................................................................
...............8
4.3.1.1ChainsdatabelaFILTER..........................................................................
.....................8
4.3.1.2ChainsdatabelaNAT..........................................................................
..........................8
4.3.2Chainscriadaspelousurio.........................................................................................
..........9
4.3.3Trabalhandocomaschains..............................................................................................
......9
4.3.3.1Especificandoopoliciamentopadrodeumachain.....................................................9
4.4Regras.................................................................................................................
...........................9
4.4.1Adicionandoregras.....................................................................................
.........................10
4.4.2Listandoregras.............................................................................................................
........10
4.4.3Apagandoregras......................................................................................
............................11
4.4.4Posiodasregras...................................................................................................
.............12
4.4.5Inserindoregrasemposiodefinida...........................................................................
.......12
4.4.6Substituindoumaregra.........................................................................................
...............12
4.5Definindoregras..................................................................................................
........................13
4.5.1Tiposdeprotocolos..............................................................................................
................13
EstetrabalholicenciadosobrealicenaCreativeCommonsAttributionShareAlike2.5.Paravisualizarumacpia
desta licena visite o endereo: http://creativecommons.org/licenses/bysa/2.5/br/deed.pt ou envie uma carta para
CreativeCommons,543HowardStreet,5thFloor,SanFrancisco,California,94105,USA.

4.5.1.1TCP.........................................................................................................
......................13
4.5.1.2UDP.......................................................................................................
.......................13
4.5.1.3ICMP...............................................................................................
.............................13
4.5.2Endereosdeorigem...................................................................................................
.........14
4.5.3Endereosdedestino.........................................................................................................
...14
4.5.4Portasdedestino...........................................................................................
.......................14
4.5.5Portasdeorigem..........................................................................................
........................15
4.5.6Definindomltiplasportas...............................................................................
...................15
4.5.6.1Definindoumafaixadeportas.............................................................................
........15
4.5.6.2Definindovriasportas..............................................................................................
..15
4.5.7Definindoainterface...................................................................................
........................15
4.5.8EndereoMAC.................................................................................................................
....16
4.5.9PacotesSYN....................................................................................................................
.....16
4.5.10Estadodaconexo...........................................................................................
...................16
4.5.11Exceesregra.............................................................................................
....................17
4.5.12Alvodasregras................................................................................................
...................17
4.5.12.1DROP.........................................................................................................
.................17
4.5.12.2REJECT......................................................................................................
................17
4.5.12.3LOG...........................................................................................................
.................18
4.5.12.4RETURN................................................................................................
....................18
4.5.12.5DNAT.............................................................................................
............................19
4.5.12.6SNAT........................................................................................................
..................19
4.5.12.7MASQUERADE...................................................................................
.....................19
4.5.12.8Limitedeconferenciadeumaregra....................................................................
.......19

EstetrabalholicenciadosobrealicenaCreativeCommonsAttributionShareAlike2.5.Paravisualizarumacpia
desta licena visite o endereo: http://creativecommons.org/licenses/bysa/2.5/br/deed.pt ou envie uma carta para
CreativeCommons,543HowardStreet,5thFloor,SanFrancisco,California,94105,USA.

1.OqueumFirewall
umdispositivoderedequetemafunoderegularotrfegoqueentreredesdistintas,
controlar as conexes entre elas. Podemos entender por firewall filtros de pacotes e proxy de
protocolos.

O Firewalltemcomoobjetivoprotegerumamquinaouredecontraacessosindesejados,
controlarestesacessoemanterinformaessobreasconexes.

2.Conceitodeprotocolos
Paraentendermosumfirewallnecessrioumconhecimentobsicodeprotocolosderedes.
Pelomenososdoismaisimportantes:TCPeUDP.

2.1Oqueumprotocoloderede
um padro que especfica o formato de dados e as regras a serem seguidas para
comunicaodemquinasemumarede.

2.1.1ProtocoloTCP
OprotocoloTCPbaseiasenacomunicaopontoapontoentreduasmquinasemrede.
Esteprotocolopossuialgumascaractersticassertilnaconfiguraodeumfirewall:

Orientadoaconexo:Antesdoinciodatransfernciadedadosnecessrioqueambas
aspartesestejamdeacordo.

Confiabilidade:OTCPconfirmaaentregadetodosospacotesaodestinatrio.

Three Handshake: Mecanismo de estabelecimento e finalizao de conexo a trs e

EstetrabalholicenciadosobrealicenaCreativeCommonsAttributionShareAlike2.5.Paravisualizarumacpia
desta licena visite o endereo: http://creativecommons.org/licenses/bysa/2.5/br/deed.pt ou envie uma carta para
CreativeCommons,543HowardStreet,5thFloor,SanFrancisco,California,94105,USA.

quatrotempos,respectivamente,oquepermiteaautenticaoeencerramentodeuma
sessocompleta.OTCPgaranteque,nofinaldaconexo,todosospacotesforambem
recebidos.
2.1.1.1Estabelecendoumaconexo

Geralmente,emumaconexoTCPexisteamquinadesignadaservidor(amquinaqueinicia
oservioeficaaguardandoumaconexo)eemoutroextremoocliente(amquinaqueseconectaa
umservidor).
ParainiciaraconexoamquinaclienteenviaaoservidorumpacoteTCPcomaflagSYN
ativa,eaguardaqueoservidoraceiteelhedevolvaumpacotecomasflags SYN+ACK ativas.O
clienteparainformarorecebimentodaconfirmaodoservidordevolveumpacotecomaflagACK
ativa.
Emcadapacotecontmonmerodeidentificaodopacote.

2.1.1.2FlagsdoprotocoloTCP

SYN:Quandosetadoem1,significaqueumpacotedepedidodeaberturadeconexo.

ACK: Quandosetado,sinalizaqueestesegmentocontmoprximooctetoqueohost
origemesperareceber.aflagdeconfirmaoderecebimentodepacotes.

FIN: Esta flag a informao de trmino da transferncia de pacotes. Solicita a


desconexo.Esteflagtambmdeveserconfirmado.

RST: Aflag reset indicaqueaconexodeveserabortadaereiniciasenovamente a


conexo.

2.1.2ProtocoloUDP
umprotocoloconsideradonoseguro.Istosedeveporelenoserorientadoaconexo.O
pacotepoderserentregueouno,elenoirtrataristo.Mastemcomovantagemavelocidadena
entregadospacotes.Estavelocidadesedevejqueelenonecessitafazertodasasverificaesqueo
pacoteTCPrealiza.Estepadrodecomunicaomuitoutilizadoemtransmissodevdeoevoz.
EstetrabalholicenciadosobrealicenaCreativeCommonsAttributionShareAlike2.5.Paravisualizarumacpia
desta licena visite o endereo: http://creativecommons.org/licenses/bysa/2.5/br/deed.pt ou envie uma carta para
CreativeCommons,543HowardStreet,5thFloor,SanFrancisco,California,94105,USA.

Comunicaesquenecessitamdevelocidadeenoagarantiadaentregadopacote.

2.1.3ProtocoloICMP
O protocolo ICMPutilizadoparareportarerrosnarede.Maseletambmserveparaa
localizaodehosts,atravsdaaplicaoPING.Tambmpossvelcomesteprotocolodescubrira
rota utilizada para se chegar a determinado host, com a aplicao TRACEROUTE (Linux, ou
TRACERTnoWindows).

3.Conceitodeportas
Portassolinksparaconexesdeumcomputadorparaoutro.Cadaportasomentepodeterum
servioporprotocolo.
Para efetuar uma conexo necessrio que no computador servidor tenha um servio
aguardando em determinada porta, e o computador cliente saia por determinada porta para se
conectar.
Para direcionaraqualservioo clientedesejaconectar,eleinformanoprotocoloqual o
endereododestino,eemqualportaeleirseconectar,equalportaeleestutilizandoparainiciar
estaconexo.
Paraexemplicar,utilizaremosumaconexoSSH.
ParasefazerumaconexoSSHnecessrioquehajaumservioaguardandoaconexoem
determinadaporta,comonocasodoSSHjdefinidaqueseraporta22.Ocomputadorclienteir
iniciaraconexoalocandoumaportanele,umaportamaiorque1024(portasabaixodestassoportas
reservadas),porexemploaporta1030,evaiconectarseaoservidornaporta22.
sshedmafer@127.0.0.1
Visualizaodaconexo:

Naprimeiratelanstemosumaconexo ssh efetuada(nestecasoestamosconectadosna


mesmamquina),nasegundatelanspodemosanalisarasconexesefetuadaseutilizamosumfiltro
EstetrabalholicenciadosobrealicenaCreativeCommonsAttributionShareAlike2.5.Paravisualizarumacpia
desta licena visite o endereo: http://creativecommons.org/licenses/bysa/2.5/br/deed.pt ou envie uma carta para
CreativeCommons,543HowardStreet,5thFloor,SanFrancisco,California,94105,USA.

(grep:22)parafacilitaravisualizao.
ObservaremosquenspossumosumservioqueestcomoestadoESTABELECIDAque
temcomoendereolocal127.0.0.1:33730earemotaoendereo127.0.0.1:22,naporta22umservio
comoestadoOUAqueoservidorsshaguardandoumanovaconexo.
Aterceirajustamenteocontrrio,jqueotestefoitestadonamquinalocal.oservidorno
endereo127.0.0.1:22eoclientenoendereo127.0.0.1:33730.
Asportasabaixode1024soportasreservadasparaosserviosmaiscomuns,comoexemplo:

ftpporta21TCP

sshporta22TCP

telnetporta23TCP

smtpporta25TCP

dnsporta53UDP

httpporta80TCP

pop3porta110TCP

Estaumalistaresumidadosserviosmaiscomuns,possvelestarverificandoosservios
maiscomunsem:http://en.wikipedia.org/wiki/List_of_TCP_and_UDP_port_numbers
Asportasacimade1024soliberadasparaoutrosservios,edevemsertratadascommuita
atenoemumfirewall.Estasportasdevemobrigatoriamenteserbloqueadaseirliberandosomenteo
quenecessrio.

4.IPTABLES
NetfilterummdulonokerneldoLinuxdisponveldesdeokernelverso2.4.xquelhe
abilitaasfunesdefirewall,NATeLogdeutilizao.Tcnicamenteoconhecidoapenascomo
iptables.
Iptablesonomedadoaferramentaemlinhadecomandoqueconfiguraestemdulo.Esta
ferramentapermiteconfigurarasregrasdefirewall,NATelogs.

4.1Principaisfunesdoiptables
a)Listarasregrasdefiltragemdospacotes
b)Adicionar,removeroumodificarasregrasdefiltragemdospacotes
c)Listar,apagarporregrasoscontadoresdasregrasdefiltragemdospacotes

4.2Tabelas
Tabelasolocalondesoarmazenadosos chains econjuntosderegrascomdeterminadas
caractersticasemcomum.Astabelassoreferenciadasatravsdaopoteh3tabelaspadresno
EstetrabalholicenciadosobrealicenaCreativeCommonsAttributionShareAlike2.5.Paravisualizarumacpia
desta licena visite o endereo: http://creativecommons.org/licenses/bysa/2.5/br/deed.pt ou envie uma carta para
CreativeCommons,543HowardStreet,5thFloor,SanFrancisco,California,94105,USA.

IPTABLES.

4.2.1FILTER
Tabelapadro,casonosejadefinidoumatabelacomaopo t. Nestatabelaestaroas
regrasdefiltragemecontroledospacotes.

4.2.2NAT
Tabelaquecontmregrasqueiromodificarconexes.Regrasquegerarooutrasconexes
atravsdemasquerading,sourcenat,destinationnat,portforwarding.
As regras contidas nesta tabela sero verificadas antes da tabela filter, j que elas iro
modificarasregras.

4.2.3MANGLE
Estatabelaserparamodificaesespeciaisnocabealhodospacotes.Estatabelacontm
cinco chains: PREROUTING, POSTROUTING, INPUT, OUTPUT e FORWARD. As regras
contidasnaschainsdestatabelaseroverificadasantesdasregrasdeoutrastabelas.
Comoexemplodeutilizaodeumaregranatabelamangleseriaaalteraoaalteraodo
TOS(TypeofService)dopacote.
UsandooalvoTOSpodeseespecificaraprioridadedeumapacote,tendocomovalores
aceitos:
EsperaMnima
especificadoatravsdeMinimizeDelay,16ou0x10
MximoProcessamento
especificadoatravsdeMaximizeThroughput,8,ou0x08.
MximaConfiana
especificadoatravsdeMaximizeReliability,4ou0x04.
Customnimo
EspecificadoatravsdeMinimizeCost,2ou0x02.
PrioridadeNormal
EspecificadoatravsdeNormalService,0ou0x00.
Regraparaachainoutput:iptablestmangleAOUTPUTptcpdport80jTOSsettos16

4.3Chains
Chainssooslocaisondeseroarmazenadasasregrasdofirewalldefinidaspelousurio.
Existemdoistiposdechains,osembutidoseoscriadospelousurio.

EstetrabalholicenciadosobrealicenaCreativeCommonsAttributionShareAlike2.5.Paravisualizarumacpia
desta licena visite o endereo: http://creativecommons.org/licenses/bysa/2.5/br/deed.pt ou envie uma carta para
CreativeCommons,543HowardStreet,5thFloor,SanFrancisco,California,94105,USA.

4.3.1Chainsembutidas
4.3.1.1ChainsdatabelaFILTER

INPUT Regrasresponsveispelocontroledas conexoquechegamcomdestino


mquina

RegraparaachainINPUT:iptablestfilterAINPUTs200.200.200.200jDROP

OUTPUTRegrasresponsveispelocontroledasconexesquesaemdamquina

RegraparaachainOUTPUT:iptablestfilterAOUTPUTd200.200.200.200jDROP

FORWARD Regrasresponsveispelocontroledasconexesquesoredirecionadas
pelamquina

RegraparaachainFORWARD:iptablestfilterAFORWARDs200.200.200.200jDROP

4.3.1.2ChainsdatabelaNAT

PREROUTINGConsultaosdadosquedeverosermodificadosantesdeseremenviados
paraachain

Regra para a chain PREROUTING: iptables t nat A PREROUTING s 200.200.200.200 j DNAT to


192.168.1.5

OUTPUTConsultaosdadosgeradoslocalmenteequenecessitamsermodificadosantesde
seremroteados.Estechainsomenteconsultadoporconexesqueseoriginampelainterfaces
damquinafirewall

POSTROUTINGVerificandoosdadosqueprecisamsermodificadosapsasverificaes
dasregras

RegraparaachainPOSTROUTING:iptablestnatAPOSTROUTINGs192.168.1.0/24ptcpdport80j
MASQUERADE

4.3.2Chainscriadaspelousurio
Existe a possibilidade de o usurio criar suas prprias chains, organizando as regras
agrupandoregrasdemesmascaractersticas.Comoporexemploregrasparadeterminadainterface,ou
determinadarede.
Criandoumanovachain:iptablesNnova_chain
Inserindoregrasnestachain:iptableAnova_chainptcpdport80jDROP
Chamandoestachain:iptablesjnova_chain
Excluindoumachain:iptablesXnova_chain
Alterandoonomedeumachain:iptablesEnova_chainnovo_nome_chain

Destaformasemprequeachainforchamadaelairverificartodasasregrasquenelaesto
contidas.
EstetrabalholicenciadosobrealicenaCreativeCommonsAttributionShareAlike2.5.Paravisualizarumacpia
desta licena visite o endereo: http://creativecommons.org/licenses/bysa/2.5/br/deed.pt ou envie uma carta para
CreativeCommons,543HowardStreet,5thFloor,SanFrancisco,California,94105,USA.

4.3.3Trabalhandocomaschains
Apagandoasregrasdeumachain:iptablesFINPUT
Zerandoocontadordebytesdeumachain:iptablestnatZPREROUTING
Tambmpossvelalterartodaumatabelaquandoseomiteachain:iptablestnatF

4.3.3.1Especificandoopoliciamentopadrodeumachain

Opoliciamentopadrodeterminaqualseraaodachaincasoopacotenoseenquadreem
nenhumadasregrasqueestonela.
Asopesdepoliciamentopadroso:
iptablesPINPUTDROP
iptablesPINPUTACCEPT

Ondenaprimeiraopotodasospacotesquenoconferiremcomasregrasseronegados.Ea
segundaopojustamenteocontrrio,ospacotesseroaceitos.
Umbomfirewallbloqueiatudoparaestarliberandosomenteoquenecessrio,para
bloquearmostudo,definimoscomopoliciamentopadrodaschainscomoDROP,comistoospacotes
quenosotratadospelasregrasseronegados.

4.4Regras
Regrassocomandopassadosaoiptablesparaconfigurloparaotratamentodospacotes.
Liberlos,bloquelosouregistrarlogdasuapassagem,outentativadeconexo.
Oiptablesnospermitecriarregrascomplexas,comvriascondicionaisparatratamentodos
pacotes.Asregrasnopossuiumdinamismodeacordocomassituao,masistopodeserfcilmente
contornadocomautilizaodescripts.

4.4.1Adicionandoregras
TodasasregrasparaoiptablessoadicionadascomousodaopoAecomaseguinte
sintaxe:
iptablest[tabela]A[chain][opes]j[alvo]

Todososcomandossocasesensitive,ousejaelediferenciamaisculasdeminsculas.
Abaixoumexemplodeadiodeumaregra:
iptablesAINPUTs127.0.0.1jLOGlogprefixLogdeacesso

Aregraacimaumaregradecontrole,ondepodemoslogartodosospacotesquecoincidam
comascondiesdescritasnaregra.
Abaixolistooutrostiposderegras:
Bloqueandoaporta80(http)

EstetrabalholicenciadosobrealicenaCreativeCommonsAttributionShareAlike2.5.Paravisualizarumacpia
desta licena visite o endereo: http://creativecommons.org/licenses/bysa/2.5/br/deed.pt ou envie uma carta para
CreativeCommons,543HowardStreet,5thFloor,SanFrancisco,California,94105,USA.

10
iptablesAINPUTptcpdport80jDROP
Liberandoacessoaporta53(DNS)
iptablesAINPUTpudpdport53jACCEPT
Liberandoacessoacessodeumadeterminadaredeaoservidordeemail(pop3esmtp)
iptablesAINPUTptcpmmultiportdport25,110s192.168.5.0/24jACCEPT
Fazendoumredirecionamentodeporta
iptablestnatAPREROUTINGs192.168.5.0/24ptcpdport80jREDIRECTtoport3128

4.4.2Listandoregras
ParalistarasregrasutilizaseaopoL,asintaxedocomando:
iptablest[tabela]L

Exemplificandoocomando:
iptablesL

Seuretornoser:
root@ferrari:/home/edmafer#iptablesL
ChainINPUT(policyACCEPT)
targetprotoptsourcedestination
DROPtcpanywhereanywheretcpdpt:www
ACCEPTudpanywhereanywhereudpdpt:domain
ACCEPTtcp192.168.5.0/24anywheremultiportdportssmtp,pop3
ChainFORWARD(policyACCEPT)
targetprotoptsourcedestination
ChainOUTPUT(policyACCEPT)
targetprotoptsourcedestination
root@ferrari:/home/edmafer#

Visualizandoasregrasdatabelanat:
iptablestnatL

Eseuretornoser:
root@ferrari:/home/edmafer#iptablestnatL
ChainPREROUTING(policyACCEPT)
targetprotoptsourcedestination
REDIRECTtcp192.168.5.0/24anywheretcpdpt:wwwredirports3128
EstetrabalholicenciadosobrealicenaCreativeCommonsAttributionShareAlike2.5.Paravisualizarumacpia
desta licena visite o endereo: http://creativecommons.org/licenses/bysa/2.5/br/deed.pt ou envie uma carta para
CreativeCommons,543HowardStreet,5thFloor,SanFrancisco,California,94105,USA.

11

ChainPOSTROUTING(policyACCEPT)
targetprotoptsourcedestination
ChainOUTPUT(policyACCEPT)
targetprotoptsourcedestination
root@ferrari:/home/edmafer#

Temosaindaalgumasopesquepoderemosestarverificandoanalistagemdasregras:

vExibemaisdetalhessobreasregrascriadas,comoaquantidadedepacotesebytes
tratadospelasregras.Eaquantidadedepacotesebytestratadospelasregraspadresdas
chains.

nEndereosdemquinas/portasnoseroresolvidos,seroexibidoscomonmeros.Util
quandosepossuimuitasregrasemumfirewall.

xExibevaloresexatosaoinvsdearredondamentos.

linenumbersExibeonmerodaposiodaregranaprimeiracolunadalistagem.

4.4.3Apagandoregras
ParaapagarasregrasusaremosaopoF,ecomaseguintesintaxe:
iptablest[tabela]F

Apagandoasregrasdatabela
Apagandodatabelafilter
iptablesF
Apagandodatabelanat
iptablestnatF

4.4.4Posiodasregras
Aordemnaregranainserodoscomandosimportante.Percebesequeosiniciantesna
configuraodeumfirewallerrammuitoaqui.Umaregrainseridaantesprevaleceraoutrainserida
posteriormente.
iptablesAINPUTptcpdport80jDROP
iptablesAINPUTptcpdports127.0.0.1jACCEPT

Verifiqueasregrasacima.Naprimeiraregransbloqueamosoacessoaporta80,nasegunda
nsliberamosoacessoaporta80,desdequeestaconexosejaprovenientedamquinalocal.
Istonoirfuncionar.Poisquandonossofirewallestiververificandoemqualregraseencaixa
opacote,eleirencontraraprimeiraenofarmaisverificaes.Comistoaregraqueliberao
EstetrabalholicenciadosobrealicenaCreativeCommonsAttributionShareAlike2.5.Paravisualizarumacpia
desta licena visite o endereo: http://creativecommons.org/licenses/bysa/2.5/br/deed.pt ou envie uma carta para
CreativeCommons,543HowardStreet,5thFloor,SanFrancisco,California,94105,USA.

12

acessodamquinalocalnoterfunonenhumajqueaprimeiraaexcluir.
Parafuncionarasregrasdevemficarassim:
iptablesAINPUTptcpdport80s127.0.0.1jACCEPT
iptablesAINPUTptcpdport80jDROP

Anoserqueaconexosejalocaleleirpassarpelaprimeiraregrajqueospacotesno
coincidiramcomascondiesdescritasnaregra,eelasernegadanasegunda.

4.4.5Inserindoregrasemposiodefinida
ComousodaopoAinserimosasregrassempreumaposiodepoisdaltimainserida,e
comovimosnotpicoanterioristopodenosgerarproblemasseprecisarmosinserirumaregracom
maisespecificaesdoqueajinserida.
PoristopossvelinserimosumaregraemumaposiodefinidacomaopoI.
iptablesIINPUT1s127.0.0.1ptcpdport80jACCEPT

Assimnsestaremosinserindoestaregranaprimeiraposio,earegraqueestavanaprimeira
posioautomaticamenteirparaaposio2,eassimpordiante.
Destaformanossaregraserverificadaantesdeumaregramaisabrangenteatendaaconexo.

4.4.6Substituindoumaregra
possvelnsmantermosumcontrolesobreasnossasregras,alterandoassemanecessidade
desereiniciartodoofirewall.PoristopodemosestarsubstituindoasregrascomaopoR.
Vamossubstituiraregraanteriorparaliberaracessoparatodaaredeinterna:
iptablesRINPUT1s192.168.5.0/24ptcpdport80jACCEPT

Comestecontrolescontrolesderegras,adicionar,excluir,inseriremposiodefinidae
substituir,possvelcriarscriptsquevoalterandoonossofirewalldeacordocomanecessidadede
formaautomtica.

4.5Definindoregras
Nadefiniesderegras,podemosestarnosutilizandodevriasverificaesquenospermitem
umcontrolemaiorsobreasconexesdirecionadasouoriginadasaoservidor.

4.5.1Tiposdeprotocolos
4.5.1.1TCP

Emcadaregrapossvelestardefinindoostiposdeprotocolosaseremtratados,sejaTCP,
UDPeICMP.Paraistoutilizamosaopop.
iptablesAINPUTptcpdport80jDROP
EstetrabalholicenciadosobrealicenaCreativeCommonsAttributionShareAlike2.5.Paravisualizarumacpia
desta licena visite o endereo: http://creativecommons.org/licenses/bysa/2.5/br/deed.pt ou envie uma carta para
CreativeCommons,543HowardStreet,5thFloor,SanFrancisco,California,94105,USA.

13

Naregraacimaasconexesqueforemdirecionadasaporta80eutilizemoprotocolotcpsero
tratadasporela.Nocasonegandoaconexo.
Maisinformaes:iptablesptcph
4.5.1.2UDP
iptablesAINPUTs192.168.5.0/24pudpdport53jACCEPT

JnaregraacimaestaremosfazendoumfiltroparapermitirqueoDNSsejaconsultado
somentepelamquinasdaredeinternautilizandooprotocoloudp.
Maisinformaes:iptablespudph
4.5.1.3ICMP
iptablesAINPUTs!192.168.5.0/24picmpjREJECT

DefinimosnestaregraquequalquerpacotecomoprotocoloICMP(ex.ping)quenotenhase
originadonaredeinternasejanegado,ecomomensagemderetornoserrejectwithicmpport
unreachable,porcausadoalvoreject.
Noprotocoloicmppossvelautilizaodaopoicmptype[tipo].Ondepoderemosestar
informandoqualotipodecomunicaoicmpquedevesertratada.
Algunstiposdecomunicaoicmp:
echoreply(pong)
destinationunreachable
networkunreachable
hostunreachable
protocolunreachable
portunreachable

Paraoutrostipos:iptablespicmph
Quandonodefinidooprotocoloaregraaceitarqualquerprotocolo.

4.5.2Endereosdeorigem
possvelnasregrasdefinirmososendereosdeorigem.Istotilparaestarmosvalidando
asconexesepermitindoquedeterminadoshosts,ouredes,sejamliberados,ounegados.
iptablesAINPUTs192.168.5.0/24ptcpdport80jACCEPT

Nestaregradefinimosquearede192.168.5.0podeacessaroservidorhttp.
iptablesAINPUTs200.200.200.200jDROP

Aquidefinimosqueamquinanainternetcomoip200.200.200.200emqualquerporta,com
qualquerprotocolonopodeacessarnossoservidor.
EstetrabalholicenciadosobrealicenaCreativeCommonsAttributionShareAlike2.5.Paravisualizarumacpia
desta licena visite o endereo: http://creativecommons.org/licenses/bysa/2.5/br/deed.pt ou envie uma carta para
CreativeCommons,543HowardStreet,5thFloor,SanFrancisco,California,94105,USA.

14

4.5.3Endereosdedestino
Podemosdefinirodestinodasconexescomaopod.Comistopossvelnegaroacesso
doservidoroudaredeadeterminadosendereos.
iptablesAFORWARDd200.200.200.200jDROP

Naregraacimadefinimosquequalquerconexoquesejacomodestinoamquinanainternet
200.200.200.200noserredirecionada.
Umagrandepreocupaodosadministradoresderedesobloqueiodedeterminadossites,
comestaopopodemosestarbloqueando.
iptablesAFORWARDdorkut.comjDROP

Comovistofoiutilizadocomodestinoumaurlaoinvsdoipdamquinaquesedeseja
bloquearoacesso.Istopossvelpoisoiptablesirfazeraresoluodonomesemprequeprecisar
verificararegra.Assimpossvelmanterocontrolesobreaquelesendereosquepossuemip
dinmicos.
Assimqualquerquesejaaorigemdopacotes,indiferentedaportaedoprotocolotodae
qualquerconexoquedesejaracessaroorkut.comnoserredirecionada.

4.5.4Portasdedestino
Podemosdefinirqualaportadedestinoemqueasregrasestaroverificandocomaopo
destinationport,ousimplesmentedport.
Estaoposomentefuncionarseanteriormentefoidefinidootipodeprotocoloquearegra
estarconferindo.
iptablesAINPUTs!192.168.5.0/24ptcpdport110jDROP

Foidefinidoaquiquenoserpossvelconexesdeforadaredeinternaacessemonosso
servidorpop3.
Comadefiniodasportasnscontrolamosquaisserviopoderoseracessadosatravsdo
nossofirewall.Verifiqueatabeladasportascomuns.

4.5.5Portasdeorigem
Tambmpodemosdefiniremqualportaestseoriginandoaconexocomaoposource
portousport.
iptablesAINPUTs200.200.200.200ptcpsport25jACCEPT

Assimdefiniremosqueaconexoqueforprovenientedohost200.200.200.200equeesteja
sendooriginadanaporta25(smtp)sejaaceita.

EstetrabalholicenciadosobrealicenaCreativeCommonsAttributionShareAlike2.5.Paravisualizarumacpia
desta licena visite o endereo: http://creativecommons.org/licenses/bysa/2.5/br/deed.pt ou envie uma carta para
CreativeCommons,543HowardStreet,5thFloor,SanFrancisco,California,94105,USA.

15

4.5.6Definindomltiplasportas
Parafacilitarocontrole,poderemosestardefinindovriasportasparaamesmaregra,sejade
destinooudeorigem.
4.5.6.1Definindoumafaixadeportas
iptablesAINPUTptcpdport1024:65535jDROP

Nestaregransdefinimosquetodasasconexescomdestinoaportasaltas(de1024at
65535)sejambloqueadas.
Casonosejadefinidoaportadeinicial(:1024)eleassumircomoportainiciala0,ecaso
nosejadefinidoaportafinal(1024:)serassumidocomoportafinala65535.
4.5.6.2Definindovriasportas

Paradefinirvriasportasquenoestejamemumafaixa,poderemosestarutilizandoomdulo
multiport,quenospermiteadicionarat15portasnamesmaregra.
iptablesAINPUTs192.168.5.0/24ptcpmmultiportdport22,25,80,110jACCEPT

Aquiforamliberadososacessospararedeinternaparaosserviosssh,smtp,httpepop3
respectivamente.

4.5.7Definindoainterface
Geralmentemquinasfirewalltrabalhamcomvriasinterfaces(placasderede).Comaopo
ieopodemosestardefinindoasinterfacesdeorigemoudestino,respectivamente.
Nopossveladicionarestaopoasregrasdetodasaschains,natabelafilterainterfacede
origemnopoderserespecificaremumachainOUTPUT,eadedestinoemumchainINPUT.Ena
tabelanatnoserpossvelespecificarainterfacedesadanachainPREROUTINGeainterfacede
origemnaschainsOUTPUTEPREROUTING.
iptablesAINPUTieth0ptcpdport80jACCEPT

Definimosquetodaconexoquetenhachegopelaeth0(poderiaserainterfacedarede
interna)tenhaacessoaoservidorhttp.
iptablesAFORWARDieth0oeth1jDROP

Sendoainterfaceeth0nossainterfacedaredeinterna,eaeth1ainterfaceconectadaainternet,
estaramosbloqueandotodooacessodaredeinternaainternet.
Tambmpossvelautilizaodocoringa+quepermitequedefinamosvriosinterfaces.
iptablesAFORWARDiwlan+oeth0jDROP

Paraaumentaraseguranadanossarede,bloqueamosoacessodetodososusurios
conectadosanossawireless,nasinterfacesde09aredeinterna.
possvelfazerrefernciasainterfacesqueaindanoexistem.Comoconexesintermitentes
EstetrabalholicenciadosobrealicenaCreativeCommonsAttributionShareAlike2.5.Paravisualizarumacpia
desta licena visite o endereo: http://creativecommons.org/licenses/bysa/2.5/br/deed.pt ou envie uma carta para
CreativeCommons,543HowardStreet,5thFloor,SanFrancisco,California,94105,USA.

16

comoppp.

4.5.8EndereoMAC
Paraaumentarasegurananavalidaodaorigemdaconexo,possvelqueseespecifique
qualoendereofsicodohostdeorigem,oendereomac,comomdulomaceaopomac
source.
iptablesAINPUTs192.168.5.2mmacmacsource00:11:2F:DE:5F:4Aptcpdport22jACCEPT

Estaremosaceitandosomenteaconexodohost192.168.5.2equetenhacomoendereofsico
00:11:2F:DE:5F:4Anoserviossh.
Aespecificaodomacemumaregraaumentaasegurana,masnogarantequeumoutro
hostnotenhaseuendereoipeseuendereomacalterado.

4.5.9PacotesSYN
OpacotesSYNsoutilizadosparainiciaremumaconexoTCP,assimpossvelbloquear
novasconexes,oufiltralasutilizandoaoposyn.
iptablesAINPUTptcpdport22synjDROP

Estaregranopermitequenenhumaoutraconexoaoserviosshseinicie,masnoir
cancelarasconexesjexistentes.

4.5.10Estadodaconexo
Comomdulostatepossvelestarmosconferindooestadodeumaconexo.

NEW:Verificaseopacoteresponsvelpeloiniciodeumanovaconexo.

ESTABLISHED:Seopacotefazpartedeumaconexojestabilizada.

RELATED:Sopacotesqueestorelacionadosaoutrasconexes,comoporexemplo
mensagensdeerroicmp

INVALID:Pacotesquenoestorelacionadosanada,nopuderamserconferidos,como
respostasdeconexesdesconhecidas.

iptablesAINPUTs192.168.5.0/24ptcpdport22mstatestateNEW,ESTABLISHEDjACCEPT

Estamosaceitandotodasasnovasconexeseasjexistentes,desdequevenhamdanossarede
internaparaoserviossh.
Paraseevitarprocessamento,comoumasdasprimeirasregrasdeveseadicionarumaregra
paranegarconexesinvlidas.
iptablesAINPUTmstatestateINVALIDjDROP

4.5.11Exceesregra
Comoemalgunscasosdevemoscriarumaexceoregra,nspodemosestarutilizandoo
EstetrabalholicenciadosobrealicenaCreativeCommonsAttributionShareAlike2.5.Paravisualizarumacpia
desta licena visite o endereo: http://creativecommons.org/licenses/bysa/2.5/br/deed.pt ou envie uma carta para
CreativeCommons,543HowardStreet,5thFloor,SanFrancisco,California,94105,USA.

17

identificador!(not)parainformarqueaprximainformaonodeveserverdadeiraparaconferira
regra.
iptablesAINPUTs!192.168.5.2ptcpdport23jDROP

Negueioacessodetodosquenopossuamoip192.168.5.2aoserviotelnet.
iptablestnatAPREROUTINGp!icmpd200.200.200.200jDNATto200.200.200.111

Sfaooredirecionamentodaconexoseoprotocolofordiferentedeicmp.
iptablesAINPUTptcpdport25mstatestate!NEW,ESTABLISHEDjDROP

Proibindooacessodepacotesquenoestejaminiciandoumaconexo,ouquenoestejam
relacionadosaumaconexojexistentenoserviosmtp.

4.5.12Alvodasregras
Emtodaregranecessrioseespecificarumalvo.elequevaidefinirqualseraaoda
regraquandoascondiesimpostassejamsatisfeitas.
4.5.12.1DROP

oalvopadroparanegaodeumaconexo.DROPfazobloqueioenoretornanadaa
mquinaqueoriginouaconexo,istodelataaumscannerqueaamquinapossuiumfirewall.
iptablesAINPUTs!192.168.5.0/24mstatestateNEW,INVALIDjDROP

Estounegandotodanovaconexo,etodaconexoinvlidaquesejaoriginadadeforadarede
interna.
4.5.12.2REJECT

Tambmumalvodenegao,mascomrejectpossvelenviardevoltaumamensagemdo
tipoicmp.
iptablesAINPUTptcpdport80jREJECTrejectwithicmpportunreachable

Sernegadaaconexo,eremetidoamquinaqueoriginouopacotequeaportanoexiste.
Verifiqueasopesdetiposicmp.
4.5.12.3LOG

Estealvonospermiteumcontroledospacotesquesoverificadospelofirewall.Definese
comosefosseumaregra,eaosatisfazerascondies,elegeraolog.Comoonetfilterummdulo
dokernel,elegeraumlogem/var/log/kern.logcomoumlogdokernel.Maspossveldefinirqual
onveldelog.
iptablesAINPUTptcpdport22jLOGlogprefixAcessaramossh

Esemprequehouverumaconexosshoresultadodologser:
Nov1617:49:02controlekernel:AcessaramosshIN=eth0OUT=MAC=00:00:e8:77:0c:69:00:e0:12:34:56:78:08:00

EstetrabalholicenciadosobrealicenaCreativeCommonsAttributionShareAlike2.5.Paravisualizarumacpia
desta licena visite o endereo: http://creativecommons.org/licenses/bysa/2.5/br/deed.pt ou envie uma carta para
CreativeCommons,543HowardStreet,5thFloor,SanFrancisco,California,94105,USA.

18
SRC=10.1.58.108DST=10.1.58.252LEN=48TOS=0x00PREC=0x00TTL=128ID=13237DFPROTO=TCP
SPT=4912DPT=22WINDOW=65535RES=0x00SYNURGP=0
Nov1617:49:02controlekernel:AcessaramosshIN=eth0OUT=MAC=00:00:e8:77:0c:69:00:e0:12:34:56:78:08:00
SRC=10.1.58.108DST=10.1.58.252LEN=40TOS=0x00PREC=0x00TTL=128ID=13238DFPROTO=TCP
SPT=4912DPT=22WINDOW=65535RES=0x00ACKURGP=0
Nov1617:49:02controlekernel:AcessaramosshIN=eth0OUT=MAC=00:00:e8:77:0c:69:00:e0:12:34:56:78:08:00
SRC=10.1.58.108DST=10.1.58.252LEN=68TOS=0x00PREC=0x00TTL=128ID=13239DFPROTO=TCP
SPT=4912DPT=22WINDOW=65494RES=0x00ACKPSHURGP=0

Noslogstemosinformaesimportantessobreoacesso,comoadata,afraseinformadaem
logprefix,ainterfacedeentrada,esehouveainterfacedesada,omacdamquinaqueoriginouo
pacote,endereoipdamquinadeorigemeodestinodopacote,protocolo,portautilizadapela
mquinadeorigemeaportadedestino,flagseoutrasinformaes.
4.5.12.4RETURN

atual.

Estealvopermitequeseretorneachainanterior,semcontinuarverificandoasregrasdachain
tilparasefazertratamentodeexceesregra.
1.iptablesNWEB
2.iptablesAINPUTptcpdport80jWEB
3.iptablesAINPUTptcpdport80jACCEPT
4.iptablesAWEBs192.168.5.2jRETURN
5.iptablesAWEBjDROP

Estamosfazendoumbloqueiodoserviohttpseamquinaqueoriginouaconexonosejaa
192.168.5.2.
Nopasso1criamosumachainchamadaWEB,nopasso2chamamosestachain.Nopasso3
euliberoacessoaoservio,mascomoeuchameiachainantes,euredirecioneiasregras,eestano
serverificada.AprimeiraregradachainWEBaverificaodaorigem.Casosejaaorigem
especificada,elachamaRETURN.Eleredirecionaaverificaoparaachainanterior,quenocaso
seraliberaodaporta80.
4.5.12.5DNAT

RegrautilizadanachainPREROUTING,estealvoalteraospacoteseditandooseudestino,
assimredirecionandoaconexoparaoutrasmquinas.
iptablestnatAPREROUTINGptcpdport80jDNATto192.168.5.2:3128

Nestaregraestamosredirecionandotodaaconexoquecheganaporta80paraamquina
192.168.5.2naporta3128,queaportapadrodeumproxy.
Naomissodaporta,serusadaaportadedestinodopacote.

EstetrabalholicenciadosobrealicenaCreativeCommonsAttributionShareAlike2.5.Paravisualizarumacpia
desta licena visite o endereo: http://creativecommons.org/licenses/bysa/2.5/br/deed.pt ou envie uma carta para
CreativeCommons,543HowardStreet,5thFloor,SanFrancisco,California,94105,USA.

19

4.5.12.6SNAT

RegradachainPOSTROUTINGelafazalteraodaorigemdopacote,serveparafazero
acessodasmquinasdaredeinternaainternet,quandoseutilizaumoumaisip'sfixos.
iptablestnatAPOSTROUTINGs192.168.5.0/24ptcpdport80jSNATto200.200.200.200

Comestaregraestamosalterandoaorigemdopacoteparaoipdainternet200.200.200.200,
quandofeitaestaalteraooiptablescriaumatabelaemmemriaondenoretornodaconexoele
sabequemfoiamquinaqueoriginouestaconexoedevolveaelaospacotes.
iptablestnatAPOSTROUTINGs192.168.5.0/24jSNATto200.200.200.200200.200.200.250

Adiferenanestaregraqueelevaiutilizarumafaixadeip'sparaasconexes.Ser
escolhidoumendereodeacordocomoltimoalocado.
4.5.12.7MASQUERADE

Masqueradeumalvoutilizadotambmparaalteraraorigemdeumpacote,permitindoque
asmquinasdaredeinternapossamestaracessandoainternet.Eleutilizadonoscasosemqueno
sepossuiumipfixo.Eleverificaoendereoipdainterfacedesadaeutilizaeleparaalteraropacote.
4.5.12.8Limitedeconferenciadeumaregra

Algumasregrasdevemterlimiteparaseremexecutadas.Comoonmeromximodeconexes
aoserviosshporhora,quantidadedelogsquedevemserarmazenados,evitandoseumataquede
logsquepoderiaencheroseuhd.Assimcomomdulolimiteaopolimitpoderemosestar
definindoquantasvezesaregradeveservalidadeemdeterminadotempo.
iptablesAINPUTptcpdport22mlimitlimit5/sjLOGloglevel1logprefix
Testedelogssh

EstetrabalholicenciadosobrealicenaCreativeCommonsAttributionShareAlike2.5.Paravisualizarumacpia
desta licena visite o endereo: http://creativecommons.org/licenses/bysa/2.5/br/deed.pt ou envie uma carta para
CreativeCommons,543HowardStreet,5thFloor,SanFrancisco,California,94105,USA.

Você também pode gostar