воскресенье, 30 июня 2013 г.

Лабораторная работа по Juniper №3. Настройка DHCP-сервера, ip-source-guard, arp-inspection, port-sec


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

Настраиваем DHCP Snooping,IP Source Guard и Dynamic ARP Inspection переходим в раздел ethernet-switching-options secure-access-port для настройки конфигурации
root@edit ethernet-switching-options secure-access-port
включаем DHCP Snooping в VLAN 100 
root@set vlan 100 examine-dhcp
включаем ARP-spoofing в VLAN 100 
root@set vlan 100 arp-inspection
включаем IP Source Guard в VLAN 100 
root@set vlan 100 ip-source-guard
указываем порт ge-0/0/0 (напомню, к нему у нас подключен роутер на котором функционирует DHCP сервер) доверительным для DHCP Snooping
root@set interface ge-0/0/0 dhcp-trusted
подключим к коммутатору PC с статически назначенным IP-адресом и проверим возможность передачи данных.При правильной настройке доступ не должен быть. 

Настраиваем ограничения

Подключим к порту ge-0/0/1 PC.
Переходим в раздел ethernet-switching-options secure-access-port для настройки конфигурации
root@edit ethernet-switching-options secure-access-port
устанавливаем на количество mac адресов на порту (ge-0/0/1) администратора (у нас к порту подключен один компьютер на прямую, значит будет приходить только один mac адрес), в случае превышения ограничения логируем ошибку:
root@set interface ge-0/0/1 mac-limit 1 action log
устанавливаем ограничение на mac адрес (разрешаем mac адрес PC на порту):
root@set interface ge-0/0/1 allowed-mac 00:1h:06:15:D3:CA
подключим PC с другим mac-адресом и заметить отсуствие доступа к сети.

Мониторинг

Проверить статус DHCP Snooping можно командой:

Проследить за работой Dynamic ARP Inspection можно командой:

Проверить статус IP Source Guard можно командой:

Проверить статус MAC-limit и MAC Move Limiting можно командой:


 За основу этой работы была взята работа с блога: http://jnciastepbystep.blogspot.ru/

       

Курс JNCIA и прочие.
Если вам понравился данная лабораторная и вам захотелось поблагодарить:
Яндекс.деньги 410011902537185
ICQ: 402204328
Skype: monaxgtx


Лабораторная работа по Juniper №2. Создание пользователей, настройка доступа по telnet/ssh


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

            root# set system host-name MX80
root# set system root-authentication plain-text-password
Задаем пароль для root-пользователя

root# set system login user TEST class super-user authentication plain-text-password
Создаем пользователя TEST с вводом пароля в «чистом» виде. Значение поля class дает определенные права в зависимости от выбранного типа пользователя. Типы пользователей:
            operator               permissions [ ]
             - обычно применяется для техподдержки
            read-only             permissions [ view ]

            super-user            permissions [ all ]
             - root
unauthorized        permissions [ none ]


root# set system login user TEST1 class operator authentication plain-text-password
Пользователь с правами operator может просматривать конфигурацию устройства и выполнять перезагрузку.

root# set interfaces ge-1/1/4 unit 0 family inet address 192.168.1.1/24
                На сетевом порту  создаем ip-адрес.

                Выполним проверку доступности коммутатора с компьютера с помощью команды ping.
                Настраиваем протокол SSH. Указываем какую использовать версию протокола

root@MX80# set system services ssh
root@MX80# set system services ssh protocol-version v2
запрещаем подключаться по ssh с логином root 
root@MX80# set system services ssh root-login deny
ограничиваем количество одновременных подключений (в примере 10) 
root@MX80# set system services ssh connection-limit 10
ограничиваем число попыток ввода пароля за одну минуту (в примере не более 5 попыток в минуту)
root@MX80# set system services ssh rate-limit 5
Настраиваем протокол telnet. Ограничиваем количество одновременных подключений (в примере 10)
root@MX80# set system services telnet connection-limit 10
ограничиваем число попыток ввода пароля за одну минуту (в примере не более 5 попыток в минуту)
root@MX80# set system services telnet rate-limit 5
Посмотрим все изменения внесенные нами в конфигурацию
root# show | compare
[edit system]
+  services {
+      ssh {
+          root-login deny;
+          protocol-version v2;
+          connection-limit 10;        
+          rate-limit 5;
+      }
+      telnet {
+          connection-limit 10;
+          rate-limit 5;
+      }
+  }
Сохраняем наши изменения
root@# commit

ssh TEST@192.168.1.1
TEST@192.168.1.1's password:
--- JUNOS 12.1R1.9 built 2012-03-24 12:52:33 UTC

TEST@MX80>

ssh TEST1@192.168.1.1
TEST@192.168.14.41's password:
--- JUNOS 12.1R1.9 built 2012-03-24 12:52:33 UTC

TEST1@MX80>
Команда configure будет не доступна.

подключение по SSH работает. Проверим подключение Telnet
telnet 192.168.1.1
Trying 192.168.1.1...
Connected to 192.168.1.1.
Escape character is '^]'.

MX80 (ttyp0)

