Как настроить vpn сервер на роутере cisco

Обновлено: 05.07.2024

Такой вариант подключения можно использовать для построения сетей с безопасным доступом. Маршруизатор Cisco используется в качестве сервера доступа VPN (через PPTP) и шлюза для доступа в Интернет. Каждому клиенту, подключающемуся по такой схеме, раздается IP-адрес из пула DHCP-сервера, затем происходит авторизация по PPTP. При правильной паре имя пользователя/пароль клиенту выдается также приватный ip адрес из сети 192.168.10.0 с маской подсети 255.255.255.0, который затем будет маршрутизироваться в Интернет с помощью NAT. Для субинтерфейсов используем инкапсуляцию dot1q. Такая схема подключения реализуется на маршрутизаторах Сisco серий 1700, 2600, 2800 и так далее (до 7500 и выше) с поддержкой VPN-функций в используемом Cisco IOS.

aaa new-model
aaa authentication login default local
aaa authentication ppp default group radius
aaa authorization exec default local
aaa authorization network default group radius
aaa accounting network default start-stop group radius
aaa accounting system default start-stop group radius
enable secret cisco
enable password cisco

username admin password cisco
ip subnet-zero
no ip rcmd domain-lookup
ip domain-name router
ip name-server 192.168.1.100
ip name-server 192.168.2.100
ip cef
vpdn enable

interface FastEthernet0/0
no ip address
no ip redirects
no ip unreachables
no ip proxy-arp
no ip route-cache cef
full-duplex

interface Virtual-Template1
ip unnumbered FastEthernet0/0.2
ip mtu 1492
ip nat inside
autodetect encapsulation ppp
ppp authentication chap callin

ip radius source-interface FastEthernet0/0.1

access-list 4 permit 192.168.3.0 0.0.0.255

radius-server configure-nas
radius-server host 192.168.2.2 auth-port 1812 acct-port 1813
radius-server retransmit 3
radius-server timeout 30
radius-server key 1234567890123456
end

Для клиентов в Windows XP создаем новое удаленное подключение через VPN, параметры – PPTP, авторизация по CHAP, без шифрования.

Сведения, содержащиеся в этом документе, касаются следующих версий программного обеспечения и оборудования:

Маршрутизатор Cisco 2621 с ПО Cisco IOS версии 12.2

Microsoft Windows 2000

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

Схема сети

В настоящем документе используется следующая схема сети:

Условные обозначения

Дополнительные сведения об условных обозначениях см. в документе Условные обозначения технических терминов Cisco.

Конфигурация маршрутизатора PPTP

Эти команды IOS применимы ко всем платформам, поддерживающим протокол PPTP.

Маршрутизатор Cisco 2621

Конфигурация маршрутизатора с протоколами MPPE и MS-CHAP

Настройки и конфигурация VPN (PPTP) в Windows 2000

Выполните следующие действия:

Выберите Пуск > Настройки > Сеть и удаленный доступ к сети > Новое подключение.

В появившемся окне мастера подключений выберите Тип сетевого подключения, затем выберите Подключиться к частной сети через Интернет.

Выберите Набрать номер для следующего предварительного подключения.

В поле «Узел» или «IP-адрес» укажите адрес места назначения и нажмите Далее.

Выберите Пуск > Настройки > Сеть и удаленный доступ к сети, затем выберите соединение, которое только что было настроено.

При появлении следующего окна выберите Свойства > Безопасность для настройки параметров.

Выберите Дополнительно (настройки заказчика), затем выберите Настройки и укажите соответствующие типы шифрования (пункт «Шифрование данных») и аутентификации (разрешите эти протоколы).

В разделе «Сеть» (тип вызываемого VPN-сервера) выберите PPTP и нажмите OK.

Появится окно проверки имени пользователя и пароля.

Появится окно «Свойства подключения».

В следующих окнах отображается состояние подключения.

Проверка

В данном разделе содержатся сведения для проверки работы текущей конфигурации.

show debug – отображает команды debug, разрешенные в данный момент, для диагностики.

show user – отображает список и состояние пользователей, работающих в системе в данный момент.

show ip route connected – отображает текущее состояние таблицы маршрутизации.

Ниже приведен пример выходных данных команды show debug.

Выходные данные отладки с начальной настройкой PPTP имеют следующий вид.

Выходные данные отладки с необходимой настройкой MPPE и MS-CHAP имеют следующий вид.

Выходные данные команды show user до включения MS-CHAP и MPPE имеют следующий вид.

