Меню

Cisco 881 настройка pptp



VPN между двумя маршрутизаторами Cisco

Read the article SITE TO SITE VPN BETWEEN CISCO ROUTERS in English

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

В нашем распоряжении будут:

Маршрутизатор Cisco 2800 в главном офисе (R-MAIN)
Сеть для пользователей 192.168.10.0 /24
Внешний статический адрес 1.1.1.2 /30
Шлюз провайдера 1.1.1.1 /30

Маршрутизатор Cisco 881 в дополнительном офисе (R-BRANCH)
Сеть для пользователей 192.168.20.0 /24
Внешний статический адрес 2.2.2.2 /30
Шлюз провайдера 2.2.2.1 /30

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

Способ первый. Тоннельные интерфейсы.

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

Шаг 1. Параметры шифрования

Выберем параметры шифрования для тоннеля. Если вы не знаете, что это такое, то просто скопируйте строчки из этого примера.
R-MAIN(config)#
crypto isakmp policy 1
encr 3des
authentication pre-share
group 2

crypto ipsec transform-set ESP_3DES_SHA_HMAC esp-3des esp-sha-hmac

crypto ipsec df-bit clear

crypto ipsec profile VTI_PROF
set transform-set ESP_3DES_SHA_HMAC
set pfs group2
Эти настройки для маршрутизатора R-BRANCH в дополнительном офисе будут идентичными.

Шаг 2. Ключ шифрования

Ключ шифрования должен быть одинаковым на обоих маршрутизаторах. Рекомендую сделать его не менее 50 символов так, чтобы в него входили цифры, буквы и спец символы, однако в примере буду использовать заведомо простой «12345».
Для главного офиса
R-MAIN(config)#
crypto isakmp key 0 12345 address 2.2.2.2
Для дополнительного офиса
R-BRANCH(config)#
crypto isakmp key 0 12345 address 1.1.1.2
В примерах красным цветом выделены места, которые следует изменять. Цифра стоит не просто так, а обозначает, что ключ вводится в незашифрованном виде, и ее трогать не следует. При просмотре конфигурации может (но необязательно) измениться на 7 и ключ будет записан в зашифрованном виде. Например
R-MAIN#sh run
/. вырезано. /
crypto isakmp key 7 ^bn UjbsdfgsujGsdf address 1.1.1.2
/. вырезано. /
Это не значит, что он изменился, а значит, что он отображается(!) в зашифрованном виде.
Обратите внимание, что в каждом офисе мы указываем внешний адрес соседней площадки.

Шаг 3. Создание тоннельных интерфейсов

На каждом маршрутизаторе создаем виртуальный тоннельный интерфейс.
В главном офисе:
R-MAIN(config)#
interface Tunnel1
description Link to R-BRANCH
ip address 10.0.0.1 255.255.255.252
tunnel source FastEthernet 0/0
tunnel destination 2.2.2.2
tunnel mode ipsec ipv4
tunnel protection ipsec profile VTI_PROF
ip address 10.0.0.1 255.255.255.252 — собственный адрес виртуального тоннеля
tunnel source FastEthernet 0/0 — собственный внешний интерфейс маршрутизатора
tunnel destination 2.2.2.2 — внешний адрес маршрутизатора дополнительного офиса
tunnel mode ipsec ipv4 — вид шифрования
tunnel protection ipsec profile VTI_PROF — способ шифрования

Важно!
Если после ввода последних 2ух строк у вас появились сообщения об ошибках и маршрутизатор не принимает эти команды, то удалите профиль шифрования командой
no crypto ipsec profile VTI_PROF
На Вашем маршрутизаторе с текущей версией операционной системы IOS не получится воспользоваться этим способом. Переходите к способу 2.

В дополнительном офисе
R-BRANCH(config)#
interface Tunnel1
description Link to R-MAIN
ip address 10.0.0.2 255.255.255.252
tunnel source FastEthernet 4
tunnel destination 1.1.1.2
tunnel mode ipsec ipv4
tunnel protection ipsec profile VTI_PROF
ip address 10.0.0.2 255.255.255.252 — собственный адрес виртуального тоннеля
tunnel source FastEthernet 4 — собственный внешний интерфейс маршрутизатора
tunnel destination 1.1.1.2 — внешний адрес маршрутизатора главного офиса
tunnel mode ipsec ipv4 — вид шифрования
tunnel protection ipsec profile VTI_PROF — способ шифрования

Если все 3 шага выполнены корректно, то состояние интерфейса перейдет из состояния up/down в состояние up/up. Посмотреть это можно следующей командой.
R-MAIN# sh inter tun 1
Tunnel1 is up , line protocol is up
/. вырезано. /

