среда, 21 июля 2010 г.

Готовлюсь к сертификации CCNA

Для подготовки к сдаче экзамена приобрел литературу:

воскресенье, 7 февраля 2010 г.

SSL VPN (Часть 3 - Tunnel Mode)

Чтобы включить данный режим необходимо установить пакет:
Router(config)#webvpn install svc disk0:sslclient-win-1.1.4.176.pkg
Создать loopback интерфейс и определить диапазон выдаваемых адресов:
Router(config)#interface loopback 0
Router(config-if)#ip address 172.16.10.1 255.255.255.0
Router(config)#ip local pool VPN 172.16.10.2 172.16.10.100
В контекст webvpn-gw добавить:
Router(config-if)#webvpn context webvpn-gw
Router(config-webvpn-context)# policy group default
Router(config-webvpn-group)#svc address-pool VPN
Router(config-webvpn-group)# split include 192.168.77.0 255.255.255.0
Router(config-webvpn-group)#functions svc-enabled
Команда split include используется для создания маршрутов на удаленном компьютере.

Теперь при подключении к серверу в разделе "Application Access" появится "Tunnel Connection (SVC)".

среда, 7 октября 2009 г.

Подключение удаленного офиса по каналу GPRS

   На днях понадобилось организовать VPN с удаленным офисом. Там, где расположен офис, связь на данный момент можно организовать только по каналам GPRS, широкополосный доступ местные интернет провайдеры обещают только через полгода.
   Исходя из прошлого опыта построения VPN по каналам GPRS, я отказался от всякого рода GPRS маршрутизаторов на базе Linux. После изучения предложений на рынке GPRS модемов остановился на IRZ75IT: много положительных отзывов и хорошая документация. В качестве маршрутизатора выбрал Cisco 871. Модем подключил к маршрутизатору через AUX порт. Здесь никаких проблем не оказалось, примеров распайки кабеля RJ45-DB9 в Интернете очень много. Ниже приведу свою сводную табличку.




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

!
chat-script tinit TIMEOUT 90 "" AT+CGDCONT=1,"ip","internet.tele2.ru" OK "ATD*99***1#" TIMEOUT 30 CONNECT
modemcap entry ES75IT:DTR=&D0:MSC=&F
!
crypto isakmp policy 25
 encr 3des
 hash md5
 authentication pre-share
crypto isakmp key officekey address DEST_IP
!
crypto ipsec transform-set office1-office2 esp-3des esp-md5-hmac
!
crypto map tunnelmap 10 ipsec-isakmp
 set peer DEST_IP
 set transform-set office1-office2
 match address IPS-ACL
!
interface Tunnel0
 ip address 10.10.1.1 255.255.255.252
 tunnel source Async1
 tunnel destination DEST_IP
 crypto map tunnelmap
!
interface Async1
 description gsm
 mtu 1412
 ip address negotiated
 encapsulation ppp
 dialer in-band
 dialer idle-timeout 900
 dialer string "*99***1#" modem-script tinit
 dialer watch-group 1
 dialer-group 1
 keepalive 100 10
 ppp authentication chap callin
 ppp chap hostname ""
 ppp chap password 7 145550
 crypto map tunnelmap
!
ip route 0.0.0.0 0.0.0.0 Async1
ip route 192.168.1.0 255.255.255.0 Tunnel0
!
ip access-list extended IPS-ACL
 permit gre host LOCAL_IP host DEST_IP
!
dialer watch-list 1 ip 192.168.1.1 0.0.0.0
dialer-list 1 protocol ip permit
!
line con 0
 modem enable
 speed 115200
line aux 0
 exec-timeout 0 0
 script activation tinit
 modem dtr-delay 60
 modem autoconfigure type ES75IT
 transport input all
 stopbits 1
 speed 115200
 flowcontrol hardware




Если есть вопросы пишите...




ссылки:
Configuring Dialout using a Modem on the AUX Port

среда, 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

воскресенье, 26 июля 2009 г.

Мониторинг трафика SPAN + iptraf