Выходные данные команды show user после включения MS-CHAP и MPPE имеют следующий вид.

Выходные данные команды show ip route connected до включения MS-CHAP и MPPE имеют следующий вид.

Выходные данные команды show vpdn до включения MS-CHAP и MPPE имеют следующий вид.

Выходные данные команды show vpdn после включения MS-CHAP и MPPE имеют следующий вид.

Поиск и устранение неполадок

В этом разделе описывается процесс устранения неполадок конфигурации.

Команды для устранения неполадок

Примечание. Перед использованием команд debug ознакомьтесь с документом Важные сведения о командах отладки.

clear vpdn tunnel pptp – служит для закрытия указанного туннеля вместе со всеми сеансами в туннеле и очистки указанного туннеля PPTP.

Рассогласование параметров аутентификации. – Выходные данные отладки маршрутизатора, настроенного для использования протокола MS-CHAP в то время, как клиент VPN настроен для использования протокола PAP.

Приветствую, коллеги, хотелось бы описать шаги настройки SSL VPN для Cisco, с описанием некоторых интересных нюансов, встречаемых на практике.

Для реализации схемы, показанной ниже, будем использовать следующее реальное физическое оборудование, также прошу заметить что названия интерфейсов условны и в реализации не применяются (реализовать ssl vpn в unl-eve не удалось, так как ни iol ни vios команды для конфигурирования webvpn не поддерживают):

Cisco 881 (C880DATA-UNIVERSALK9-M 15.2(4)M4)
Windows 7 x64 + AnyConnect 4.4


Для начала, что такое SSL VPN (или WEBVPN) от Cisco. Это своего рода наследник easy vpn или ipsec vpn, который позволяет по протоколу ssl (443 порт) удаленно подключиться к вашей корпоративной или домашней сети. Кроме простоты настройки и относительно «легкого» конфига, самым большим доводом за использование ssl является то, что он использует практически повсеместно «открытый» 443 порт для подключения, т.е. если бы вы, например, использовали ipsec, то необходимо было бы на межсетевом экране или же на граничном роутере открывать isakmp (500) порты, наверняка разрешить nat-t (4500), и еще вдобавок разрешить трафик esp, тогда как в случае с ssl подключение проходит по 443 порту, который в большинстве своем разрешен для хостов. Кроме этого не надо на стороне клиента производить каких либо настроек, удаленному пользователю достаточно знать всего лишь внешний ip или dns имя роутера, а также логин и пароль для входа (при использовании easyvpn помимо вышеперечисленного нужен pre-share ключ, а также наименование client configuration group).

Настройка:

1. Для начала необходимо активировать лицензию на роутере, в нашем случае используется cisco 881 c ios 15.2(4), для ознакомительной активации на 60 дней вводим след. команду в privilege режиме:


После чего соглашаемся с лицензионным соглашением.

2. Далее копируем дистрибутив any connect на роутер любым удобным способом(копирование лучше производить в заранее созданную директорию webvpn, так как если просто скопировать в корень flash, то при установке создастся копия файла установки в той же директории, соответственно займет больше места на flash) и устанавливаем его:


4. Генерируем RSA ключи, создаем trustpoint и затем генерируем самоподписанный сертификат:


5. Настраиваем пул адресов, который будет выдаваться клиентам и создаем WebVPN Gateway, для команды ip interface вместо интерфейса можно указать непосредственно ip адрес командой ip address **** port 443:


6. Далее создаем и привязываем к нашему gateway так называемый webvpn context, в котором указаваем ранее созданный auth list, максимальное кол-во подключаемых пользователей, а также приветствие отображаемое при входе на портал через браузер(команда inservice в этом и предыдущем шаге активирует webvpn gateway и context):


7. Там же в конфигурации webvpn context создаем policy group, в которой задаем наш пул адресов, указываем какой трафик от клиентов будет заворачиваться в туннель (в нашем случае, когда destination у клиентов будут сети 192.168.1.0 /24 или 172.16.1.0/24 в таблице маршрутизации на клиентах появятся соответствующие записи только для этих двух сетей, указывающие на то, что этот трафик будет уходить в шифрованный туннель), команда functions svc-enabled указывает, что удаленный пользователь может подключаться с помощью самостоятельно установленного клиента anyconnect, т.е. не надо заходить через браузер:


8. Если у нас на внешнем интерфейсе висит ACL, то необходимо дописать правило:


