суббота, 23 ноября 2013 г.

Cisco catalyst 4900M, обновление IOS.

Cisco catalyst 4900M, обновление IOS.


В отличие от большинства устройств с Cisco IOS на борту, данный коммутатор имеет редкую особенность:
когда вы загрузите на flash новую версию ПО и пропишете в конфиге например:
boot system flash bootflash:cat4500e-entservices-mz.122-54.SG1.bin
затем перезагрузите коммутатор, то удивленно увидите устройство, загрузившееся с  ПО все той же старой версии. А дело в том, что на этом коммутаторе config register необходимо переписывать при каждом обновлении ПО. Т.е. кроме команды boot system.... необходимо сказать коммутатору
config-register 0x2102
после чего, сохранив конфигурацию, проверьте правильность загрузочной записи командой
 show bootvar
после перезагрузки не забудьте удостовериться в правильности версии ПО командой
sh version

понедельник, 18 ноября 2013 г.

ОС CentOS, список персональных граблей.


1) После установки "чистой" ОС и обновления пакетов до актуального состояния нам могут понадобиться пакеты из сторонних репозиториев, пример: htop, его в стандартных репо просто нет.
Ниже буду писать список репозиториев, принесших пользу лично мне.

Fedoraproject Epel x86_64
для версии 6, для 7 версии.
для подключения к своей системе устанавливаем RPM epel-release.

(В случае возникновения Error: Cannot retrieve metalink for repository: epel. Please verify its path and try again)

Фикс простой:
vim /etc/yum.repos.d/epel.repo
И на строке mirrorlist=https заменяем на http. 

RepoForge (ex. RPMForge)


RPMfusion.org

2) Смена timezone на работающем сервере:
 cp /usr/share/zoneinfo/Europe/moscow /etc/localtime

3)  dot1q vlan на сетевых интерфейсах (from redhat customer portal)

modprobe 8021q 
 Configure your physical interface in /etc/sysconfig/network-scripts/ifcfg-ethX, where X is a unique number corresponding to a specific interface, as follows:

DEVICE=ethX
TYPE=Ethernet
BOOTPROTO=none
ONBOOT=yes
 Configure the VLAN interface configuration in /etc/sysconfig/network-scripts. The configuration filename should be the physical interface plus a . character plus the VLAN ID number. For example, if the VLAN ID is 192, and the physical interface is eth0, then the configuration filename should be ifcfg-eth0.192:

DEVICE=ethX.192
BOOTPROTO=none
ONBOOT=yes
IPADDR=192.168.1.1
NETMASK=255.255.255.0
USERCTL=no
NETWORK=192.168.1.0
VLAN=yes
If there is a need to configure a second VLAN, with for example, VLAN ID 193, on the same interface, eth0 , add a new file with the name eth0.193 with the VLAN configuration details.
 Restart the networking service, in order for the changes to take effect, as follows:

service network restart
5) Использование Http proxy  в yum и консоли (from centos docs):

To enable all yum operations to use a proxy server, specify the proxy server details in /etc/yum.conf. The proxy setting must specify the proxy server as a complete URL, including the TCP port number. If your proxy server requires a username and password, specify these by adding proxy_username and proxy_password settings.
The settings below enable yum to use the proxy server mycache.mydomain.com, connecting to port 3128, with the username yum-user and the password qwerty.
# The proxy server - proxy server:port number
proxy=http://mycache.mydomain.com:3128
# The account details for yum connections
proxy_username=yum-user
proxy_password=qwerty
 To enable proxy access for a specific user, add the lines in the example box below to the user's shell profile. For the default bash shell, the profile is the file ~/.bash_profile. The settings below enable yum to use the proxy server mycache.mydomain.com, connecting to port 3128.
# The Web proxy server used by this account
http_proxy="http://mycache.mydomain.com:3128"
export http_proxy

6) How to install dig on CentOS
yum install bind-utils

четверг, 3 октября 2013 г.

Авторизация абонентов по ip адресу, ISG, Cisco BRAS

Итак, задача: обеспечение возможности авторизации абонентов по ip адресу на устройстве Cisco.
В наличии стенд в виде Cisco 7301, билинг с сервером, умеющим протокол radius для общения с BRASами и ноутбук, изображающий из себя простого абонента.

Реализация.
1) Настройки серверов radius на bras опустим (описаны в предыдущем посте).
2) Настройки политик ISG:

class-map type control match-all ISG-IP-UNAUTH
 match timer UNAUTH-TIMER
 match authen-status unauthenticated
!
!
policy-map type service OPENGV
 ip access-group OPENGV-IN in
 ip access-group OPENGV-OUT out