Порой требуется мониторить трафик, проходящий через порт/ы коммутатора, в IOS есть возможность зеркалировать трафик определенного порта или группы портов на другой порт для дальнейшего анализа трафика.
Настроить мониторинг трафика очень просто, понадобится настроить Switched Port Analyzer (SPAN) на коммутаторе cisco и установить iptraf на компьютере с ОС linux (FreeBSD - trafshow, Windows - Wireshark) ну или tcpdump :).

Дано:
  • Коммутатор Cisco 2960;
  • Ubuntu server 8.10.

ШАГ 1. SPAN
  1. enable
  2. configure terminal
  3. monitor session session_number source {interface interface-id | vlan vlan-id} [, | -] [both | rx | tx]
  4. monitor session session_number destination {interface interface-id [, | -] [encapsulation {dot1q | replicate}]}
  5. end
Более детальное описание параметров http://www.cisco.com/en/US/docs/switches/lan/catalyst2960/software/release/12.2_25_see/configuration/guide/swspan.html#wp1207676

пример:
!
monitor session 1 source vlan 1 - 2
monitor session 1 destination interface Fa0/5
!

ШАГ 2. IPTRAF

Устанавливаем
sudo adt-get install iptraf
запускаем
sudo iptraf
Включаем режим прослушивания


и мониторим



воскресенье, 19 июля 2009 г.

Cisco DCHP Server постоянная привязка (DHCP Static Mapping)

В IOS DHCP server присваивать постоянные IP адреса можно двумя способами: через создание отдельных пулов для каждого узла или используя структурированный текстовый файл, (Static Mapping Text File) из которого DHCP сервер считывает данные о сопоставлении IP и аппаратном адресах (hardware address).
Создание файла
Файл содержит следующие элементы:
  1. Дата и время создания файла;
  2. Версия базы;
  3. IP адрес;
  4. Тип оборудования;
  5. Аппаратный адрес;
  6. Срок окончания аренды;
  7. Тег окончания файла.
*time* Jul 17 2009 12:57 PM
*version* 2
!IP_addr htype haddr Lease_expiration
192.168.1.119 /24 id 0100.248c.58a8.85 Infinite
192.168.1.120 /24 id 0100.15f2.a1c5.e1 Infinite
192.168.1.121 /24 id 0100.1cc0.1584.24 Infinite
*end*


IP_addr -Постоянный IP адрес. Маска подсети задается через пробел.
htype - Тип оборудования, например "1" обозначает, что оборудование подключено по Ethernet интерфейсу, а значение "id" говорит о том, что в поле haddr будет указан client identifer. Как сказано в RFC 2132, Client identifer представляет собой значение, состоящее из пары "htype/haddr", где htype - тип оборудования (допустимые значения можно найти здесь http://www.iana.org/assignments/arp-parameters/) и haddr аппаратного адреса (адреса, возвращаемого по ARP запросу).
haddr - данное поле может содержать - аппаратный адрес устройства, идентификатор клиента Client-Identifer.
Type Client-Identifier
+-----+-----+-----+---
| t1 | i1 | i2 | ...
+-----+-----+-----+---


В случае с Ethernet запись будет выглядеть слудующим образом
0100.15f2.a1c5.e1
первые 2 цифры t1 определяют htype далее идет MAC адрес интерфейса;
Lease_expiration - дата окончания аренды адреса. Указываем "Infinite", что обозначает бессрочную аренду.

Конфигурируем DHCP сервер
  1. enable
  2. configure terminal
  3. ip dhcp pool name
  4. origin file url
  5. end

Пример
!
ip dhcp pool POOL_NAME
origin file tftp://192.168.77.2/dhcp-static
dns-server 192.168.1.20 192.168.1.21

default-router 192.168.1.1
!

После внесения изменений в файл необходимо перезапустить DHCP сервер
  1. enable
  2. configure terminal
  3. no service dhcp
  4. service dhcpend
Отладка
Просмотреть правильно ли внесена информация в файл и какие записи попали в таблицу DHCP сервера можно командой:
show ip dhcp binding
Ну и конечно же пользоваться отладкой
debug ip dhcp server [...] ?

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