Шаг 4. Проверка работы VPN тоннеля

Проверяем работоспособность тоннеля запустив ping до соседнего адреса тоннеля. Например из головного офиса:
R-MAIN# ping 10.0.0.2
Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 10.0.0.2, timeout is 2 seconds:
.
Success rate is 100 percent (5/5) , round-trip min/avg/max = 16/17/20 ms
Дополнительно убеждаемся, что пакеты проходят именно через защищенный тоннель командой sh cry ips sa peer 2.2.2.2
R-MAIN# sh cry ips sa peer 2.2.2.2
interface: Tunnel1
Crypto map tag: Tunnel1-head-0, local addr 2.2.2.2
protected vrf: (none)
local ident (addr/mask/prot/port): (0.0.0.0/0.0.0.0/0/0)
remote ident (addr/mask/prot/port): (0.0.0.0/0.0.0.0/0/0)
current_peer 2.2.2.2 port 500
PERMIT, flags=
#pkts encaps:5, #pkts encrypt: 5, #pkts digest: 5
#pkts decaps: 5, #pkts decrypt: 5, #pkts verify: 5
/. вырезано. /
Последние две строчки показывают, что маршрутизатор зашифровал и отправил 5 пакетов и столько же получил и расшифровал. Эти счетчики будут срабатывать каждый раз, когда какой-либо пакет будет проходить по тоннелю между нашими маршрутизаторами.

Шаг 5. Маршрутизация

Для того, чтобы обе площадки были доступны друг другу, следует добавить соответствующие строчки маршрутизации на каждом устройстве.
В головном офисе
R-MAIN(config)#
ip route 192.168.20.0 255.255.255.0 10.0.0.2
В дополнительном офисе
R-BRANCH(config)#
ip route 192.168.10.0 255.255.255.0 10.0.0.1
После этого все компьютеры, серверы и иные ресурсы обеих сетей должны быть доступны друг другу, а связь быть защищенной.

Способ второй. Универсальный

Подходит, когда требуется сделать тоннель между маршрутизатором и Cisco ASA или любым другим устройством, поддерживающим ipsec vpn, не обязательно Cisco. Настройки параметров шифрования, ключей, маршрутизации на другом стороне будут одинаковы по сути, но различны по командам/отображению. Для простоты и лучшего понимания рассмотрим пример с теми же двумя маршрутизаторами, которые были рассмотрены выше.

Шаг 1. Параметры шифрования

Выберем параметры шифрования для тоннеля. Если вы не знаете, что это такое, то просто скопируйте строчки из этого примера.
R-MAIN(config)#
crypto isakmp policy 1
encr 3des
authentication pre-share
group 2
crypto ipsec transform-set ESP_3DES_SHA_HMAC esp-3des esp-sha-hmac
crypto ipsec df-bit clear
Эти настройки для маршрутизатора R-BRANCH в дополнительном офисе будут идентичными.

Шаг 2. Ключ шифрования

Задаем ключ шифрования. Он будет одинаковым для обоих участников защищенного тоннеля. Рекомендую сделать его не менее 50 символов так, чтобы в него входили цифры, буквы и спец символы, однако в примере буду использовать заведомо простой «12345».
Для главного офиса
R-MAIN(config)#
crypto isakmp key 0 12345 address 2.2.2.2
Для дополнительного офиса
R-BRANCH(config)#
crypto isakmp key 0 12345 address 1.1.1.2
В примерах красным цветом выделены места, которые следует изменять. Цифра стоит не просто так, обозначает, что ключ вводится в первозданном виде, и ее трогать не следует. При просмотре конфигурации может измениться (но необязательно) на 7 и ключ будет записан в ином виде. Например
R-MAIN# sh run
/. вырезано. /
crypto isakmp key 7 ^bn UjbsdfgsujGsdf address 1.1.1.2
/. вырезано. /
Это не значит, что он изменился, а значит, что он отображается в зашифрованном виде.
Обратите внимание, что в каждом офисе указывается внешний адрес соседней площадки.

Читайте также:  Rock shox xc30 tk 100 мм qr настройка прелоада блокировка

Шаг 3. Объекты шифрования

Указываем трафик, который подлежит шифрованию. В нашем случае – это трафик между сетью 192.168.10.0 /24 головного офиса и сетью 192.168.20.0 /24 дополнительного офиса. Для этого создаем соответствующий список доступа на каждой площадке:
В головном офисе
R-MAIN(config)#
Ip access-list extended ACL_CRYPTO_DO
permit ip 192.168.10.0 0.0.0.255 192.168.20.0 0.0.0.255
В дополнительном офисе

