Клиентские L3VPN и обход VTY ACL на оборудовании Huawei

Суть проблемы довольно простая – telnet/ssh (далее, для простоты изложения речь пойдёт про telnet) работают во всех vpn-instance, таким образом, L3VPN-подключение является потенциальной угрозой для обхода VTY ACL, поскольку, в общем случае, абонент сам планирует своё адресное пространство. Типичные схемы подключения (PE-CE) – /30, /30+static route(часто, default в центральной точке), /30+bgp. Если в сторону клиента есть static route или bgp без (жёсткого) согласования префиксов (например, только с лимитом на их количество), то абонент может пытаться зайти телнетом на ip-адрес транспортной сети(/30) на стороне провайдера.

Подбирать адрес источника не так уж и сложно – начать с белых адресов этой AS, затем серые адреса. Часто терминальный сервер находится где-то рядом с DNS-серверами ISP. В целом, задача решаемая.

Решения

Обычно, vty acl выглядит примерно так:

acl number 2000
 description VTY-ACL
 rule 10 permit source 192.0.2.0 28
 rule 1000 deny
user-interface vty 0 4
 acl 2000 inbound

Значительно снизить вероятность обхода ACL можно переделав vty acl на тип advanced(3000-3999) и явно указать destination адрес в разрешающих правилах (т.е. адрес лупбэк, на который вы сами подключаетесь). В этом случае, обойти VTY ACL удастся только если ваш ip-адрес в клиентском vpn-instance совпадёт с адресом лупбэка, по которому осуществляется управление этим устройством. Это маловероятно, но всё же возможно (особенно, если вы используете серые адреса на лупбэках).

Более радикальный способ – запрет telnet-трафика с помощью cpu-defend-policy (если порты в сторону клиентов и аплинки живут на разных платах, поскольку защитные политики применяются per-slot).

Ну и самый очевидный способ – явные ACL(traffic-policy), запрещающие делать telnet на транспортный адрес в vpn-instance.

В самом деле, эта “проблема” затрагивает не только оборудование Huawei, но и многие линейки оборудования других вендоров. Из красивых решений – Cisco ASR9K, где нужно явно указывать в каком vrf запускается telnet-сервер.

Advertisements

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s