Как закрыть порт на роутере cisco

Contents

  • Configuring Port Blocking
  • Information About Port Blocking
  • Port Blocking
  • How to Configure Port Blocking
  • Blocking Flooded Traffic on an Interface
  • Monitoring Port Blocking

This module contains the following topics:

  • Information About Port Blocking
  • How to Configure Port Blocking
  • Monitoring Port Blocking

Information About Port Blocking

Port Blocking

By default, the switch floods packets with unknown destination MAC addresses out of all ports. If unknown unicast and multicast traffic is forwarded to a protected port, there could be security issues. To prevent unknown unicast or multicast traffic from being forwarded from one port to another, you can block a port (protected or nonprotected) from flooding unknown unicast or multicast packets to other ports.


Note


With multicast traffic, the port blocking feature blocks only pure Layer 2 packets. Multicast packets that contain IPv4 or IPv6 information in the header are not blocked.


How to Configure Port Blocking

Blocking Flooded Traffic on an Interface

Before You Begin

The interface can be a physical interface or an EtherChannel group. When you block multicast or unicast traffic for a port channel, it is blocked on all ports in the port-channel group.

SUMMARY STEPS

    1.   
    configure terminal

    2.   
    interface interface-id

    3.   
    switchport block multicast

    4.   
    switchport block unicast

    5.   
    end

    6.   
    show interfaces interface-id switchport

    7.   
    copy running-config startup-config