R-BRANCH(config)#
Ip access-list extended ACL_CRYPTO_MAIN
permit ip 192.168.20.0 0.0.0.255 192.168.10.0 0.0.0.255

Шаг 4. Политика шифрования

На каждой площадке создаем политику шифрования (crypto map), в которой указываем все правила и параметры шифрования
В головном офисе
R-MAIN(config)#
crypto map CRYPTO_MAP 1 ipsec-isakmp
set peer 2.2.2.2
set transform-set ESP_3DES_SHA_HMAC
match address ACL_CRYPTO_DO
В дополнительном офисе:
R-BRANCH(config)#
crypto map CRYPTO_MAP 1 ipsec-isakmp
set peer 1.1.1.2
set transform-set ESP_3DES_SHA_HMAC
match address ACL_CRYPTO_MAIN
После этого crypto map должны быть привязана к внешнему интерфейсу.
В головном офисе
R-MAIN(config)#
Interface FastEthernet0/1
crypto map CRYPTO_MAP
В дополнительном офисе:
R-BRANCH(config)#
Interface Fa 4
crypto map CRYPTO_MAP

Шаг 5. Маршрутизация

Для того, чтобы обе площадки были доступны друг другу, следует добавить соответствующие строчки маршрутизации для каждого устройства. Удаленные сети должны быть доступны через шлюзы провайдеров сети Интернет.
В головном офисе
R-MAIN(config)#
ip route 192.168.20.0 255.255.255.0 1.1.1.1
В дополнительном офисе
R-BRANCH(config)#
ip route 192.168.10.0 255.255.255.0 2.2.2.1
После этого все компьютеры, серверы и иные ресурсы обеих сетей должны быть доступны друг другу, а связь быть защищенной.

Шаг 6. Проверка работы тоннеля

Проверяем работоспособность тоннеля, запустив ping с одного устройства внутри локальной сети до одного из адресов соседней площадки. Например, из головного офиса до какого-то компьютера из сети дополнительного офиса:
R-MAIN# ping 192.168.20.10
Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 192.168.20.10, timeout is 2 seconds:
.
Success rate is 100 percent (5/5) , round-trip min/avg/max = 16/17/20 ms
После этого убеждаемся, что пакеты проходят именно через тоннель
R-MAIN# sh cry ips sa peer 2.2.2.2
interface: Tunnel1
Crypto map tag: Tunnel1-head-0, local addr 2.2.2.2
protected vrf: (none)
local ident (addr/mask/prot/port): (192.168.10.0/255.255.255.0/0/0)
remote ident (addr/mask/prot/port): (192.168.20.0/255.255.255.0/0/0)
current_peer 2.2.2.2 port 500
PERMIT, flags=
#pkts encaps:5, #pkts encrypt: 5, #pkts digest: 5
#pkts decaps: 5, #pkts decrypt: 5, #pkts verify: 5
/. вырезано. /
Указанные строчки показывают, что маршрутизатор зашифровал и отправил 5 пакетов и столько же получил. Эти счетчики будут срабатывать каждый раз, когда какой-либо трафик будет проходить между нашими маршрутизаторами.
Этот способ чаще требует вмешательства со стороны администратора для внесения изменений в конфигурации устройств и требует больше внимательности при настройке. Степень защищенности трафика одинакова в обоих приведенных способах.

Важно!

Не забудьте сохранить конфигурацию всех устройств командой write или copy run start. Иначе после перезагрузки все изменения будут потеряны.
R-MAIN# write
Building configuration.
[OK]

Источник

PPTP Server средствами маршрутизатора cisco

Автор Гапон Анатолий создана 20. Jul, 2018 категория Routing, Other, VPN

Представим себе обычную ситуацию: весь парк сетевого оборудования, представлен в лице маршрутизатора и коммутатора, нууу.. естественно всеми любимой “цыски”, при этом необходимо организовать удаленный доступ к локальной инфраструктуре извне.

Port Forwarding ,конечно, “безопасно, удобно и все так делают”* , но я решил пойти по пути более гибкой реализации, а именно – настроить pptp сервер на имеющемся маршрутизаторе. В качестве тестовой среды у нас будет выступать эмулятор GNS3, подключенный через “добавленный loopback интерфейс”, к хостовой машине.

Таким образом появляется возможность тестировать всякие такие штуки без наличия нормальной тестовой площадки 🙂 .

0. Подготовка маршрутизатора

От простого к интересному – переходим в режим конфигурирования и меняем имя устройства.

R0#configure terminal R0(config)#hostname Cisco3745