В итоге запускаем на нашем клиенте браузер, вводим внешний адрес нашего роутера 212.212.0.1 и видим приглашение:


Осталось ввести логин пароль и установить соединение, на этом бы все, но есть один нюанс.
Если обратиться к нашей схеме, то сеть 192.168.1.0/24, та самая к которой мы подключаемся, находится за NATом, настройка NAT для роутера R1 следующая:


что произойдет если мы будем пинговать сеть 192.168.1.0 с подключившегося по vpn клиента(клиент получил адрес 10.0.0.12)? Пакеты от него зашифрованными будут уходить на R1, тот в свою очередь создает ответ с destination 10.0.0.12 и смотрит в таблицу маршрутизации:


Т.е. пакеты уходят с интерфейса dialer 1, а согласно вот этой замечательной таблице порядка операций над трафиком


после routing у нас идет NAT, а наше правило nat говорит нам, что наш source заменится на публичный адрес и в таком виде уйдет на клиента, который понятия не имеет о нашем внешнем адресе, следовательно пинг не пройдет и ничего работать не будет, исправляем добавлением следующей команды в acl NAT_POOL:

Point to Point Tunneling Protocol (PPTP) — сетевой протокол, используемый для создания VPN-туннелей между сетями общего пользования.Эти VPN туннели зашифрованы от одного конца до другого и позволяют безопасную передачу данных между ними.PPTP — как правило, осуществляются между сервером и клиентом,сервер,принадлежит к корпоративной сети,а клиент удаленному рабочему месту.

Точку беспроводного доступа Wireless-G с питанием по Ethernet,можно приобрести в Ipland . В то время как PPTP-алгоритмы шифрования,предлагают определенный уровень безопасности и конфиденциальности,они не лучшие технологии шифрования, доступных на сегодня.PPTP имеет свои недостатки,и поэтому не используются для долгосрочных сделок. PPTP использует протокол аутентификации по паролю и Challenge Handshake Authentication Protocol алгоритм шифрования.Он может предложить опции шифрования 40,56 и 128 бит,в зависимости от ваших потребностей.PPTP — это отличное быстрое решение VPN для краткосрочных сделок и поддерживает все текущие платформы Windows, без необходимости в дополнительных драйверах или программах.Маршрутизаторы Cisco могут быть настроены и действовать в качестве PPTP сервера,в качестве альтернативы,известной как Virtual Private Dialup Сети (VPDN) сервер.PPTP поддерживает маршрутизаторы Cisco с IOS 12.1(5)т.Следует отметить,что Windows Servers также способен протягивать PPTP-соединения путём настройки своих РАН услуг,однако,будучи в состоянии оказывать эту услугу для маршрутизатора Cisco,делает его более гибким и его легче реализовать в любой среде.

Пример сценария

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

Удаленный VPN пользователь должен будет создать VPDN dialup в его операционной системе ( предполагаем Windows XP),чтобы инициировать VPN соединение и аутентификацию на маршрутизатор Cisco.

Первый шаг — включение VPDN и создание VPDN группы параметров, которые будут определять различные аспекты PPTP-соединения:

Приведённая выше конфигурация позволяет маршрутизатору принимать входящие соединения PPTP и задаёт виртуальный интерфейс, на который PPTP туннель был настроен.

Далее,мы должны связать виртуальный интерфейс с реальным интерфейсом. Это эффективно свяжет PPTP подключения в реальный интерфейс.Мы также должны создать пул IP-адресов,которые будут назначены VPDN пользователям.Этот бассейн с именем ‘PPTP-Pool», и позднее мы перейдём в него для назначения адресов,которые будут выделены для VPN пользователей.

« ppp encrypt‘ команда задает шифрование для использования — в нашем случае,в 128 бит.Это может быть задано значением ‘auto’ для максимальной совместимости.Аутентификация для ms-chap и ms-chap v2, так что мы можем предложить лучший метод аутентификации для этого случая.

» ip unnumbered <interface>‘ команда анализа.

Все VPDN клиенты будут либо получать IP-адрес,который является частью существующей внутренней сети (как в нашем примере), или они должны будут присвоить IP-адрес,который полностью отличается от схемы внутренней сети,например, 192.168.5.20 — 192.168.5.25.

Если вы хотите присвоите им IP-адрес,который находится в рамках существующей внутренней сети (в большинстве случаев), вы должны использовать команды ip unnumbered,чтобы связать виртуальный адаптер для реального интерфейса, подключенного к внутренней сети — в нашем примере это FastEthernet 0/0.