!
policy-map type control IP_SUBS
 class type control ISG-IP-UNAUTH event timed-policy-expiry
  1 service disconnect
 !
 class type control always event session-start
  19 authorize identifier source-ip-address
  20 set-timer UNAUTH-TIMER 1
  99 service-policy type service name OPENGV
 !
 class type control always event service-start
  35 service-policy type service identifier service-name
 !
 class type control always event service-stop
  1 service-policy type service unapply identifier service-name
 !
 class type control always event session-restart
  19 authorize identifier source-ip-address
  20 set-timer UNAUTH-TIMER 1
  99 service-policy type service name OPENGV
 !
!
ip access-list extended OPENGV-IN
 permit ip any host <личный кабинет>
 permit udp any host <DNS Server 1> eq domain
 permit udp any host <DNS Server 2> eq domain
ip access-list extended OPENGV-OUT
 permit ip host <личный кабинет> any
 permit udp host <DNS Server 1> eq domain any
 permit udp host <DNS Server 2> eq domain any
3) пример настройки интерфейса для подключения абонента:
interface GigabitEthernet0/1
 ip address <адрес шлюза для абонента> ! возможно сделать просто ip unnumbered как вариант
 ip verify unicast source reachable-via rx allow-default allow-self-ping
 ip helper-address <адрес сервера DHCP>
 no ip redirects
 no ip unreachables
 no ip proxy-arp
 ip flow ingress
 media-type rj45
 speed auto
 duplex auto
 no negotiation auto
 service-policy type control IP_SUBS
 ip subscriber routed
  initiator unclassified ip-address
4) ну и немного косметики для реализации функционала IPoE subscribers:
 ip dhcp relay information trust-all

среда, 25 сентября 2013 г.

L2TP авторизация на BRASе Cisco

В качестве стенда Cisco 7301, задача - настроить авторизацию абонентов по протоколу L2TP для одного из сегментов сети.

Поскольку инфраструктура используется с полноценной поддержкой Cisco ISG нам понадобится соответствующий IOS для 7301-й.
На просторах необъятной сети был найден 122-31.SB18 в версии enterprise (sic! в версии service provider нам не хватит функционала, внезапно там нет vpdn, вообще.) В принципе все новомодные SRC, SRD, SRE и т.д. релизы также должны подойти для решения задачи, просто исторически в нашей конторе SBшные IOSы как-то особенно хорошо прижились для задач авторизации и аккаунтинга абонентов.

Итак собственно кусочки конфига:

aaa group server radius CAR
 server 192.168.1.1 auth-port 1812 acct-port 1813
 load-balance method least-outstanding ignore-preferred-server
!
aaa authentication login default local group CAR
aaa authentication ppp default group CAR
aaa authorization exec default local group CAR
aaa authorization network default group CAR
aaa authorization auth-proxy default group CAR
aaa authorization subscriber-service default local group CAR
aaa accounting delay-start all
aaa accounting suppress null-username
aaa accounting update periodic 10
aaa accounting network default start-stop group CAR
aaa accounting network ACCNT_LIST1 start-stop group CAR
это что касалось настроек порядка авторизации и аккаутинга 
продолжим:
aaa server radius dynamic-author
 client 192.168.1.1 server-key <password>
 server-key <password>
 port 1912
это для возможности получить CoA от сервера с целью например прибития сессии абонента или изменения её параметров на лету

subscriber authorization enable
vpdn enable
 !
vpdn-group VPDN-L2TP
! Default L2TP VPDN group
 accept-dialin
  protocol l2tp
  virtual-template 2
 no l2tp tunnel authentication
!
interface Loopback0
 ip address 192.168.1.2 255.255.255.255
 no ip unreachables
!
interface Virtual-Template2
 description *** L2TP subscribers ***
 mtu 1492
 ip unnumbered Loopback0
 ip verify unicast source reachable-via rx allow-default allow-self-ping
 no ip redirects
 no ip unreachables
 no ip proxy-arp
 ip mtu 1492
 ip flow ingress
 ip tcp adjust-mss 1452
 no logging event link-status
 ppp authentication chap
 ppp ipcp dns 192.168.1.3 192.168.1.4
 service-policy type control L2TP
 service-policy type control нам необходимо предварительно настроить, это тема отдельной записи, т.к. там полно тонких материй работы с ISG
!
radius-server attribute 44 include-in-access-req vrf default
radius-server attribute 6 on-for-login-auth
radius-server attribute 8 include-in-access-req
radius-server attribute 32 include-in-access-req
radius-server attribute 55 access-request include
radius-server attribute 25 access-request include
radius-server attribute nas-port format d
radius-server host 192.168.1.1 auth-port 1812 acct-port 1813 test username cisco key <passwotrd>
radius-server timeout 10
radius-server unique-ident 20
radius-server key <passwotrd>
radius-server vsa send cisco-nas-port
radius-server vsa send accounting
radius-server vsa send authentication
radius-server load-balance method least-outstanding ignore-preferred-server
косметика для правильной работы с radius серверами