sirmax Posted July 2, 2024 Posted July 2, 2024 (edited) Хочется прикрыть доступ к устройству без использования внешнего radius/taacs просто средствами самой коробки Пробую сделать так: ip access-list extended ACCESS_LIST_COPP_TELNET deny tcp any any established permit tcp any any eq telnet exit ip access-list extended ACCESS_LIST_COPP_SSH deny tcp any any established permit tcp any any eq 22 exit ip access-list extended ACCESS_LIST_COPP_SNMP deny udp 10.72.0.0 0.0.0.255 any eq 161 permit udp any any eq 161 exit ip access-list extended ACCESS_LIST_COPP_BGP deny tcp any any established deny tcp 172.31.0.100 0.0.0.255 any eq 179 permit tcp any any eq 179 exit ip access-list extended ACCESS_LIST_COPP_RADIUS deny udp 172.31.0.0 0.0.0.255 any eq 1812 deny udp 172.31.0.0 0.0.0.255 any eq 1813 deny udp 100.100.100.0 0.0.0.255 any eq 1812 deny udp 100.100.100.0 0.0.0.255 any eq 1813 permit tcp any any eq 1812 permit tcp any any eq 1813 exit class-map CLASS_MAP_COPP_TELNET match access-group name ACCESS_LIST_COPP_TELNET exit class-map CLASS_MAP_COPP_SSH match access-group name ACCESS_LIST_COPP_SSH exit class-map CLASS_MAP_COPP_SNMP match access-group name ACCESS_LIST_COPP_SNMP exit class-map CLASS_MAP_COPP_BGP match access-group name ACCESS_LIST_COPP_BGP exit class-map CLASS_MAP_COPP_RADIUS match access-group name ACCESS_LIST_COPP_RADIUS exit policy-map POLICY_MAP_COPP_INPUT_POLICY ! Deny telnet class CLASS_MAP_COPP_TELNET police cir 32000 bc 1500 be 1500 conform-action drop exceed-action drop violate-action drop exit exit ! ! Deny ssh class CLASS_MAP_COPP_SSH police cir 32000 bc 1500 be 1500 conform-action drop exceed-action drop violate-action drop exit exit ! Deny SNMP class CLASS_MAP_COPP_SNMP police cir 32000 bc 1500 be 1500 conform-action drop exceed-action drop violate-action drop exit exit ! ! Deny BGP class CLASS_MAP_COPP_BGP police cir 32000 bc 1500 be 1500 conform-action drop exceed-action drop violate-action drop exit exit ! ! Deny RADIUS class CLASS_MAP_COPP_RADIUS police cir 32000 bc 1500 be 1500 conform-action drop exceed-action drop violate-action drop exit exit ! ! Permit other (include LACP) class class-default police cir 32000 bc 1500 be 1500 conform-action transmit exceed-action transmit violate-action transmit exit exit exit control-plane service-policy input POLICY_MAP_COPP_INPUT_POLICY Для того что бы заходить на железку делаю а-ля port-knock ip access-list extended KNOCK_TCP_32022 remark *** KNOCK *** permit tcp any host 172.31.100.194 eq 32022 log remark *** PERMITED *** permit ip any any exit event manager environment KNOCK_ACL_SSH ACCESS_LIST_COPP_SSH event manager environment KNOCK_ACL_TELNET ACCESS_LIST_COPP_TELNET no event manager applet KNOCK_TELNET_SSH event manager applet KNOCK_TELNET_SSH event syslog pattern "%FMANFP-6-IPACCESSLOGP: SIP0: fman_fp_image: list KNOCK_TCP_32022 permitted tcp *" ! action 001.0 regexp "[0-9]+\.[0-9]+\.[0-9]+\.[0-9]+" "$_syslog_msg" ADDR action 001.1 regexp "\([0-9]+\)," "$_syslog_msg" PORT action 001.2 regexp "[0-9]+" "$PORT" PORT ! action 002.0 syslog msg "Received a knock from $ADDR on port $PORT..." ! action 002.1 syslog msg "Adding $ADDR to the $KNOCK_ACL_SSH ACL" ! action 003.0 cli command "enable" action 003.1 cli command "configure terminal" action 003.2 cli command "ip access-list extended $KNOCK_ACL_SSH" action 003.3 cli command "1 deny tcp host $ADDR any eq 22" action 003.4 cli command "end" action 003.5 cli command " " ! action 004.0 syslog msg "Added $ADDR to the $KNOCK_ACL_SSH ACL" ! action 004.1 syslog msg "Adding $ADDR to the $KNOCK_ACL_TELNET ACL" ! action 005.0 cli command "enable" action 005.1 cli command "configure terminal" action 005.4 cli command "ip access-list extended $KNOCK_ACL_TELNET" action 005.5 cli command "1 deny tcp host $ADDR any eq telnet" action 005.6 cli command "end" ! action 006.0 syslog msg "Added $ADDR to the $KNOCK_ACL_TELNET ACL" action 006.1 syslog msg "Waiting for 20 sec before deleting rules" ! action 007.0 wait 20 ! action 008.0 syslog msg "Wait finished" ! action 008.1 syslog msg "Removing $ADDR from the $KNOCK_ACL_SSH ACL" ! action 009.0 cli command "enable" action 009.1 cli command "configure terminal" action 009.2 cli command "ip access-list extended $KNOCK_ACL_SSH" action 009.3 cli command "no deny tcp host $ADDR any eq 22" action 009.4 cli command "end" ! action 010.0 syslog msg "Removed $ADDR to the $KNOCK_ACL_SSH ACL" ! action 010.0 syslog msg "Removing $ADDR to the $KNOCK_ACL_TELNET ACL" ! action 011.0 cli command "enable" action 011.1 cli command "configure terminal" action 011.2 cli command "ip access-list extended $KNOCK_ACL_TELNET" action 011.3 cli command "no deny tcp host $ADDR any eq telnet" action 011.4 cli command "end" ! action 012.0 syslog msg "Removed $ADDR from the $KNOCK_ACL_TELNET ACL" exit Судя по дебагу все работает как задумано, правила добавляются/удаляются (ACL KNOCK_TCP_32022 добавлен на интерфейсы) НО при этом доступ на железку работает все время, как будто никакой полиси и не включено (ssh/telnet/snmp доступны) show policy-map control-plane Показывает все счетчики нулевые - это нормально? IOS: System image file is "bootflash:asr1001-universalk9.03.16.10.S.155-3.S10-ext.bin" Edited July 3, 2024 by sirmax изменение заголовка Вставить ник Quote
VolanD666 Posted July 2, 2024 Posted July 2, 2024 А почему нельзя резать на ACL, которые ставятся на VTY, SNMP и т.п. ? Вставить ник Quote
sirmax Posted July 2, 2024 Author Posted July 2, 2024 31 минуту назад, VolanD666 сказал: А почему нельзя резать на ACL, которые ставятся на VTY, SNMP и т.п. ? Можно конечно, мне так кажется более правильным но может и ошибаюсь? Вставить ник Quote
VolanD666 Posted July 2, 2024 Posted July 2, 2024 14 минут назад, sirmax сказал: Можно конечно, мне так кажется более правильным но может и ошибаюсь? Ну, как мне кажется, CoPP больше для ограничения количества такого трафика, чтобы они вам устройство по положили. А вот для того чтобы доступ регулировать как раз ACL на сервисах. Но это ИМХО, по идее полный дроп тоже должен работать. Но в вашем случае, я бы сделал ACLями на сервисах. Ну, а по хорошему, лучше сделать VPN и не городить всякие кноки и прочие костыли. Вставить ник Quote
sirmax Posted July 2, 2024 Author Posted July 2, 2024 9 минут назад, VolanD666 сказал: Ну, а по хорошему, лучше сделать VPN и не городить всякие кноки и прочие костыли. Тут нужен настроенный VPN-клиент а ssh + пароль можно найти везде (например когда проведываешь родителей) Так-то конечно да Вставить ник Quote
Andrei Posted July 2, 2024 Posted July 2, 2024 4 часа назад, sirmax сказал: ssh + пароль можно найти везде (например когда проведываешь родителей) по ssh захожу на служебный сервер, с него телнетом на циску, на которой access-list 99 remark for_telnet access-list 99 permit <нужный ip сервера> access-list 99 permit <нужная служебная сетка> 0.0.0.255 line vty 0 4 access-class 99 in exec-timeout 0 0 Вставить ник Quote
sirmax Posted July 3, 2024 Author Posted July 3, 2024 14 часов назад, Andrei сказал: по ssh захожу на служебный сервер, с него телнетом на циску, на которой access-list 99 remark for_telnet access-list 99 permit <нужный ip сервера> access-list 99 permit <нужная служебная сетка> 0.0.0.255 line vty 0 4 access-class 99 in exec-timeout 0 0 То понятно - вопрос как обойтись без сервера совсем В целом проблема решена ответ - "сам дурак", проверял через менеджмент интерфейс куда очевидно COPP не применяетя, на остальных интерфейсах работает как задумано Остался вопрос о том имеет ли такая схема право на жизнь ) Вставить ник Quote
bike Posted July 3, 2024 Posted July 3, 2024 В 03.07.2024 в 10:54, sirmax сказал: Остался вопрос о том имеет ли такая схема право на жизнь ) ИМХО - пихать управление, под любым соусом, наружу плохой тон. VPN можно с любого компа\мобилы поднять. Вставить ник Quote
sirmax Posted July 3, 2024 Author Posted July 3, 2024 1 час назад, bike сказал: ИМХО - пихать управление, под любым соусом, наружу плохой тон. VPN можно с любого компа\мобилы поднять. Не поделитесь примером конфигурации для ASR что бы поднять на нем VPN для клиентов? Без использовния радиус/еще-что-то внешнее по отношению к коробке, в условии предпологается что кроме роутеров/свитчей ничего нет, с сервером я и сам OpenVPN поднял и вперед, так и живем. Вставить ник Quote
Andrei Posted July 3, 2024 Posted July 3, 2024 32 минуты назад, sirmax сказал: Без использовния радиус Встречал вот такой вариант aaa authorization network VPDN local aaa attribute list attr_list attribute type addr-pool "local_pool" service ppp protocol ip ip local pool local_pool a.b.c.2 a.b.c.254 username user1 privilege 0 password 111 username user1 aaa attribute list attr_list username user2 privilege 0 password 222 username user2 aaa attribute list attr_list username user3 privilege 0 password 333 username user3 aaa attribute list attr_list interface Virtual-Template1 ip unnumbered Loopback0 peer default ip address pool local_pool ppp authentication chap callin vpdn enable vpdn-group cdma ppp authorization VPDN accept-dialin protocol l2tp virtual-template 1 terminate-from hostname хххх source-ip ххххххх Вставить ник Quote
sirmax Posted July 3, 2024 Author Posted July 3, 2024 22 минуты назад, Andrei сказал: Встречал вот такой вариант aaa authorization network VPDN local aaa attribute list attr_list attribute type addr-pool "local_pool" service ppp protocol ip ip local pool local_pool a.b.c.2 a.b.c.254 username user1 privilege 0 password 111 username user1 aaa attribute list attr_list username user2 privilege 0 password 222 username user2 aaa attribute list attr_list username user3 privilege 0 password 333 username user3 aaa attribute list attr_list interface Virtual-Template1 ip unnumbered Loopback0 peer default ip address pool local_pool ppp authentication chap callin vpdn enable vpdn-group cdma ppp authorization VPDN accept-dialin protocol l2tp virtual-template 1 terminate-from hostname хххх source-ip ххххххх Спасибо это похоже на pptp на первый взгляд, я думал так уже не модно делать Вроде и клиента уже местами из ос выпиливают Вставить ник Quote
Andrei Posted July 4, 2024 Posted July 4, 2024 10 часов назад, sirmax сказал: похоже на pptp В примере l2tp, т.к. pptp в последних прошивках для ASR-100x заявлен и команды даже работают, но по факту pptp не работает, проверено Вставить ник Quote
VolanD666 Posted July 4, 2024 Posted July 4, 2024 Дык сервер необязательно должен быть на площадке Вставить ник Quote
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.