0.1 Cisco3745(config)#interface fastEthernet 0/1 0.2 Cisco3745(config-if)#description WAN-NETWORK 0.3 Cisco3745(config-if)#ip address 192.168.138.254 255.255.255.0 0.4 Cisco3745(config-if)#no shutdown 0.5 Cisco3745(config-if)#exit 0.1 Cisco3745(config)#interface fastEthernet 0/0 0.2 Cisco3745(config-if)#description LOCALNET 0.3 Cisco3745(config-if)#ip address 192.168.13.254 255.255.255.0 0.4 Cisco3745(config-if)#no shutdown 0.5 Cisco3745(config-if)#exit

Этими командами мы осуществили:
0.1 Переход в режим настройки интерфейса
0.2 Для порядка и неописуемых красот назначили описание интерфейсам
0.3 Назначили сетевой адрес и маску
0.4 Включили сам интерфейс
0.5 Ушли проверять

Cisco3745(config)#do sh ip int br Interface IP-Address OK? Method Status Protocol FastEthernet0/0 192.168.13.254 YES manual up up FastEthernet0/1 192.168.138.254 YES manual up up

Проверка говорит о том, что оба интерфейса включены и сконфигурированы !

Обратите внимание на команду “do” – с ее помощью мы можем выполнять команды режима “enable” но не переходить в него, при этом необходимо помнить эту команду, так как автодополнение “Tab” нам здесь не поможет.
И второй секрет: нет необходимости писать полностью все слова команды – IOS выполнит команду по нескольким начальным буквам, при условии отсутствия совпадений.

Таким образом мы сократили команду show ip interface brief до sh ip int br и команда отработала корректно.

Далее, используя ту же команду “do”, проверяем доступность узла в сети,
который в нашем случае выполняет роль интернет шлюза\шлюза провайдера.

Cisco3745(config)#do ping 192.168.138.1 Type escape sequence to abort. Sending 5, 100-byte ICMP Echos to 192.168.138.1, timeout is 2 seconds: . Success rate is 80 percent (4/5), round-trip min/avg/max = 28/62/92 ms

И здесь все гуд – наш шлюз доступен!
Приступим к подготовке пула адресов, выдаваемых клиентам при подключении,
далее по инструкции мы подключим этот пул.

0.6 Cisco3745(config)#service dhcp 0.7 Cisco3745(config)#ip dhcp pool VPN-POOL 0.8 Cisco3745(dhcp-config)#import all 0.9 Cisco3745(dhcp-config)#domain-name netconfig.local 0.10 Cisco3745(dhcp-config)#network 192.168.13.0 255.255.255.0 0.11 Cisco3745(dhcp-config)#update arp 0.12 Cisco3745(dhcp-config)#exit 0.13 Cisco3745(config)#ip dhcp excluded-address 192.168.13.1 192.168.13.100 0.14 Cisco3745(config)#ip dhcp excluded-address 192.168.13.200 192.168.13.254

0.6 Включаем сам сервис
0.7 Назначаем имя создаваемому пулу
0.8 Импортируем настройки в базу DHCP
0.9 Передаем доменный префикс (опционально)
0.10 Объявляем сеть, по факту это и есть весь пул, но см. пункту 0.13-14
0.11 Включаем обновление таблицы arp с учетом выданных адресов
0.12 Уходим в режим конфигурирования
0.13-14 Исключаем из пула адреса с 1 по 100 и с 200 по 254. Таким образом клиенты будут получать адреса начиная с 101 по 199
Многие используют локальные пулы “ip local pool” место “ip dhcp pool”, но с точки зрения гибкости и возможностей наш вариант более годный. Дело в том, что “ip dhcp pool” умеет передавать всяческую информацию, используя опции.

1. Настройка pptp сервера

Настройка шаблона:

1.1 Cisco3745(config)#vpdn enable 1.2 Cisco3745(config)#vpdn-group VPN-GROUP-NETCONFIG 1.3 Cisco3745(config-vpdn)#accept-dialin 1.4 Cisco3745(config-vpdn-acc-in)#protocol pptp 1.5 Cisco3745(config-vpdn-acc-in)#virtual-template 1 1.6 Cisco3745(config-vpdn-acc-in)#exit 1.7 Cisco3745(config-vpdn)#exit

Настройка интерфейса:

1.8 Cisco3745(config)#interface virtual-template 1 1.9 Cisco3745(config-if)#encapsulation ppp 1.10 Cisco3745(config-if)#peer default ip address dhcp-pool VPN-POOL 1.11 Cisco3745(config-if)#ip unnumbered fastEthernet 0/1 1.12 Cisco3745(config-if)#no keepalive 1.13 Cisco3745(config-if)#ppp encrypt mppe auto 1.14 Cisco3745(config-if)#ppp authentication ms-chap-v2 1.15 Cisco3745(config-if)#exit