DETAILED STEPS

      Command or Action Purpose
    Step 1 configure terminal

    Example:

    Switch# configure terminal
    
    

     

    Enters global configuration mode.

     

    Step 2 interface interface-id

    Example:

    Switch(config)# interface gigabitethernet1/0/1
    
    

     

    Specifies the interface to be configured, and enter interface configuration mode.

     

    Step 3 switchport block multicast

    Example:

    Switch(config-if)# switchport block multicast
    
    

     

    Blocks unknown multicast forwarding out of the port.

    Note   

    Only pure Layer 2 multicast traffic is blocked. Multicast packets that contain IPv4 or IPv6 information in the header are not blocked.

     

    Step 4 switchport block unicast

    Example:

    Switch(config-if)# switchport block unicast
    
    

     

    Blocks unknown unicast forwarding out of the port.

     

    Step 5 end

    Example:

    Switch(config-if)# end
    
    

     

    Returns to privileged EXEC mode.

     

    Step 6 show interfaces interface-id switchport

    Example:

    Switch# show interfaces gigabitethernet1/0/1 switchport
    
    

     

    Verifies your entries.

     

    Step 7 copy running-config startup-config

    Example:

    Switch# copy running-config startup-config
    
    

     

    (Optional) Saves your entries in the configuration file.

     

    Monitoring Port Blocking

    Table 1 Commands for Displaying Port Blocking Settings

    Command

    Purpose

    show interfaces [interface-id] switchport

    Displays the administrative and operational status of all switching (nonrouting) ports or the specified port, including port blocking and port protection settings.


    Hi i have Cisco switch model 2960 48 ports i plane to disable three ports on it for Internet service. I want to know how can apply the command on port number 20,21and 23 to close port number 80&443 .

    asked Sep 16, 2017 at 15:10

    Network_infrastructure's user avatar

    9

    As I understand, you want to block http/https traffic on switch ports 20,21 and 23 so that users cannot access any web pages (http/https), is it correct?

    If yes, you can try to use Port ACLs. You would need an ACL and apply it to switch ports 20,21 and 23.

    Let me assume the format of your switch port 20 is f0/20, the following configuration is an example of Port ACLs on switch port 20:

     ip access-list extended block-http-https
        deny   tcp any any eq www
        deny   tcp any any eq 443
        permit ip any any
    
     interface FastEthernet0/20
       switchport mode access
       ip access-group block-http-https in
     end
    

    I hope it is helpful and answers your question.

    answered Sep 17, 2017 at 8:18

    Hung Tran's user avatar

    Hung TranHung Tran

    3,7541 gold badge9 silver badges13 bronze badges

    A quite usual security practice is to have different VLAN’s for different purposes.

    And to place the switch management on the same VLAN as users, internet services is a bad practice if there isn’t any special reasons for it.

    answered Sep 17, 2017 at 8:49

    MatsK's user avatar

    MatsKMatsK

    2041 silver badge12 bronze badges

    Modification of Layer3 and above services is typically done at the gateway/router as switches do not read into frames. So, you would apply an access control list, ACL, at the gateway.

    You would isolate out ‘no-web’ ports into a distinct VLAN then restrict for that VLAN’s subnet.

    answered Dec 17, 2017 at 20:49

    Ronnie Royston's user avatar

    Ronnie RoystonRonnie Royston

    4,3791 gold badge12 silver badges28 bronze badges

    0

    Cisco Port Security is a features that can help secure access to the physical network. Any Network admins nightmare is an unauthorised device or a PC connecting to the network. This could be as simple as an innocent guest plugging his PC into a floor port hoping to get an internet connection or a malicious intruder connecting to the network trying to gain access to confidential information.

    Consequences could as bad as

    • Virus, Spyware or malware infection from a PC unprotected PC
    • A malicious hacker or an intruder gaining access to the network
    • A malicous attacker launching a Denial of Service attack using MAC Address flooding

    Cisco IOS has the port-security feature which can be used to restrict the MAC-Address of the devices that connects to each of the physical switchports.

    Cisco Port-Security can help to

    • restrict the MAC-address or addresses that can connect through a switchport [default: first connected device MAC Address]
    • restrict the number of MAC-Addresses that can connect through a switchport [default is 1 and maximum is 128]
    • set aging in minutes of the MAC Addresses registed
    • Action to take when there is a violation detected (default is to disable the port and send an SNMP Trap message to the SNMP management server (if any))

    For a switch port to be security enabled,

    • the switchport cannot be a Trunk Port
    • the switchport cannot be a destination port for a Switchport Analyzer (SPAN)
    • the switchport cannot belong to an EtherChannel port-channel interface
    • the switchport cannot be an 802.1X port

    If you try to enable 802.1X on a secure port, an error message appears, and 802.1X is not enabled. If you try to change an 802.1X-enabled port to a secure port, an error message appears, and the security settings are not changed.

    To enable Port Security on a Cisco Switch or router interface

    Enter the interface config mode (say fa0/1)

    Switch# conf t

    Switch(config)# interface fastethernet 0/1

    Switch(config-if)# switchport mode access

    This sets the switchport to access mode. Default mode of «Dynamic desirable» cannot be configured as a secure port

    Switch(config-if)# switchport port-security

    This enables the port security on the switchport with the defaults [1 MAC Address allowed, 1st connected MAC Address, disable port if there is a violation]

    If you know the MAC Address of the device and that thats the only device that connects to the swicthport (for example, A server on a Serverfarm switch) then you can set the MAC-Address manually.

    Switchport(config-if)# switchport port-security mac-address 1111.2222.3333

    Where 1111.2222.3333 is the MAC Address of the server. This will disable the secure port, if any other device other than the one with the above MAC-Address connects to the switch port.

    If there is a switch or a hub (say 12 port or a 24 port) that connects to the switchport which you want to secure then you can set the maximum number of MAC-Addresses that connects to the port and/or set the MAC-Address optionally.

    Switchport(config-if)# switchport port-security max 12

    This sets the maximum number of mac-address allowed on the secure port (default is 128).

    One step further, if you want to manually add some or all of these MAC-Addresses then you can specify using the following command one for each MAC-Address

    Switchport(config-if)# switchport port-security mac-address 0000.0000.0000

    Switchport(config-if)# switchport port-security mac-address 0000.0000.1111

    If now, you need to set the maximum number of MAC Addresses on the switchport but are aware that some or most of them are temporary ones (guest users or temporary workers) then you can set the aging time on the port-security which allows MAC-Addresses on the Secure switchport will be deleted after the set aging time. This helps to avoid a situation where obsolete MAC-Address occupy the table and saturates causing a violation (when the max number exceeds).

    Switchport(config-if)# switchport port-security aging time 10

    Where time is specified in minutes (10 mins in the above)

      Now, you can set the action to be taken when there is a violation. The default is to shutdown the port and mark the port err-disabled.

    For example,

    Switchport(config-if)# switchport port-security violation protect

    Where protect is the action taken when a violation event is triggered.

    The actions are

    protect — Drops packets with unknown source addresses until you remove a sufficient number of secure MAC addresses to drop below the maximum value.

    restrict — Drops packets with unknown source addresses until you remove a sufficient number of secure MAC addresses to drop below the maximum value and causes the Security Violation counter to increment.

    shutdown (default) — Puts the interface into the error-disabled state immediately and sends an SNMP trap notification.

    To show the port-security,

    Switch# show port-security interface fastethernet 0/1
    Security Enabled:Yes, Port Status:SecureUp
    Violation Mode:Shutdown
    Max. Addrs:5, Current Addrs:0, Configure Addrs:0

    To display port-security info without any interface provided

    Switch# show port-security
    Secure Port      MaxSecureAddr  CurrentAddr  SecurityViolation  Security
    Action
                        (Count)        (Count)      (Count)
    —————————————————————————-
         Fa0/1           11            11            0            Shutdown
         Fa0/2           15            5             0            Restrict
         Fa0/3           5             4             0            Protect
    —————————————————————————-
    Total Addresses in System: 21
    Max Addresses limit in System: 128

    To display the security MAC-Address table

    Switch# show port-security address
              Secure Mac Address Table
    ——————————————————————-
    Vlan    Mac Address       Type                Ports   Remaining Age
                                                             (mins)
    —-    ———–       —-                —–   ————-
       1    0001.0001.0001    SecureDynamic       Fa0/1      15 (I)
       1    0001.0001.0002    SecureDynamic       Fa0/1      15 (I)
       1    0001.0001.0003    SecureConfigured    Fa0/1      16 (I)
       1    0001.0001.0004    SecureConfigured    Fa0/1      –
       1    0001.0001.0005    SecureConfigured    Fa0/1      –
       1    0005.0005.0006    SecureConfigured    Fa0/5      23
       1    0005.0005.0007    SecureConfigured    Fa0/5      23
       1    0005.0005.0008    SecureConfigured    Fa0/5      23
       1    0011.0011.0009    SecureConfigured    Fa0/11     25 (I)
       1    0011.0011.0010    SecureConfigured    Fa0/11     25 (I)
    ——————————————————————-
    Total Addresses in System: 10
    Max Addresses limit in System: 128

    For more information, check this Cisco documentation

    If you’re new here, you may want to subscribe to my RSS feed. Thanks for visiting!

    10 / 10 / 2

    Регистрация: 11.01.2014

    Сообщений: 46

    1

    Настройка доступа к портам

    17.08.2014, 23:31. Показов 11853. Ответов 12


    Студворк — интернет-сервис помощи студентам

    Доброго времени суток!

    Уважаемые, дайте подсказку, как грамотно настроить ACL?

    Имею:

    Код

    ip nat inside source list NAT interface Dialer1 overload
    ip route 0.0.0.0 0.0.0.0 Dialer1
    !
    ip access-list extended NAT
     permit ip 192.168.0.0 0.0.0.255 any
     deny   ip any any

    Хочу:
    1) Закрыть доступ извне к SSH на 22 порту.
    2) Закрыть ICMP

    Как грамотно сделать?



    0



    Programming

    Эксперт

    94731 / 64177 / 26122

    Регистрация: 12.04.2006

    Сообщений: 116,782

    17.08.2014, 23:31

    Ответы с готовыми решениями:

    настройка доступа к Wi-fi
    имеется маршрутизатор TPLink TL-WR841N
    в квартире есть несколько устройств, которые могут…

    Настройка списков доступа
    Добрый день, пытаюсь настроить список доступа для двух Пк (Один пк админа, другой юзера)
    Пк админа…

    настройка списка доступа
    Сеть предприятия состоит из двух локальных сетей, закрытых друг для друга.
    В каждой сети по три…

    Настройка WiFi точки доступа.
    Привезли сегодня точку DLink DAP-1160 — подсоединил, в ноутбуке не подключается, подключил по…

    12

    Эксперт по компьютерным сетям

    5890 / 3348 / 1034

    Регистрация: 03.11.2009

    Сообщений: 9,977

    17.08.2014, 23:44

    2



    0



    10 / 10 / 2

    Регистрация: 11.01.2014

    Сообщений: 46

    18.08.2014, 15:28

     [ТС]

    3

    Jabbson, спасибо за ссылку.

    Я читал это, но не могу уяснить как это совместить с NAT.
    С каким интерфейсом мне работать? Gi0 или Dialer1?
    Вот этот вариант у меня не работает:

    Код

    ip access-list extended NAT
    permit ip 192.168.0.0 0.0.0.255 any
    deny   ip any any
    deny tcp any any eq 22

    Не могу расставить приоритет исполнения.

    Добавлено через 8 минут
    Закрыть порты выше 1024:

    Код

    access-list 101 deny udp gt 1024 established

    Так?



    0



    Эксперт по компьютерным сетям

    5890 / 3348 / 1034

    Регистрация: 03.11.2009

    Сообщений: 9,977

    18.08.2014, 15:44

    4

    Зачем Вы привязываете свои правила к нат? если извне закрываете 22 порт — написали асл, прикрутили к line vty, все.
    закрываете icmp извне (полагаю, icmp на адрес на интерфейсе) — написали ацл, привязали к порту, к дайлеру, все.
    или я не понимаю глобальность проблемы?



    0



    59 / 59 / 9

    Регистрация: 24.10.2012

    Сообщений: 1,200

    22.08.2014, 07:24

    5

    Цитата
    Сообщение от jurikov
    Посмотреть сообщение

    Закрыть порты выше 1024:
    Код Code
    1
    access-list 101 deny udp gt 1024 established

    так, если для понимания то очень удобно расписано тут, вкратце и доступно http://habrahabr.ru/post/121806/



    0



    224 / 112 / 18

    Регистрация: 27.09.2012

    Сообщений: 575

    22.08.2014, 07:44

    6

    Ты настроил нат и все кто ломится снаружи не смогут попасть внутрь если внутренне устройство этого не попросит.

    Добавлено через 4 минуты
    Снаружи все запросы будут отбрасываться если у тебя внешний порт только Dialer1.
    И ещё на внутренних интерфейсах которым нужно в интернет укажи ip nat inside, а на Dialer1 пропиши ip nat outside.



    0



    59 / 59 / 9

    Регистрация: 24.10.2012

    Сообщений: 1,200

    22.08.2014, 07:59

    7

    kroniel, ну если он pat настраивал то наверное додумался внешний и внутренний интерфейсы соответственно настроить)



    0



    224 / 112 / 18

    Регистрация: 27.09.2012

    Сообщений: 575

    22.08.2014, 09:29

    8

    Цитата
    Сообщение от Иван19902012
    Посмотреть сообщение

    kroniel, ну если он pat настраивал то наверное додумался внешний и внутренний интерфейсы соответственно настроить)

    Как я вижу от только хочет это сделать.



    0



    10 / 10 / 2

    Регистрация: 11.01.2014

    Сообщений: 46

    22.08.2014, 12:14

     [ТС]

    9

    Сеть уже настроена. NAT настроен. Dialer1 внешний.
    Мне нужно закрыть со стороны инета ssh на 22 потру и открыть на 2020.
    Настроил 2020:

    Код

    ip ssh port 2020 rotary 1

    Порт доступен. Пытался закрыть 22 так:

    Код

    line vty 0 4
     rotary 1
     transport input ssh
    access-class 101 in

    А в классе прописал закрыть трафик на 22 порту. У меня отвалился и 2020 тоже.
    Вторая задача закрыть торрены, все что выше 1024 порта. Сейчас копаю, но туго идет.

    Добавлено через 3 минуты
    Мой конфиг:

    Код

    Current configuration : 3271 bytes
    !
    ! Last configuration change at 10:53:39 Russia Fri Aug 22 2014 by admin
    !
    version 15.0
    no service pad
    service timestamps debug datetime msec
    service timestamps log datetime msec
    service password-encryption
    !
    hostname CiscoRouter
    !
    boot-start-marker
    boot-end-marker
    !
    no logging console
    enable secret 5 pass.
    !
    aaa new-model
    !
    !
    !
    !         
    !
    !
    !
    aaa session-id common
    !
    !
    !
    clock timezone Russia 3
    !
    !
    no ip source-route
    !
    !
    ip dhcp excluded-address 192.168.0.1 192.168.0.59
    ip dhcp excluded-address 192.168.0.251 192.168.0.254
    !
    ip dhcp pool localnet
       network 192.168.0.0 255.255.255.0
       default-router 192.168.0.1 
       dns-server 192.168.0.1 
    !
    !
    ip cef    
    no ip bootp server
    ip domain name local.net
    ip name-server 77.88.8.7
    ip name-server 77.88.8.3
    ip inspect name INSPECT_OUT http
    ip inspect name INSPECT_OUT https
    ip inspect name INSPECT_OUT ftp
    ip ddns update method no-ip.org
     HTTP
      add 
      remove 
     interval maximum 0 0 20 0
     interval minimum 0 0 20 0
    !
    no ipv6 cef
    !
    !
    multilink bundle-name authenticated
    vpdn enable
    !
    vpdn-group pppoe
    !
    license udi pid CISCO891-K9 sn 
    !
    !
    archive
     log config
      logging enable
      hidekeys
    username admin password 7 pass
    !
    !
    ip ssh port 2020 rotary 1
    ip ssh logging events
    ip ssh version 2
    ! 
    !
    !
    !
    !
    !
    !
    interface FastEthernet0
     switchport access vlan 10
     !
    !
    interface FastEthernet1
     switchport access vlan 10
     !
    !
    interface FastEthernet2
     switchport access vlan 10
     !
    !
    interface FastEthernet3
     switchport access vlan 10
     !
    !
    interface FastEthernet4
     !
    !
    interface FastEthernet5
     !
    !
    interface FastEthernet6
     !
    !         
    interface FastEthernet7
     !
    !
    interface FastEthernet8
     no ip address
     duplex auto
     speed auto
     pppoe enable group global
     pppoe-client dial-pool-number 1
     !
    !
    interface GigabitEthernet0
     no ip address
     duplex auto
     speed auto
     pppoe enable group global
     pppoe-client dial-pool-number 1
     !
    !
    interface Vlan1
     no ip address
     !
    !         
    interface Vlan10
     description LOCALNET
     ip address 192.168.0.1 255.255.255.0
     ip broadcast-address 192.168.0.1
     ip accounting output-packets
     ip nat inside
     ip virtual-reassembly
     ip tcp adjust-mss 1412
     !
    !
    interface Async1
     no ip address
     encapsulation slip
     !
    !
    interface Dialer1
     ip ddns update hostname 
     ip ddns update 
     ip address negotiated
     ip mtu 1442
     ip nat outside
     ip virtual-reassembly
     encapsulation ppp
     ip tcp adjust-mss 1412
     dialer pool 1
     no keepalive
     ppp authentication chap callin
     ppp chap hostname login
     ppp chap password 7 pass
     !
    !
    ip forward-protocol nd
    no ip http server
    no ip http secure-server
    !
    !
    ip dns server
    ip nat inside source list NAT interface Dialer1 overload
    ip route 0.0.0.0 0.0.0.0 Dialer1
    !
    ip access-list extended NAT
     permit ip 192.168.0.0 0.0.0.255 any
     deny   ip any any
    !
    !
    !         
    !
    !
    !
    !
    control-plane
     !
    !
    !
    line con 0
     logging synchronous
    line 1
     modem InOut
     stopbits 1
     speed 115200
     flowcontrol hardware
    line aux 0
    line vty 0 4
     rotary 1
     transport input ssh
    !
    scheduler max-task-time 5000
    ntp update-calendar
    ntp server 194.190.168.1
    end



    0



    224 / 112 / 18

    Регистрация: 27.09.2012

    Сообщений: 575

    25.08.2014, 07:49

    10

    Укажи в access liste что разрешить 2020 и запретить 22 и должно заработать

    Добавлено через 2 минуты
    permit ip any any sq 2020
    deny ip any any sq 22

    Как то так. Под рукой нету cisco проверить не могу.



    0



    14 / 14 / 5

    Регистрация: 10.08.2014

    Сообщений: 95

    26.08.2014, 08:55

    11

    А в чём проблема привязать к диалеру ip access-group ACL in и в нём перекрыть извне на вход что угодно?



    0



    10 / 10 / 2

    Регистрация: 11.01.2014

    Сообщений: 46

    26.08.2014, 11:00

     [ТС]

    12

    outl4w, с портом ssh я вопрос решил.
    А вот привязавание к диалеру приводт к блокировке всего… Я ставил:

    Код

                    
    access-list 102 deny icmp any any timestamp-request log
    access-list 102 deny icmp any any information-request log
    access-list 102 deny icmp any any mask-request log

    И получил ssh:Timeout



    0



    14 / 14 / 5

    Регистрация: 10.08.2014

    Сообщений: 95

    26.08.2014, 11:30

    13

    Цитата
    Сообщение от jurikov
    Посмотреть сообщение

    А вот привязавание к диалеру приводт к блокировке всего

    А было ли правило, под которое пакет попал бы для прохождения? Был хоть один пермит в листе?



    0



    Время на прочтение
    9 мин

    Количество просмотров 526K

    Сегодня я расскажу вам о том, как отфильтровать трафик в сети с помощью списков контроля доступа. Рассмотрим как они работают соответственно, что собой представляют, для чего предназначены. Позже я покажу как они настраиваются в Cisco IOS и выложу архив с лабораторными работами для закрепления ваших знаний.

    Введение

    ACL (Access Control List) — это набор текстовых выражений, которые что-то разрешают, либо что-то запрещают. Обычно ACL разрешает или запрещает IP-пакеты, но помимо всего прочего он может заглядывать внутрь IP-пакета, просматривать тип пакета, TCP и UDP порты. Также ACL существует для различных сетевых протоколов (IP, IPX, AppleTalk и так далее). В основном применение списков доступа рассматривают с точки зрения пакетной фильтрации, то есть пакетная фильтрация необходима в тех ситуациях, когда у вас стоит оборудование на границе Интернет и вашей частной сети и нужно отфильтровать ненужный трафик.
    Вы размещаете ACL на входящем направлении и блокируете избыточные виды трафика.

    Теория

    Функционал ACL состоит в классификации трафика, нужно его проверить сначала, а потом что-то с ним сделать в зависимости от того, куда ACL применяется. ACL применяется везде, например:

    • На интерфейсе: пакетная фильтрация
    • На линии Telnet: ограничения доступа к маршрутизатору
    • VPN: какой трафик нужно шифровать
    • QoS: какой трафик обрабатывать приоритетнее
    • NAT: какие адреса транслировать

    Для применения ACL для всех этих компонентов нужно понять как они работают. И мы в первую очередь будем касаться пакетной фильтрации. Применительно к пакетной фильтрации, ACL размещаются на интерфейсах, сами они создаются независимо, а уже потом они прикручиваются к интерфейсу. Как только вы его прикрутили к интерфейсу маршрутизатор начинает просматривать трафик. Маршрутизатор рассматривает трафик как входящий и исходящий. Тот трафик, который входит в маршрутизатор называется входящим, тот который из него выходит — исходящий. Соответственно ACL размещаются на входящем или на исходящем направлении.
    image
    Из вашей частной сети приходит пакет на интерфейс маршрутизатора fa0/1, маршрутизатор проверяет есть ли ACL на интерфейсе или нет, если он есть, то дальше обработка ведется по правилам списка доступа строго в том порядке, в котором записаны выражения, если список доступа разрешает проходить пакету, то в данном случае маршрутизатор отправляет пакет провайдеру через интерфейс fa0/0, если список доступа не разрешает проходить пакету, пакет уничтожается. Если списка доступа нет — пакет пролетает без всяких ограничений. Перед тем как отправить пакет провайдеру, маршрутизатор ещё проверяет интерфейс fa0/0 на наличие исходящего ACL. Дело в том, что ACL может быть прикреплен на интерфейсе как входящий или исходящий. К примеру у нас есть ACL с правилом запретить всем узлам в Интернете посылать в нашу сеть пакеты.
    Так на какой интерфейс прикрепить данную ACL? Если мы прикрепим ACL на интерфейс fa0/1 как исходящий, это будет не совсем верно, хотя и ACL работать будет. На маршрутизатор приходит эхо-запрос для какого-то узла в частной сети, он проверяет на интерфейсе fa0/0 есть ли ACL, его нет, дальше проверяет интерфейс fa0/1, на данном интерфейсе есть ACL, он настроен как исходящий, всё верно пакет не проникает в сеть, а уничтожается маршрутизатором. Но если мы прикрепим ACL за интерфейсом fa0/0 как входящий, то пакет будет уничтожатся сразу как пришел на маршрутизатор. Последнее решение является правильным, так как маршрутизатор меньше нагружает свои вычислительные ресурсы. Расширенные ACL нужно размещать как можно ближе к источнику, стандартные же как можно ближе к получателю. Это нужно для того, чтобы не гонять пакеты по всей сети зря.

    Сам же ACL представляет собой набор текстовых выражений, в которых написано permit (разрешить) либо deny (запретить), и обработка ведется строго в том порядке в котором заданы выражения. Соответственно когда пакет попадает на интерфейс он проверяется на первое условие, если первое условие совпадает с пакетом, дальнейшая его обработка прекращается. Пакет либо перейдет дальше, либо уничтожится.
    Ещё раз, если пакет совпал с условием, дальше он не обрабатывается. Если первое условие не совпало, идет обработка второго условия, если оно совпало, обработка прекращается, если нет, идет обработка третьего условия и так дальше пока не проверятся все условия, если никакое из условий не совпадает, пакет просто уничтожается. Помните, в каждом конце списка стоит неявный deny any (запретить весь трафик). Будьте очень внимательны с этими правилами, которые я выделил, потому что очень часто происходят ошибки при конфигурации.

    ACL разделяются на два типа:

    • Стандартные (Standard): могут проверять только адреса источников
    • Расширенные (Extended): могут проверять адреса источников, а также адреса получателей, в случае IP ещё тип протокола и TCP/UDP порты

    Обозначаются списки доступа либо номерами, либо символьными именами. ACL также используются для разных сетевых протоколов. Мы в свою очередь будем работать с IP. Обозначаются они следующим образом, нумерованные списки доступа:

    • Стандартные: от 1 до 99
    • Расширенные: от 100 до 199

    Символьные ACL разделяются тоже на стандартные и расширенные. Расширенные напомню могут проверять гораздо больше, нежели стандартные, но и работают они медленнее, так как придется заглядывать внутрь пакета, в отличии от стандартных где мы смотрим только поле Source Address (Адрес отправителя). При создании ACL каждая запись списка доступа обозначается порядковым номером, по умолчанию в рамках десяти (10, 20, 30 и т.д). Благодаря чему, можно удалить конкретную запись и на её место вставить другую, но эта возможность появилась в Cisco IOS 12.3, до 12.3 приходилось ACL удалять, а потом создать заново полностью. Нельзя разместить более 1 списка доступа на интерфейс, на протокол, на направление. Объясняю: если у нас есть маршрутизатор и у него есть интерфейс, мы можем на входящее направление для IP-протокола разместить только один список доступа, например под номером 10. Ещё одно правило, касающееся самих маршрутизаторов, ACL не действует на трафик, сгенерированный самим маршрутизатором.
    Для фильтрации адресов в ACL используется WildCard-маска. Это обратная маска. Берем шаблонное выражение: 255.255.255.255 и отнимаем от шаблона обычную маску.
    255.255.255.255-255.255.255.0, у нас получается маска 0.0.0.255, что является обычной маски 255.255.255.0, только 0.0.0.255 является WildCard маской.

    Виды ACL

    Динамический (Dynamic ACL)

    Позволяет сделать следующее, например у вас есть маршрутизатор, который подключен к какому-то серверу и нам нужно закрыть доступ к нему из внешнего мира, но в тоже время есть несколько человек, которые могут подключаться к серверу.
    Мы настраиваем динамический список доступа, прикрепляем его на входящем направлении, а дальше людям, которым нужно подключиться, подключаться через Telnet к данному устройству, в результате динамический ACL открывает проход к серверу, и уже человек может зайти скажем через HTTP попасть на сервер. По умолчанию через 10 минут этот проход закрывается и пользователь вынужден ещё раз выполнить Telnet чтобы подключиться к устройству.

    Рефлексивный (Reflexive ACL)

    Здесь ситуация немножко отличается, когда узел в локальной сети отправляет TCP запрос в Интернет, у нас должен быть открытый проход, чтобы пришел TCP ответ для установки соединения. Если прохода не будет — мы не сможем установить соединение, и вот этим проходом могут воспользоваться злоумышленники, например проникнуть в сеть. Рефлексивные ACL работают таким образом, блокируется полностью доступ (deny any) но формируется ещё один специальный ACL, который может читать параметры пользовательских сессий, которые сгенерированны из локальной сети и для них открывать проход в deny any, в результате получается что из Интернета не смогут установить соединение. А на сессии сгенерированны из локальной сети будут приходить ответы.

    Ограничение по времени (Time-based ACL)

    Обычный ACL, но с ограничением по времени, вы можете ввести специальное расписание, которое активирует ту или иную запись списка доступа. И сделать такой фокус, например пишем список доступа, в котором запрещаем HTTP-доступ в течении рабочего дня и вешаем его на интерфейс маршрутизатора, то есть, сотрудники предприятия пришли на работу, им закрывается HTTP-доступ, рабочий день закончился, HTTP-доступ открывается,
    пожалуйста, если хотите — сидите в Интернете.

    Настройка

    Сами ACL создаются отдельно, то есть это просто некий список, который создается в глобальном конфиге, потом он присваивается к интерфейсу и только тогда он и начинает работать. Необходимо помнить некоторые моменты, для того, чтобы правильно настроить списки доступа:

    • Обработка ведется строго в том порядке, в котором записаны условия
    • Если пакет совпал с условием, дальше он не обрабатывается
    • В конце каждого списка доступа стоит неявный deny any (запретить всё)
    • Расширенные ACL нужно размещать как можно ближе к источнику, стандартные же как можно ближе к получателю
    • Нельзя разместить более 1 списка доступа на интерфейс, на протокол, на направление
    • ACL не действует на трафик, сгенерированный самим маршрутизатором
    • Для фильтрации адресов используется WildCard маска
    Стандартный список доступа

    Router(config)#access-list <номер списка от 1 до 99> {permit | deny | remark} {address | any | host} [source-wildcard] [log]

    • permit: разрешить
    • deny: запретить
    • remark: комментарий о списке доступа
    • address: запрещаем или разрешаем сеть
    • any: разрешаем или запрещаем всё
    • host: разрешаем или запрещаем хосту
    • source-wildcard: WildCard маска сети
    • log: включаем логгирование пакеты проходящие через данную запись ACL

    Расширенный список доступа

    Router(config)#access-list <номер списка от 100 до 199> {permit | deny | remark} protocol source [source-wildcard] [operator operand] [port <порт или название протокола> [established]

    • protocol source: какой протокол будем разрешать или закрывать (ICMP, TCP, UDP, IP, OSPF и т.д)
    • deny: запретить
    • operator:
      A.B.C.D — адрес получателя
      any — любой конечный хост
      eq — только пакеты на этом порте
      gt — только пакеты с большим номером порта
      host — единственный конечный хост
      lt — только пакеты с более низким номером порта
      neq — только пакеты не на данном номере порта
      range — диапазон портов
    • port: номер порта (TCP или UDP), можно указать имя
    • established: разрешаем прохождение TCP-сегментов, которые являются частью уже созданной TCP-сессии

    Прикрепляем к интерфейсу

    Router(config-if)#ip access-group <номер списка или имя ACL> {in | out}

    • in: входящее направление
    • out: исходящее направление

    Именованные списки доступа

    Router(config)#ip access-list {standard | extended} {<номер ACL> | <имя ACL>}
    Router(config-ext-nacl)# {default | deny | exit | no | permit | remark}

    • standard: стандартный ACL
    • extended: расширенный ACL
    • default: установить команду в значение по умолчанию

    Ограничение доступа к маршрутизатору

    R(config)#line vty 0 4 — переходим в режим настройки виртуальных линий.
    R(config-line)#password <пароль>
    R(config-line)#login
    R(config-line)#access-class 21 in
    — настраиваем логин и пароль, а также закрепляем список доступа с разрешенными IP-адресами.

    Динамические списки доступа

    R3(config)#username Student password 0 cisco — создаем пользователей для подключения через Telnet.
    R3(config)#access-list 101 permit tcp any host 10.2.2.2 eq telnet
    R3(config)#access-list 101 dynamic testlist timeout 15 permit ip 192.168.10.0 0.0.0.255 192.168.30.0 0.0.0.255 — разрешаем подключаться к серверу по Telnet всем узлам.
    R3(config)#interface serial 0/0/1
    R3(config-if)#ip access-group 101 in
    — закрепляем 101 ACL за интерфейсом в входящем направлении.
    R3(config)#line vty 0 4
    R3(config-line)#login local
    R3(config-line)#autocommand access-enable host timeout 5
    — как только пользователь аутентифицируеться, сеть 192.168.30.0 будет доступна, через 5 минут бездействия сеанс закроется.

    Рефлексивные списки доступа


    R2(config)#ip access-list extended OUTBOUNDFILTERS
    R2(config-ext-nacl)#permit tcp 192.168.0.0 0.0.255.255 any reflect TCPTRAFFIC
    R2(config-ext-nacl)#permit icmp 192.168.0.0 0.0.255.255 any reflect ICMPTRAFFIC
    — заставляем маршрутизатор отслеживать трафик, который инициировался изнутри.
    R2(config)#ip access-list extended INBOUNDFILTERS
    R2(config-ext-nacl)#evaluate TCPTRAFFIC
    R2(config-ext-nacl)#evaluate ICMPTRAFFIC
    — создаем входящую политику, которая требует, чтобы маршрутизатор проверял входящий трафик, чтобы видеть инициировался ли изнутри и связываем TCPTRAFFIC к INBOUNDFILTERS.
    R2(config)#interface serial 0/1/0
    R2(config-if)#ip access-group INBOUNDFILTERS in
    R2(config-if)#ip access-group OUTBOUNDFILTERS out
    — применяем входящий и исходящий ACL на интерфейс.

    Ограничение по времени

    R1(config)#time-range EVERYOTHERDAY
    R1(config-time-range)#periodic Monday Wednesday Friday 8:00 to 17:00
    — создаем список времени, в котором добавляем дни недели и время.
    R1(config)#access-list 101 permit tcp 192.168.10.0 0.0.0.255 any eq telnet time-range EVERYOTHERDAY — применяем time-range к ACL.
    R1(config)#interface s0/0/0
    R1(config-if)#ip access-group 101 out
    — закрепляем ACL за интерфейсом.

    Поиск проблем

    R#show access-lists {ACL номер | имя} — смотрим информацию о списке доступа.
    R#show access-lists — смотрим все списки доступа на маршрутизаторе.

    Пример

    Router#show access-lists
    Extended IP access list nick
    permit ip host 172.168.1.1 host 10.0.0.5
    deny ip any any (16 match(es))
    Standard IP access list nick5
    permit 172.16.0.0 0.0.255.255

    Мы видим что у нас есть два ACL (стандартный и расширенный) под названиями nick и nick5. Первый список разрешает хосту 172.16.1.1 обращаться по IP (это значит что разрешены все протоколы работающие поверх IP) к хосту 10.0.0.5. Весь остальной трафик запрещен показывает команда deny ip any any. Рядом с этим условием в нашем примере пишет (16 match(es)). Это показывает что 16 пакетов попали под это условие.
    Второй ACL разрешает проходить трафик от любого источника в сети 172.16.0.0/16.

    Практика

    Я собрал лабораторные работы для Packet Tracer с 5 главы курса CCNA 4 по теме ACL. Если у вас есть желание закрепить знания на практике, пожалуйста — ссылка, зеркало — FTP. Размер — 865.14 KB.

    Литература

    CCNA Exploration: Accessing the WAN (5 chapter)

    Другие наши интересноые статьи:

  1. Как закрыть порт telnet на роутере
  2. Как закрыть порт 8080 на роутере
  3. Как закрыть доступ провайдеру к роутеру
  4. Как закрыть порт 445 на роутере
  5. Как закрыть открытый порт на роутере tp link

  6. 0 0 голоса
    Рейтинг статьи
    Подписаться
    Уведомить о
    guest

    0 комментариев
    Старые
    Новые Популярные
    Межтекстовые Отзывы
    Посмотреть все комментарии