login: TEST
Password:

--- JUNOS 12.1R1.9 built 2012-03-24 12:52:33 UTC
TEST@MX80>

Настройка простейшего листа доступа для ssh.
В примере мы разрешаем подключение к устройству по SSH только из сети
192.168.1.0/24 (это заведомо не верная настройки для демонстрации функционала).
root@MX80# set interfaces em0 unit 0 family inet filter input SSH
root@MX80# set firewall family inet filter SSH term SSH-accept from source-address 192.168.1.0/24
root@MX80# set firewall family inet filter SSH term SSH-accept from protocol tcp
root@MX80# set firewall family inet filter SSH term SSH-accept from destination-port ssh
root@MX80# set firewall family inet filter SSH term SSH-accept then accept
root@MX80# set firewall family inet filter SSH term SSH-deny from destination-port ssh
root@MX80# set firewall family inet filter SSH term SSH-deny then count Discard-SSH-Packets
root@MX80# set firewall family inet filter SSH term SSH-deny then discard

Изменения в конфигурации:
root@MX80# show | compare
[edit interfaces ge-1/1/4 unit 0 family inet]
+       filter {
+           input SSH;
+       }
[edit]
+  firewall {
+      family inet {
+          filter SSH {
+              term SSH-accept {
+                  from {
+                      source-address {
+                          192.168.1.0/24;
+                      }
+                      protocol tcp;
+                      destination-port ssh;
+                  }
+                  then accept;
+              }
+              term SSH-deny {
+                  from {
+                      destination-port ssh;
+                  }
+                  then {
+                      count Discard-SSH-Packets;
+                      discard;
+                  }
+              }
+          }
+      }
+  }

ssh TEST@192.168.1.1
ssh: connect to host 192.168.1.1 port 22: Connection timed out
и получаем сообщение об ошибке (так как наша сеть не добавлена в список разрешенных), пакеты отбрасываются: 
root@Juniper# run show firewall filter SSH    

Filter: SSH                                                   
Counters:
Name                                                Bytes              Packets
Discard-SSH-Packets                      1140                   15
Исправим это добавив нашу подсеть в фильтр 
root@MX80# set firewall family inet filter SSH term SSH-accept from source-address 192.168.1.0/24
доступ к устройству восстановился
ssh TEST@192.168.1.1
--- JUNOS 12.1R1.9 built 2012-03-24 12:52:33 UTC

TEST@MX80>
                За основу этой работы была взята работа с блога: http://jnciastepbystep.blogspot.ru/

               Курс JNCIA и прочие.
               Если вам понравился данная лабораторная и вам захотелось поблагодарить: 

               Яндекс.деньги 410011902537185
           ICQ: 402204328
           Skype: monaxgtx

суббота, 29 июня 2013 г.

Лабораторная работа по Juniper №1. Основы настройки


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


                 1) Подключимся к Juniper с помощью консольного кабеля
                2) После запуска и консольного подключения ожидаем приглашения на ввод логина. По умолчанию                 данные подключения: пользователь - root, пароль - пустой. 

            Любые изменения вступят в силу, только после выполнения команды commit

root@% cli консоли unix
root@host-name> cli консоли JunOS операционный режим
[edit system]
root@host-name# cli консоли JunOS конфигурационный режим, раздел system

где  root- это текущий пользователь
        host-name- имя устройства,
        [edit system] - редактируемый в настоящий момент раздел

Сразу после входа мы попадаем в Unix консоль, из командной строки которой необходимо запустить cli JunOS. 
Запускаем cli JunOS из консоли Unix:
root@% cli

Для перехода в конфигурационный режим необходима команда configure, но есть несколько вариантов работы с конфигурацией кандидатом в конфигурационном режиме:

root@> configure ?
Possible completions:
  <[Enter]>            Execute this command
  batch                Work in batch mode (commit happens in batch)
  dynamic              Work in dynamic database
  exclusive            Эксклюзивное редактирование конфигурации кандидата (другие пользователи не смогут получить доступ к конфигурированию)
  private                 Приватная конфигурация (изменения других пользователей не будут отображаться)
переходим в стандартный режим конфигурирования:

root@> configure      
Entering configuration mode
[edit]
root@#
настраиваем имя устройства:
root@# set system host-name EX3200
указываем домен:
root@# set system domain-name example.domain.com
указываем DNS сервер:
root@# set system name-server 8.8.8.8

root@# set interfaces em0 unit 0 family inet address 192.168.10.1/24

Создание vlan. Juniper реализует настройку vlan с присвоением имени vlan'a. Это удобно при дальнейшем конфигурировании.

root@# set vlans Test vlan-id 100 description "Access to router"