Читайте также:  Подключение и настройка домашних кинотеатров
1.1 Включаем метод VPDN
1.2 Создаем группу VPDN
1.3 Разрешаем входящие запросы
1.4 Указываем используемый протокол
1.5 Привязываем к группе виртуальный интерфейс, он и будет принимать и устанавливать соединения
1.6 -7 Выход из режима
1.8 Переходим в режим конфигурирования виртуального интерфейса
1.9 Указываем инкапсуляцию
1.10 Привязываем ранее созданный пул адресов
1.11 Клонируем настройки с внешнего интерфейса
1.12 Отключаем тайм аут соединений
1.13 Применяем автоматический режим шифрования mppe (длинна ключа 40, 65, 128)
1.14 Указываем протокол аутентификации (я выбрал ms-chap-v2)
1.15 Уходим 😉

Настройка пользователей:

1.16 Cisco3745(config)#aaa new-model 1.17 Cisco3745(config)#aaa authentication ppp default local 1.18 Cisco3745(config)#aaa authorization network default local 1.19 Cisco3745(config)#username netconfig-1 password Pa$$word123 1.20 Cisco3745(config)#username netconfig-2 password NetPa$$12_142 1.21 Cisco3745(config)#username netconfig-3 password IKML_0589!

1.16 Включаем систему аутентификации и авторизации
1.17 Включаем аутентификацию ppp с помощью локального списка пользователей
1.18 Связываем авторизацию ppp с локальным списком пользователей
1.19-21 Создаем пользователей, назначаем им пароли

Необходимые настройки внесены, некоторые тонкости см. в 5 пункте.

Перейдем к настройкам pptp клиентов.

2. Настройка pptp клиента Windows

Переходим удобным для нас способом в меню управления сетевыми соединениями.

Это может быть вызов команды”Выполнить” Win+R:
1. control.exe /name Microsoft.NetworkandSharingCenter
||
2. explorer.exe shell.
||
3. Переход через меню “Пуск/параметры/Сеть и Интернет/VPN”
||
4. Переход через меню “Пуск” и набрав “центр упр*” – система покажет правильный ярлык 🙂
||
5. Переход в “Центр управления сетями и общим доступом” через контекстное меню сетевого подключения в области уведомления. У каждого свой путь, главное создать соединение, а затем его немного подкорректировать:

После предварительной настройки мы возвращаемся к первому слайду и переходим к настройке адаптера:

Стоит отметить, что процесс установки происходить быстрее, если выбрать конкретные настройки типа VPN и метода аутентификации. Режим шифрования в нашем случае подойдет как “стойкий” так и “обязательный”.

Если мы не планируем перенаправлять весь трафик через туннель, то стоит отключить “использование шлюза” через это соединение.

Последовательно закрыв все окна кнопкой “OK”, можем приступить к первому подключению.

Это возможно сделать нажав двойным кликом на нашем адаптере или на значке сетевого подключения на пенале уведомлений и выбрав интересующее нас VPN-соединение.

При удачном подключении в свойствах все того же адаптера мы увидим параметры соединения.

Здесь все как мы хотели: тип шифрования, метод аутентификации, адрес сервера и локальный сервер.

3. Настройка pptp клиента Cisco

Настройка будет производиться на такой же моделе маршрутизатора, который будет находится с другой стороны нашего “облака” – для полного воссоздания реальной ситуации.

3.1 R2#configure terminal 3.3 R2(config)#service internal 3.3 R2(config)#no ip gratuitous-arps 3.4 R2(config)#vpdn enable 3.5 R2(config)#vpdn-group 1 3.6 R2(config-vpdn)#request-dialin 3.7 R2(config-vpdn-req-in)#protocol pptp 3.8 R2(config-vpdn-req-in)#rotary-group 0 3.9 R2(config-vpdn-req-in)#initiate-to ip 192.168.138.254 3.10 R2(config-vpdn)#exit

3.1 Переходим в режим конфигурирования
3.2 Активируем сервис (команда не отображается в IOS еще с версии 12.2, но она есть :))
3.3 Предотвращаем потенциальные атаки через протокол ARP
3.4 Включаем метод VPDN
3.5 Создаем группу VPDN
3.6 Включаем исходящие запросы VPDN
3.7 Указываем используемый протокол
3.8 Указываем номер интерфейса-инициатора
3.9 Указываем адрес сервера для подключения
3.10 Уходим

Затем приступаем к настройке интерфейса:

3.11 R2(config)#interface dialer 0 3.12 R2(config-if)#ip address negotiated 3.13 R2(config-if)#ip pim dense-mode 3.14 R2(config-if)# ip nat outside 3.15 R2(config-if)#ip virtual-reassembly 3.16 R2(config-if)#encapsulation ppp 3.17 R2(config-if)#dialer in-band 3.18 R2(config-if)#dialer idle-timeout 0 3.19 R2(config-if)#dialer string netconfig-phone-111 3.20 R2(config-if)#dialer vpdn 3.21 R2(config-if)#dialer-group 1 3.22 R2(config-if)#ppp pfc local request 3.23 R2(config-if)#ppp pfc remote apply 3.24 R2(config-if)#ppp encrypt mppe auto 3.25 R2(config-if)#ppp chap hostname netconfig-2 3.26 R2(config-if)#ppp chap password 0 NetPa$$12_142 3.27 R2(config-if)#no cdp enable 3.28 R2(config-if)#exit 3.29 R2(config)#dialer-list 1 protocol ip 3.30 R2(config)#ip route 192.168.13.0 255.255.255.0 dialer 0

3.11 Переходим в режим настройки интерфейса
3.12 Указываем получение адреса через ppp
3.13 Активируем режим маршрутизации мультикаста
3.14 Помечаем интерфейс, как исходящий (для NAT)
3.15 Собираем фрагментированые пакеты
3.16 Указываем инкапсуляцию ppp
3.17 Передаем сигналы и данные по одному каналу
3.18 Игнорируем тайм аут отключение неактивного соединения
3.19 Указываем “номер дозвона” (это необходимо для совместимости)
3.20 Включаем использование VPDN
3.21 Привязываем к диалеру ранее созданную группу.
3.22 Включаем отправку опций сжатия
3.23 Включаем прием опций сжатия
3.24 Устанавливаем автоматический режим шифрования
3.25 Задаем логин
3.26 Задаем пароль
3.27 Отключаем протокол обнаружение соседей (cisco)
3.28 Уходим
3.29 Разрешаем дозвон, используя vpdn группу. (номер листа должен совпадать с номером группы)
3.30 Добавляем маршрут в удаленную сеть (за VPN сервером)

Результатом правильной настройки будет сообщение в консоли:

Mar 1 00:10:40.651: %LINK-3-UPDOWN: Interface Virtual-Access1, changed state to up Mar 1 00:10:42.355: %LINEPROTO-5-UPDOWN: Line protocol on Interface Virtual-Access1, changed state to up

Так-так…тут вроде все.

4. Настройка pptp клиента MikroTik

Для подключения к маршрутизатору мне удобней использовать winbox, а пока не познан уровень “дзен” в консоли – покликаем ЛКМ:

Создаем интерфейс для подключения.

На вкладке “General” можем изменить название интерфейса и выставить параметры формирования пакетов.

Параметры сжатия и шифрования указаны в подключаемом профиле “default encryption” – значение профиля не менялись. Сам профиль лежит на вкладку выше – “PPP > Profiles”. Информация к сведению!

На вкладке “Dial Out” указываем адрес сервера, учетные данные и метод аутентификации. Пункты 12-15 оставляем по умолчанию. После нажатия “Apply”, при правильных настройках, мы уже можем отслеживать состояние подключения в правом нижнем углу.

Или более подробно на соседней вкладке.

Клиент подключился и получил адрес, но с учетом тонкостей подключения, для доступа в удаленную сеть нам необходимо добавить к ней маршрут. Напомню – такую же процедуру мы делали и на cisco клиенте.

Плюс одна галочка в моем чек листе, и погнали дальше…

5. Дополнительные настройки

Маршруты в удаленную сеть.

Мы только что присоединили 3 разных клиента к pptp серверу, и если в случае с Windows этого достаточно чтобы уже иметь доступ к примеру к хосту 192.168.13.11 , то для Сisco и MikroTik необходимо шаманство с добавлением маршрутов, что мы и сделали ранее. Есть еще вариант использования транзитной (служебной) сети, но это давайте потом 🙂 . Все дело в том, что как не крути – pptp туннельный протокол для соединения двух точек, и никак не для множественного доступа, о чем и говорит маска 32.

Адаптер PPP VPN-PPTP-Netconfig: DNS-суффикс подключения . . . . . : netconfig.local Описание. . . . . . . . . . . . . : VPN-PPTP-Netconfig Физический адрес. . . . . . . . . : DHCP включен. . . . . . . . . . . : Нет Автонастройка включена. . . . . . : Да IPv4-адрес. . . . . . . . . . . . : 192.168.13.114(Основной) Маска подсети . . . . . . . . . . : 255.255.255.255 Основной шлюз. . . . . . . . . : NetBios через TCP/IP. . . . . . . . : Включен

