среда, 23 сентября 2009 г.

SSL VPN (Часть 2 - Thin-Client Mode)

Во второй части, сервис SSL VPN настроим для возможности делать перенаправление по порту.
   При включении данного режима на клиентском компьютере запускается приложение, которое устанавливает перенаправление, после завершения SSL VPN сессии клиентский компьютер возвращается первоначальному состоянию.

Router(config)#webvpn context webvpn-gw
Router(config-webvpn-context)#port-forward fwd-email
Router(config-webvpn-port-fwd)#$local-port 4025 remote-server 192.168.77.2 remote-port 25 description SMTP
Router(config-webvpn-port-fwd)#$local-port 4110 remote-server 192.168.77.2 remote-port 25 description POP3
Router(config-webvpn-context)#policy group default

Заходим https://192.168.1.53
Появился раздел "Доступ к приложениям"



Запускаем, соглашаемся с установкой сертификата




Запускается приложение для проброса портов, в котром видно "куда и сколько".

Проверяем работу
telnet 127.0.0.1 4025
Если видим приглашение почтового сервера, значит все настроено правильно.
220 mailserver.local ESMTP CommuniGate Pro 5.2.3 is glad to see you!
 На этом настройка SSL VPN в Thin-Client  режиме заканчивается.

понедельник, 14 сентября 2009 г.

SSL VPN (Часть 1 - Clientless mode)

В этой части рассматривается конфигурирование сервиса Cisco SSL VPN в режиме clientless (клиентском)

Разрешим использование веб-сервиса по протоколу https:
Router(config)#ip http secure-server
Теперь включим SSL VPN сервис, по умолчанию он работает в режиме clientless.
Router#webvpn enable webvpn-gw 192.168.1.53
где webvpn-gw - имя webvpn шлюза, а 192.168.1.53 адрес интерфейса, на котором будет ожидаться подключения.
Итогом работы команды станет следующая конфигурация:
webvpn gateway webvpn-gw
ip address 192.168.1.53 port 443
ssl trustpoint TP-self-signed-4294967295
inservice
!
webvpn context webvpn-gw
ssl authenticate verify all
!
!
policy group default
default-group-policy default
gateway webvpn-gw
inservice
!
Настраиваем аутентификацию пользователей:
Router(config)#aaa new-model
Router(config)#username cisco password cisco
Теперь можно подключиться к серверу по адресу https://192.168.1.53 и увидеть приглашение на вход.

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


Интерфейс легко русифицировать, используя языковой шаблон, который можно получить с помощью команды:
Router#webvpn create template language disk0:
на диске появится файл lang.js.
Router#show disk0: -#- --length-- -----date/time------ path 1 10699 Sep 15 2009 15:27:38 lang.js 66863104 bytes available (12288 bytes used)
Скопируйте в любое удобное место и выполните перевод по своему вкусу.
Мой вариант перевода можно взять тут.

Скопируйте отредактированный вариант шаблона на диск маршрутизатора.

Router#show disk0:
-#- --length-- -----date/time------ path 1 10699 Sep 15 2009 15:27:38 lang.js 2 15417 Sep 15 2009 15:29:50 Ru-ru.js 66846720 bytes available (28672 bytes used)

Применим шаблон в рамках нашего контекста:

Router(config)#webvpn context webvpn-gw
Router(config-webvpn-context)#language customize Russian disk0:Ru-ru.js
Перезайдите и выберите из доступных языков русский.
Если вам надо внести корректировку в шаблон, не забудьте выполнить следующую операцию:
Router(config-webvpn-context)#no language customize Russian disk0:Ru-ru.js
Router(config-webvpn-context)#language customize Russian disk0:Ru-ru.js


Теперь придадим немного функционала, добавив закладки на наши внутренние web-ресурсы.
Есть 3 способа добавления закладок:
1. Пользователь сам добавляет закладки используя интерфейс сервиса;
2. Вручную в режиме конфигуратора задаем закладки;
3. Используем шаблон закладок.

Второй способ:

Router(config)#webvpn context webvpn-gw
Router(config-webvpn-context)#url-list company-url
Router(config-webvpn-url)#heading "Terminal Servers"
Router(config-webvpn-url)#url-text TS-1C url-value http://192.168.1.20/ts
Router(config-webvpn-url)#exit

В политике, используемой нашим контекстом, укажем использовать наш список:
Router(config-webvpn-context)#policy group default
Router(config-webvpn-group)#url-list company-url
Router(config-webvpn-group)#end

Третий способ:

Router#webvpn create template url-list disk0:
Для удобства я переименовал url_list_tpl.xml в my_link.xml

Router(config)#webvpn context webvpn-gw
Router(config-webvpn-context)#url-list company-url
Router(config-webvpn-url)#import disk0:my_link.xml
Выйдите и зайдите снова. В разделе закладок появится наша закладка на web ресурс. У меня это web шлюз сервера терминалов.


Есть нюанс: сейчас пользователи имеют доступ не только ко внутренним ресурсам, но и ко внешних. Исправим это:

Router(config)#webvpn context webvpn-gw
Router(config-webvpn-context)#acl my_acl
Router(config-webvpn-acl)#error-msg "WARNING!!! Access deny!!!"
Router(config-webvpn-acl)#permit ip any 192.168.1.0 0.0.0.255
Router(config-webvpn-acl)#deny ip any any
Разрешили использовать ресурсы в 192.168.1.0/24 подсети

Не забываем указать список доступа в политике контекста.
Router(config-webvpn-context)#policy group default
Router(config-webvpn-group)#acl my_acl
Проверяем, теперь при попытке доступа к внешнему сервису система отвечает отказом.


Включим возможность работы с файлами в нашем домене/рабочей группе.

Router(config)#webvpn context webvpn-gw Router(config-webvpn-context)#nbns-list my-nbns Router(config-webvpn-nbnslist)#nbns-server 192.168.1.21 master Router(config-webvpn-nbnslist)#exit

192.168.1.21 в моем случае сервер под управлением ОС Windows 2003, тут описаны действия которые необходимо выполнить для работы CIFS:
CIFS login fails in domain mode with Windows 2003 server (W2k3)

Создадим список ресурсов котрые будут отображаться на главной странице
Router(config-webvpn-context)#cifs-url-list my-cifs Router(config-webvpn-cifs-url)#url-text "Share folder" url-value "//MAIN-SERVER/share/" Router(config-webvpn-cifs-url)#exit
Router(config-webvpn-context)#policy group default
Router(config-webvpn-group)#nbns-list my-nbns
Router(config-webvpn-group)#cifs-url-list my-cifs
Router(config-webvpn-group)#functions file-access
Router(config-webvpn-group)#functions file-brow
Router(config-webvpn-group)#functions file-entry
Router(config-webvpn-group)#end
Теперь нам доступны внутренние сетевые ресурсы.


На этом настройка SSL VPN сервиса в режиме clientless (Клиентский) закончена. Во второй части будем настраивать для режима Thin-Client (Тонкий клиент)

Подробно тут:
SSL VPN

Он тебя посчитал ...