Мы создали vlan с именем Test, с идентификатором 100 (c таким тэгом будет передаваться сообщения из сети vlan'a через trunk порт) и описанием " Access to router".

root@# set vlans Test2 vlan-id 200 description "Access to network"

Проверим созданные vlan:
root@# show vlans
Test {
    description " Access to router";
    vlan-id 100;
}
Test2 {
    description "Access to network";
    vlan-id 200;
}
Далее выполним настройку trunk-порта. Для настройки trunk порта необходимо  выбрать тип family ethernet-switching, port-mode trunk и указать vlan'ы, которые следует пропускать через данный порт.
Конфигурируем VLANы на порта коммутатора  ge-0/0/0 к которому у нас подключен роутер: 

root@# edit interfaces ge-0/0/0 unit 0
root@# set description "Trunk"
root@# edit family ethernet-switching
root@# set port-mode trunk
root@# set vlan members [100 200]

Для настройки access порта необходимо выбрать тип порта  family ethernet-switching, port-mode access и указать vlan.

root@# edit interfaces ge-0/0/1 unit 0
root@# set description "Access"
root@# edit family ethernet-switching
root@# set port-mode access
root@# set vlan members 200

Создание SVI:
root@# set vlans Test vlan-id 100 l3-interface vlan.100
root@# set interfaces vlan unit 100 family inet address 192.168.1.1/24 — настройка SVI
root@# set interfaces ge-0/0/2 unit 0 family ethernet-switching vlan members 100

             root@# commit - применяем настройки на оборудовании
                                    Команда commit имеет ряд дополнительных опций


             root@EX3200# commit ?
            Possible completions:
            <[Enter]> Execute this command
            and-quit      Сохранить и выйти и режима конфигурации
            at                Сохранить в установленное время (полезно при настройке нескольких устройств)
            check          Проверить конфигурацию
            comment     Комментировать текущие изменения конфигурации (все комментарии можно                 просмотреть командой: show system commit) 
            confirmed   Сохранение конфигурации с подтверждением (если была сделана ошибки и доступ к устройству был потерян JunOS восстановит конфигурацию до изменения)

В show conf должны увидеть:
 vlan {
        unit 100 {
            family inet {
                address 192.168.1.1/24;
            }
        }
vlans {
    Test {
        vlan-id 100;
        l3-interface vlan.100;
    }

Изменим топологию.Подключим локальную машину в порт ge-0/0/2, настроим ip-адрес из данной сети и выполним команду ping. Команда ping должна пройти.

За основу этой работы была взята работа с блога: 
http://jnciastepbystep.blogspot.ru/
Курс JNCIA и прочие.
Если вам понравился данная лабораторная и вам захотелось поблагодарить: 
Яндекс.деньги 410011902537185
ICQ: 402204328
Skype: monaxgtx


среда, 26 июня 2013 г.

Juniper.Sub-interfaces
Создание саб-интерфейсов на роутере Juniper

edit interface ge-1/0/5
set vlan-tagging
set unit 1 vlan-id 1 family inet address 192.168.1.1/24
set unit 2 vlan-id 2 family inet address 192.168.2.1/24

вторник, 25 июня 2013 г.

ASA class-map, policy-map, service-policy

Применение .class-map, policy-map, service-policy на межсетевых экранах ASA (8.2):
Class-map - определяет тип трафика.
Policy-map - определяет действие для типа трафика, заданного в class-map.
Service-Policy - определяет место применения policy-map, либо глобально (input direction), либо относительно интерфейса (может быть как input так и output, что указывается в policy-map).
Пример ограничения скорости скачивания (download) и загрузки (upload) на внешнем интерфейсе для HTTP 80 на ASA
access-list ACL permit tcp any any eq 80 
access-list ACL permit tcp any eq 80 any 
class-map HTTP 
match access-list ACL 
policy-map HTTP_Rule 
class-map HTTP 
police input 500000 - Входящий поток (500Kbits/s)
police output 500000 - Исходящий поток (500Kbits/s)
service-policy HTTP_Rule interface outside

Источник: http://telecombook.ru/archive/network/cisco/security/83-asa-traffic-policing

Для реализации фильтрации сайтов:

regex blockex1 "vk.com"

access-list ACL permit tcp 192.168.1.0 255.255.255.0 any eq 80 
access-list ACL deny tcp any any
class-map block-users-class-Testgroup 
 match access-list Test - описываем какой трафик необходимо обработать

class-map type inspect http match-any block-url-class
 match request header host regex blockex1 - описываем совпадение с regex

policy-map type inspect http block-url-policy  
 parameters
 class block-url-class - политика подключающая class-map 
  drop-connection log - действие с этим классом

policy-map block-users-url-policy-Testgroup
 class block-users-class-Testgroup - подключаем трафик который удовлетворяет ACL
  inspect http block-url-policy - выполняем инспекцию трафика и отсекаем от интересного трафика сайты.

service-policy block-users-url-policy-Testgroup interface inside - применяем policy на интерфейс inside

Решение для фильтрации сайтов и зарезания трафика:

regex blockex1 "vk.com"


access-list ACL permit tcp 192.168.1.0 255.255.255.0 any eq 80 
access-list ACL deny tcp any any


policy-map type inspect http block_test
 parameters
  protocol-violation action drop-connection
 match request uri regex blockex1
  drop-connection log
   
class-map class_for_inside
 match access-list ACL

policy-map policy_for_inside
 class class_for_inside
  inspect http block_test
  police input 500000 1500 conform-action transmit exceed-action drop

service-policy policy_for_inside interface inside