Так вот, Windows очень даже самостоятельно справился с проблемой путем добавление маршрута, основываясь на классовой маске полученного адреса. (первая строка вывода)

C:\Users\Hapon route print | find «192.168.13.» 192.168.13.0 255.255.255.0 On-link 192.168.13.114 26 192.168.13.114 255.255.255.255 On-link 192.168.13.114 281 192.168.13.255 255.255.255.255 On-link 192.168.13.114 281 224.0.0.0 240.0.0.0 On-link 192.168.13.114 281 255.255.255.255 255.255.255.255 On-link 192.168.13.114 281

Чего нельзя сказать о двух других реализациях, конфигурация до добавления маршрутов:

MkroTik

Cisco

Справедливо будет отметить, что для двухстороннего взаимодействия между подсетями клиента и сервера необходимо добавить маршруты и на сервере pptp в удаленные подсети, к примеру, к сети, подключенной к MikroTik (сеть 192.168.11.0/24):

Cisco3745#ping 192.168.11.1 Type escape sequence to abort. Sending 5, 100-byte ICMP Echos to 192.168.11.1, timeout is 2 seconds: . Success rate is 0 percent (0/3) Cisco3745#conf t Cisco3745(config)#ip route 192.168.11.0 255.255.255.0 192.168.13.112 Cisco3745#ping 192.168.11.1 Type escape sequence to abort. Sending 5, 100-byte ICMP Echos to 192.168.11.1, timeout is 2 seconds: .

NAT для удаленных подсетей.
В добавок к маршрутам нам также необходимо включить преобразование адресов на интерфейсе, который смотрит в сторону VPN сервера. Это необходим для доступа из локальной сети за клиентом к сети за сервером, принимающим соединения.
Для этого на маршрутизаторе cisco (клиент pptp) необходимо создать список доступа и применить его на интерфейсе для трансляции. Также нужно обозначить интерфейс как “выходящий”, что и было
сделано ранее:

3.11 R2(config)#interface dialer 0 3.14 R2(config-if)# ip nat outside

Дополним эти параметры.

5.1 R2(config)#ip access-list standard 1 5.2 R2(config-std-nacl)#10 permit 192.168.10.0 0.0.0.255 5.3 R2(config-std-nacl)#exit 5.4 R2(config)#ip nat inside source list 1 interface dialer 0 overload

5.1 Создаем стандартный список доступа
5.2 Десятым правилом в нем разрешаем весь трафик, касающийся сети 192.168.10.0/24
5.3 Переходим обратно в режим конфигурирования
5.4 Разрешаем трансляцию адресов, указанных в списке доступа через VPN интерфейс

Обратите внимание на то, что маска в списках доступа объявляется в перевернутом виде , а номер правила в списке напрямую зависит от порядка его срабатывания – чем ниже номер, тем приоритетней правило.

В MikroTik логика включения NAT такая же, единственное отличие – здесь интерфейсы не делятся на inside and outside.
Создаем правило “IP > Firewall > NAT > Add”

На вкладке “General” устанавливаем цепочку, сеть, которой необходим доступ, и через какой интерфейс.

Выбираем механизм трансляции и сохраняемся.

Немного о механизме маскарадинга – с помощью этого механизма мы можем транслировать необходимый нам пул или сеть через внешний адрес или интерфейс.

Привязка адреса к логину подключения

Поскольку мы уже немного ввязались в соединение сетей, то нам важно чтобы адреса у клиентов не менялись, иначе концепция подключения просто рухнет. Для стабилизации этой ситуации очень хорошо подойдет привязка логина к выдаваемому адресу:

5.5 Cisco3745#conf t 5.6 Cisco3745(config)#aaa attribute list windows-client 5.7 Cisco3745(config-attr-list)#attribute type addr 192.168.13.114 service ppp protocol ip 5.8 Cisco3745(config-attr-list)#exit 5.9 Cisco3745(config)#aaa attribute list cisco-client 5.10 Cisco3745(config-attr-list)#attribute type addr 192.168.13.113 service ppp protocol ip 5.11 Cisco3745(config-attr-list)#exit 5.12 Cisco3745(config)#aaa attribute list mikrotik-client 5.13 Cisco3745(config-attr-list)#attribute type addr 192.168.13.112 service ppp protocol ip 5.14 Cisco3745(config-attr-list)#exit 5.15 Cisco3745(config)#username netconfig-1 aaa attribute list windows-client 5.16 Cisco3745(config)#username netconfig-2 aaa attribute list cisco-client 5.17 Cisco3745(config)#username netconfig-3 aaa attribute list mikrotik-client

5.5-14 Создаем список и назначаем ему адрес в качестве атрибута и привязываем к сервису
5.15-17 Затем добавляем конкретному пользователю этот список