С другой стороны,если вы хотите обеспечить VPDN клиентов совершенно другими IP-адресами,которые отличаются от вашей внутренней сети, то вы должны настроить интерфейс Virtual-Template с IP-адреса, принадлежащего к этой сети,например 192.168.5.1 и настроить VPDN Template с соответствующим диапазоном, например, 192.168.5.20 — 192.168.5.25.

Маршрутизаторы Cisco старших моделей,такие,как 836 837 & серии были проблемными при назначении VPDN clients IP-адреса,который принадлежал к существующей внутренней сети,поэтому инженерам ничего не оставалось,как назначить разные IP-схемы адресации для VPDN clients.

Из конфигурации и схемы,представленной выше,вы можете увидеть, что мы будем назначать VPDN clients диапазон IP-адресов,как часть существующих в внутренней сети:

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

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

Резюме

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

Рассмотрим настройку сети. Но для начала разберемся как работает VPN на основе IPSec. IPSec представляет собой стек протоколов для аутентификации и шифрования. Процесс создания туннеля состоит из 2-х фаз.

1-я фаза - ISAKMP (Internet Security Association and Key Management Protocol)

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

Но ведь данные могут быть перехвачены, канал же все еще не защищен?

Верно, поэтому используется специальный алгоритм Диффи-Хеллмана (протокол Internet Key Exchange, IKE). С помощью него можно обмениваться секретными ключами по незащищенному каналу. Как только секретный ключ получен устанавливается защищенный мини-туннель и дальнейший обмен служебной информацией проходит в безопасном режиме. В 1-й фазе устройства должны договориться об использовании следующих параметров безопасности:

  • Алгоритм шифрования
  • Метод аутентификации
  • Способ обмена секретными ключами
  • Срок жизни сессии (Security Association)

Набор данных параметров определяет политику ISAKMP.

Можно настроить различные политики ISAKMP?

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

Таким образом маршрутизатор может образовать сразу несколько туннелей, используя различные параметры безопасности. Заметим, что в 1-й фазе никакие пользовательские данные не передаются - только служебная информация.

2-я фаза - установление IPSec туннеля

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

Но ведь в 1-й фазе маршрутизаторы уже договорились обо всех параметрах безопасности, зачем это делать повторно?

В 1-й фазе шифровалась служебная информация, а во 2- й - уже пользовательские данные. Поэтому в целях безопасности и создаются 2 разных канала.

А что происходит с мини-туннелем ISAKMP?

Он остается активным во время работы IPSec туннеля. У каждого туннеля есть свое время “жизни”. Поэтому, если необходимо продлить сеанс связи, то мини-туннель ISAKMP обновит таймер туннеля, а также секретные ключи безопасности. Теперь, когда с теорией немного разобрались, приступим к настройке необходимых параметров. Для начала настроим саму сеть, включая и NAT на конечных маршрутизаторах:

Схема сети с VPN

Настройки ACL для NAT на Headquarter

Настройки ACL для NAT на Branch

Обрати внимание на список доступа для NAT. Мы указываем, что IP адреса трафика, предназначенного для диапазона 192.168.2.0 не должен транслироваться в глобальные адреса. Аналогичная ситуация и на маршрутизаторе Branch.

Приступим к настройке VPN.

Настроим политику ISAKMP на маршрутизаторе Headquarter:

Теперь укажем IP адрес конечной точки туннеля, то есть IP адрес маршрутизатора, а также их общий пароль для аутентификации:

Настроим параметры туннеля IPSec:

Объединим выше настроенные параметры IPSec, список доступа и укажем с кем надо создавать туннель. Для этого создадим карту шифрования:

В маршрутизаторе может существовать только одна карта шифрования, однако в самой карте можно создавать несколько наборов шифрования для нескольких туннелей. Например, мы создаем второй туннель. Тогда в самой карте поменяем порядковый номер:

И теперь можно добавлять параметры для второго туннеля. Завершающим этапом является привязка карты шифрования к внешнему интерфейсу:

Вот как выглядят настройки маршрутизатора Headquarter:

Настройки маршрутизатора Headquarter

То же самое проделываем и на втором маршрутизаторе, только в качестве конечной точки туннеля указываем адрес 100.1.1.1:

Настройки маршрутизатора Branch

Теперь проверим работу туннеля. Достаточно послать ping:

Неудачный ping

Однако результат обескураживает. Выглядит так, как будто маршрутизатор не знает куда отправлять пакеты.

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

Читайте также: