Sie sind auf Seite 1von 7

c 

   
 
Postado por:   em c 
, 

Afinal, o que significa a sigla ACL??? ccess ontrol ists ou, em bom Português:
listas de controle de acesso. OK« mas acesso de quem???

Acesso de pacotes IP, basicamente. Mas como pacotes IP transportam qualquer tipo de
informação em uma rede, as ACLs controlam o acesso de TUDO e de TODOS! Quando
você tenta acessar um router via Telnet, por exemplo, este acesso nada mais é do que
uma série de pacotes IP, certo? Routers (e switches que suportem ACLs) podem
permitir ou negar que determinados pacotes o atravessem.

Existem apenas 2 parâmetros quando configuramos uma ACL: c ou .

Estes parâmetros são seguidos das definições DO QUE se deve permitir (PERMIT) ou
negar (DENY). Estas, basicamente, são as opções:

[? ANY (tudo)
[? ‰OST [IP do host]
[? [subrede + wildcard]
[? [protocolo]

Ou seja, podemos especificar desde 1 único host até um determinado protocolo, ou


mesmo« c!

Quando se trata de ACLs, os equipamentos Cisco trabalham com o conceito de negar


tudo e permitir somente o que lhes for informado. Ou seja, TODA ACL criada em um
roteador Cisco termina com um   implícito, negando c, à todos. Por
este motivo, é preciso ter muito cuidado com a aplicação de uma ACL, pois se ela for
mal planejada poderá isolar uma (ou várias) redes de uma só vez, inclusive impedindo o
acesso ao router via Telnet, o que o impedirá de reverter a situação.

Uma lista de acesso criada em um equipamento, por si só, não tem efeito algum. Para
funcionar, uma ACL precisa ser aplicada. Normalmente aplicamos ACLs à interfaces,
mas ACLs podem ser usadas em muitos outros contextos. Por exemplo, para controlar o
anúncio de rotas. Mas isso não é assunto para o CCNA.

Para o exame CCNA, apenas 2 tipos de ACL são cobrados:  !
"#

"!"#. Existe também a variação, a ACL nomeada, que ao invés
de números usa nomes para identifica-la.

ACLs padrão numeradas são identificadas pelo intervalo que vai de 1 à 99. Já as
estendidas numeradas são identificadas pelo intervalo que vai de 100 à 199. As
nomeadas são definidas pela sintaxe. A diferença básica entre os 2 tipos de ACL é o
grau de inspeção do pacote IP, antes de permitir ou negar seu acesso.

ACLs padrão inspecionam apenas o endereço de origem no cabeçalho IP. Por este
motivo, devem ser aplicadas sempre o mais próximo do destino possível. ACLs
estendidas inspecionam o endereço IP de destino, o endereço IP de origem do pacote IP,
além de inspecionar o cabeçalho de segmentos encapsulados no pacote IP. Lembrem-se
que o pacote IP encapsula o segmento da camada superior (Transporte, no caso). Este
segmentos podem ser UDP ou TCP. ACLs estendidas observam os cabeçalhos destes
segmentos para identificar protocolos e aplicações de camadas superiores. Isso é
possível pois a camada de Transporte estabelece uma comunicação lógica com a
camada de Aplicação por meio das ³portas lógicas´. O ‰TTP, por exemplo, utiliza a
porta lógica 80 para esta comunicação. Portanto, sabendo-se o valor desta porta, pode-se
manipular o acesso à determinadas aplicações por meio de ACLs, permitindo ou
negando fluxos originados ou destinados à aplicações específicas.

Bom tendo-se em mente esta pequena introdução, vamos à configuração de ACLs.

A sintaxe do comando para ACLs numeradas padrão seria:

Router(config)#  


$% &&'$(")'$")(*
+,!-#'$".
(
'

Para ACLs estendidas numeradas, teríamos:

Router(config)#  


$%// %&&'$(")'$ '$")(*
+,
!-#'$".(
'$")(*
+,!
"#'$".(
'
$0
 "
'

Para ACLs nomeadas, o processo não muda, apenas eliminamos o número e


substituímos pelo nome escolhido e tipo de ACL:

Router(config)# 



"$" '
Router(config-std-nacl)# $(")'$")(*
+,!-#'$".(

'

Router(config)#  


"$" '
Router(config-ext-nacl)# $(")'$ '$")(*
+,!-#'
$".(
'$")(*
+,!
"#'$".(
'
$0
 "
'

Estes então seriam os comandos para se criar uma ACL. E quanto à aplicação de uma
ACL?

A regra básica diz que somente UMA ACL pode ser aplicada em uma mesma interface
e direção, em um determinado router (ou switch). Ou seja, em uma mesma interface
você até pode ter mais de uma ACL, desde que em sentidos opostos. Os sentidos
possíveis são ilustrados no diagrama abaixo.

(#""123c113
"!c#

O sentido em que uma ACL é aplicada determina qual o sentido do fluxo que deve ser
examinado pelo router. Por este motivo, antes de aplicar uma ACL é necessário ter bem
claro qual o efeito desejado.

Alguns pontos que devemos saber ANTES de sair criando e aplicando ACLs:
[? ÷ li l t  ÷C li   
    
  il 
i   i  t 
j 

l 
t

 li


t

[? þ      t
t 
lt  
iti   t 

li
 
j

 ÷C t  li
 
  t   
  t  


 ÷C j   i i    
iti
  
t
 li

   i  !  ii "#RM 
$#%&
 t  "R ÷%' l 
 
  l  

i


 í i 
÷%'#(  
i
i 
$#")( $ ti 


i 
  l 

i

 í i 

[?  
  (#M"R#  il    ÷C  i
t    $#%& ÷%&

i 
j
  * i   ÷C t 
$#%&

 ÷C
t  
  it    ( þ' $+%  it    l  li 
[? ÷t!  
ti  li !  ÷C
[? —!
   

íl  t
t  
 ÷%'#(  li    ÷C 
t t   
 

i  l i  i i   i  i 


 
[? %      ÷C   t
 li  ,   it   "i i

li   ÷C $#")(   ÷     i
  li    *
i

 t---

# ti      CC%÷  


i  t i

 . 
 /  
  l

ti 
  il
t   i 
 i

ü  

(  i   i 

 
i ÷   t  

 ,  
  t   t  
i B
  
i t  

 
i  +#B  # il $

 i
it

 
t  ÷C C   jti  i  
   

   
t  
t i  
  
 i

    ÷C :

Rt  i0 

 ü  üü ü

(i l
 - M
1
   - l B#M  ÷C i1    t i

li 

 
l  t  l 
ti   l  it  --- #l
l i '$  'RÁ—#2   
 t  ii l )"
/341 " ---  
  $#%& ÷%& i lí it- l l  i 
 l:

Rt  i0 

 ü  üü ü
Rt  i0 

 ü  

. *   i i

   
--- . *   *l 
l 
t l1

i l
t  it

"tt  
i li 
it li    

 ÷C:

Rt  i0 

 ü  üü ü 
Rt  i0 

 ü  


j  t
)"  t 
 !l  !  i /34

 i it t 


 '$( 
t

  iti


÷1  li  


t ÷C- #l 
i
5   

. 
li
  i  $ 
li    ÷C
t
   i

5 i  

íl  
ti )


i  it   #/  i  "    #
  #- "  #    l ( li 

 
 ÷C l l í 

t   
ti 
i t   #   i

   
 t- #i

 *

÷  l
ti  li - (it þ'  tt )%- ÷ li
 

it  it   #/  i! 
í  t þ' tt

#i
  i  lt:

  4

Rt  i0 

 ü  üü ü
Rt  i0

 ü  


 4

Rt  i0  


Rt  ii 0 

  ü 

#
 


t   i

 
:
  4

Rt  i0 

   


Rt  i
t l0 üü ü
Rt  i
t l0  


 4

Rt  i0  


Rt  ii 0 

   

    

(  
 i   
 
ti t li   i    ilit 


 i

 jti    iti  


i ÷   

 
 t 
i! +#B 

i   
i B   

 
 t 
i!  # il  

i
"  t  
 i t 
  i

 
 
 ÷C  

  

B   i
   li    i   - ' 
 
 )" 
i 
t
  
ti 
i l  
 i i  t l
 li !6
 ' 

 
   ÷C 
ti tt . 
 ! t 

 ÷C

Rt  i0 

 ü  
üü ü üüü ü !
üü 
Rt  i0 

 ü  
üüü ü üüü ü  !
 
Rt  i0 

 ü  
ßamos analisar o que fizemos aqui«

Primeiro "-
 

*
 !%&56%786/6%//# ao
9!%&%6%786%//6%//#,
mas somente ao
9. !:;c%%/#. Como o serviço de E-
mail (POP3) usa o c na camada de transporte, este foi o protocolo escolhido logo no
início da ACL.

Na sequência, fizemos algo semelhante para o host B (192.168.10.100). Porém,


negamos o acesso ao serviço WEB (‰TTP = porta TCP 80).

Para finalizar, permitimos o acesso de todo o resto, por todos.

Desta forma, o host A não tem acesso ao serviço de E-mail, mas tem acesso ao serviço
‰TTP (o permit any any ao final da ACL garante este acesso), e o host B não tem
acesso ao serviço WEB, mas tem acesso ao serviço de E-mail. Além disso, garantimos
que ambos os hosts podem acessar quaisquer outros recursos existentes na rede,
incluindo um ao outro.

A pergunta agora é« onde aplicar esta ACL? As melhores práticas regem que ACLs
estendidas devem ser aplicadas o mais próximo da origem possível. Mas neste caso,
temos 2 origens: O host A e o host B. Se aplicarmos esta ACL somente na interface E1,
por exemplo, estaremos permitindo o acesso total ao servidor pelo host B. Ou seja, se
desejarmos seguir as boas práticas, temos de aplicar a ACL nas interfaces E1 e E2, no
sentido entrante (IN). Mas isso não faz muito sentido, não é mesmo??? A melhor
solução aqui seria aplicar a ACL apenas 1 vez, na interface E0, no sentido sainte (OUT).
Desta forma, matamos o problema com apenas 1 aplicação de ACL. Resumindo«
apenas siga as melhores práticas para ACLs estendidas SE ELAS FIZEREM
SENTIDO!!! Neste caso, elas não fazem.

Portanto, a solução do nosso pequeno problema ficaria assim:

.  

Router(config)#  


%//") *
%&56%786/6%//*
%&56%786%//6%//<
%%/
Router(config)#  


%//") *
%&56%786%/6% //*
%&56%786%//6%//<
8/
Router(config)#  


%//")")

 .  

Router(config)# "/
Router(config-if)# 

- %// 

Para uma ACL estendida nomeada, ficaria:

.  

Router(config)#  


" 
Router(config-ext-nacl)# ") *
%&56%786/6%//*
%&56%786%//6%//<%%/
Rt  i t l0  
üüü ü üüü ü  ! 
Rt  i t l0  


"#4

Rt  i0
Rt  ii 0 

   

÷   


[? ÷%& 
 tt  ÷C
 t  
 
it   
/77/77/77/77
[? K  
 i i      i
  
t  *  i
 tili 
il  
i   
 i  
   iti #i
  i
ti   iti i   l t  il :

(   * i  iti   

  l   t 


 ii 

/34  
 /77/77/77/8 "  t  il   

/77/77/77/8 
t  
it:

[?   

 l* 9/77: 
 9:
[?   

 l* 9: 
 9/77:
[?   i t  9:  9/77: !  l l 9/77 ;  9 ;   l
i t

# 

   l  il    


   /77/77/77/8
i   ü$

'    

i  t  ! 


  )" /34 

 /77/77/77/8 ÷

   3  3 tt 
 
t )"

i üü 

i
   ÷C   it   

  )"
ii

  
t
i i:

Rt  i0 

 ü  üü    ü$

(  *  t it  


t <lti  t  
l  i
  t 
! t )"

#
  
t ttil t i  l

þ 
 B÷ (#M÷%÷  t

M  —ilitti

Das könnte Ihnen auch gefallen