Огненная стена

Ну как минимум мы должны помнить о инкапсуляции пакетов, и том, что PPP сверху оборачивается протоколом для туннелирования – GRE, и выглядит кадр так:

Следовательно это факт нужно учесть, если вы придерживаетесь политики “что не разрешено, то запрещено” и таки разрешить входящий GRE и PPTP трафик в списке доступа, используемом на интерфейсе, принимающем соединения.

5.18 Cisco3745(config)#ip access-lis extended GLOBALNET 5.19 Cisco3745(config-ext-nacl)#10 permit gre any any 5.20 Cisco3745(config-ext-nacl)#11 permit tcp any any eq 1723 5.21 Cisco3745(config-ext-nacl)#12 permit icmp any any 5.22 Cisco3745(config-ext-nacl)#20 deny ip any any 5.23 Cisco3745(config-ext-nacl)#exit 5.24 Cisco3745(config)#exit 5.25 Cisco3745(config)#interface FastEthernet 0/1 5.26 Cisco3745(config-if)#ip access-group GLOBALNET in

5.18 Создаем расширенный список доступа
5.19 Разрешаем GRE
5.20 Разрешаем PPTP
5.21 И ICMP
5.22 Затем запретим весь остальной трафик
5.23-24 Выходим из настроек списка доступа
5.25 Переходим в меню настройки внешнего интерфейса
5.26 Применяем список для входящих пакетов

Правила будут выполнятся по возрастанию – сначала 10, затем 11, и тд..

6. Дебаг и просмотр логов

При возникновении сложностей в настройке и подключении я первым делом проверяю доступность севера от клиента и обратно – “ping”, в случае недоступности сетей через уже установленный канал – маршруты и NAT.

Немаловажными факторами могут быть:

  • Правила фаервола у провайдера
  • Значения mtu на интерфейсах
  • Отсутствие необходимых функций в определенных версиях прошивки

На маршрутизаторах cisco просмотреть текущее состояние подключений можем так:

6.1 Cisco3745#show users 6.2 Cisco3745#show aaa sessions 6.3 Cisco3745#debug ppp ? authentication CHAP/PAP/MSCHAP/EAP authentication bap BAP protocol transactions cbcp Callback Control Protocol negotiation elog PPP ELOGs error Protocol errors and error statistics forwarding PPP layer 2 forwarding mppe MPPE Events multilink Multilink activity negotiation Protocol parameter negotiation packet Low-level PPP packet dump

6.1 Просмотр текущих подключений
6.2 Просмотр информации в разрезе сессии
6.3 Очень информативный набор команд для дебага ppp

Просмотр логов в MikroTik в один клик, но я бы рекомендовал предварительно добавить несколько правил “событий”, как минимум для pptp и dhcp:

Затем элегантно нажимаем кнопку “Log” в главном меню и просматриваем события:

В этом журнале будут отображены все основные параметры, указанные нами ранее, в более подробной форме – начиная от подробностей согласования протокола управления LCP и заканчавая передачей опций dhcp, которые, к слову, не во всех случаях и не во всех реализациях работают одинаково стабильно 🙁 .

В случае с Windows миниторинг событий мы можем осуществить комбинацией “Win+R” и вызвать оснастку eventvwr.msc .

Хотя в большинстве случаев сам клиент способен достаточно подробно указать на проблему.

7. Резюме

Логическая схема подключений отображена на картинке.

В этой статье я постарался, в первую очередь для себя, пролить свет на возможные подводные камни и нюансы в настройке, но, думаю, и ты – мой редкий читатель сможешь найти здесь что-то для себя.

Рабочая станция с Windows 10 использовалась исключительно как клиент, а в случае с клиентами-маршрутизаторами были предприняты попытки соединения удаленных сетей, в чем мы добились определенных успехов!

8. Пояснения/Дополнения

8.1 Port Forwarding, конечно, “безопасно, удобно и все так делают” – цитата-сарказм! Коллеги, если есть возможность использовать шифрованный канал – используйте его. Проброс порта в локалку к RDS – плохой тон!

8.2 MTU – тема не раскрыта должным образом, но этот параметр очень важен для работы сети в целом.

8.3 DHCP Option – не все опции, которые я пытался передавать клиентам, работали корректно. Использовались методы передачи как в dec так и hex формате.

8.4 Плюсы

  • Легкая настройка со стороны клиента
  • Интегрированный клиент в большинство OS
  • Хорошая скорость работы

8.5 Минусы

  • Уязвимые протоколы аутентификации
  • Трафик может блокироваться провайдером
  • Плохо адаптирован для соединения сетей (не предназначен)

Источник

Adblock
detector