Рейтинг@Mail.ru

NetCloud

Простыми словами о сетевых технологиях

Доступ по протоколу SSH к оборудованию Cisco

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

SSH (Secure Shell) — сетевой протокол, позволяющий производить удаленное управление сетевым оборудованием и туннелировать TCP-соединения. Для своей работы SSH использует 22 порт.

Перед тем, как установить соединение происходит аутентификация. Аутентификация — это процедура установления подлинности. При аутентификации предварительно генерируется пара открытого и закрытого ключа для определенного пользователя. Оба файла хранятся как на удаленной машине, так и на машине, к которой производится подключение. Эти файлы не передаются при аутентификации, система лишь проверяет, что пользователь открытого ключа также владеет и закрытым. Открытый ключ используется для проверки электронной цифровой подписи и шифрования сообщений. Закрытый ключ используется для генерации электронной цифровой подписи и расшифрования сообщений. Электронная цифровая подпись позволяет проверить отсутствие искажений информации, а также подтвердить владельца сертификата. Для шифрования данных и создания ЭЦП используется криптографический алгоритм RSA. Работа RSA основывается на вычислительной сложности задачи факторизации больших целых чисел. Более подробно данный алгоритм описан по ссылке. Мы же рассмотрим работу RSA поверхностно.

algoritm-shifrovaniya-rsa-na-palcax-3

Боб и Алиса переписываются в Интернете и хотят использовать шифрование для хранения переписки в секрете. В RSA открытый и закрытый ключ состоят из пары чисел. Закрытый ключ хранится в секрете, а открытый сообщается.  Алиса заранее сгенерировала закрытый и открытый ключ, а затем отправила открытый Бобу. Боб хочет послать сообщение Алисе. Боб шифрует сообщение m, используя открытый ключ Алисы (e, N). В итоге он получает зашифрованное сообщение c.  Далее по каналу связи сообщение c  передается Алисе. Алиса расшифровывает сообщение c с помощью своего закрытого ключа (d, N) и получает отправленное сообщение m. Таким образом, для того, чтобы расшифровать данные необходимо иметь закрытый ключ, который имеется только у отправителя. В этом и заключается суть работы данного алгоритма.

 

Настройка доступа по SSH к коммутатору и маршрутизатору Cisco

В Packet Tracer собрана схема.

lab_ssh

Между ноутбуком и коммутатором подключены два кабеля: первый — консольный (голубой), второй — Ethernet (черный). Консольный кабель имеет два разъема: DB-9 — для подключения к COM-порту компьютера и RG-45 для подключения к консольному порту коммутатора. 15f934b986ee6eef346ed88bf67ec64d2960s

Первоначальную настройку мы будем осуществлять именно через консоль, так как для доступа по SSH необходимо задать IP-адрес интерфейса, который в данный момент не задан. Тут стоит отметить один нюанс. Вообще коммутатор работает на канальном уровне эталонной модели OSI. Иными словами, коммутатор смотрит только Ethernet заголовок (который содержит лишь MAC-адрес) и не заглядывает вглубь IP заголовка (который находится выше). Тот IP-адрес, который мы будем задавать никак не связан с передачей данных, он будет нужен лишь для управления.

Настройка IP-адреса коммутатора подобна таковой у компьютера с одним интерфейсом Ethernet. С этой точки зрения у компьютера есть процессор, выполняющий операционную систему. У него есть плата сетевого интерфейса Ethernet (сетевая плата). Согласно конфигурации операционной системы, с сетевой платой связан IP-адрес, заданный вручную или полученный динамически от сервера DHCP. Коммутатор использует концепции, подобные хосту, за исключением того, что он может использовать виртуальную сетевую плату. Как и у компьютера, у коммутатора есть процессор, выполняющий операционную систему (Cisco IOS). Коммутатор использует концепцию, подобную сетевой плате, — коммутируемый виртуальный интерфейс (Swithced Virtual Interface — SVI) или более привычно — интерфейс VLAN, действующий как собственная сетевая плата коммутатора для подключения к локальной сети и передаче пакетов IP. Подобно хосту, настройка коммутатора подразумевает установку таких параметров IP, как IP-адрес для этого интерфейса VLAN.

Типичный коммутатор LAN Cisco уровня 2 может использовать только один интерфейс VLAN, но какой конкретно, выбирает сетевой инженер, перемещая управляющий трафик коммутатор на специфический интерфейс.

Заходим с ноута на коммутатор через консоль. Стандартные параметры лучше не менять без надобности.





lab_ssh2

lab_ssh3

Сейчас мы находимся в режиме оператора. Для перехода в режим конфигурации коммутатора необходимо ввести две команды.

Switch>enable - для перехода в расширенный режим
Switch#configure terminal - для перехода в режим конфигурации

Для управления всеми сетевыми устройствами в сети мы будем использовать сеть 172.16.0.0/24 и VLAN 2. Перед настройкой коммутатор необходимо вручную задать IP-адрес ноутбука, маску сети и основной шлюз. Пусть для примера IP-адрес 172.16.0.5, маска 255.255.255.0, шлюз по-умолчанию 172.16.0.1.  Далее я привожу конфигурацию коммутатора с комментариями.

Switch(config)#interface vlan 2 - переходим в настройки виртуального интерфейса
Switch(config-if)#ip address 172.16.0.100 255.255.255.0 - настраиваем ip-адрес и маску VLAN 2
Switch(config-if)#no shutdown - административно включаем интерфейс 
Switch(config-if)#exit - выходим из режима конфигурирования vlan-интерфейса
Switch(config)#ip default-gateway 172.16.0.1 - задаем шлюз по-умолчанию

Мы только что создали виртуальный интерфейс vlan 2, присвоили ему ip-адрес из пула ip-адресов для управления, административно перевили его в состояние up (включен) и также задали шлюз по-умолчанию, в качестве которого будет выступать маршрутизатор. Мы настроили виртуальный интерфейс. Теперь необходимо сконфигурировать физический интерфейс. Изначально все порты находятся в vlan 1. Наш ноутбук подключен к порту коммутатора fastEthernet 0/1. Таким образом, необходимо добавить в vlan 2 порт fastEthernet 0/1.

Switch(config)#interface fastEthernet 0/1 - переходим в настройки физического интерфейса
Switch(config-if)#description admin - описание интерфейса (подключен админ)
Switch(config-if)#switchport mode access - переводим порт в режим доступа
Switch(config-if)#switchport access vlan 2 - добавляем порт во 2 vlan. 
Switch(config-if)#exit

Теперь все готово для настройки SSH.

Switch(config)#username user secres pass - заводим пользователя user с паролем pass
Switch(config)#enable secret pass - защищаем привилигированный режим
Switch(config)#line vty 0 4 - переходим в настройки виртуальных линий (5 сессий) 
Switch(config-line)#login local - авторизация по имени и паролю (из локальной базы) 
Switch(config-line)#transport input ssh - разрешаем доступ только по SSH 
Switch(config-line)#exec-timeout 0 60 - при бездеятельности отключаем от консоли через 60 сек. 
Switch(config-line)#logging synchronous - убираем всплывающие сообщения-уведомления 
Switch(config-line)#exit 
Switch(config)#ip ssh version 2 - ставим последнюю версию SSH 
Switch(config)#ip domain-name Switch - указываем доменное имя 
Switch(config)#crypto key generate rsa - генерируем ключи (1024 kb)

На этом в принципе все. С ноута заходите в консоль и подключаетесь к свитчу

ssh -l user 172.16.0.100

Passoword: pass

Далее настроим доступ к маршрутизатору. Маршрутизатор подключен не напрямую. Для доступа к нему необходимо, чтобы коммутатор пропускал vlan 2 через порт fastEthernet 0/2.  Настроим порт fastEthernet 0/2 как транковый (тегированный) и добавим vlan 2.

Switch(config)#interface fastEthernet 0/2 
Switch(config-if)#switchport mode trunk
Switch(config-if)#switchport trunk allowed vlan 2
Switch(config-if)#exit

Первоначальную настройку маршрутизатора также осуществляем через консольный кабель.

Router(config)#interface fastEthernet 0/0
Router(config-if)#description Switch
Router(config-if)#no shutdown 
Router(config-if)#exit
Router(config)#interface fastEthernet 0/0.2 - создаем сабинтерфейс (виртуальный интерфейс)
Router(config-subif)#encapsulation dot1Q 2 - тегируем 2 vlan
Router(config-subif)#ip address 172.16.0.1 255.255.255.0 - задаем ip-адрес и маску
Router(config-subif)#exit

Тут может возникнуть вопрос по поводу команды encapsulation dot1Q 2. Эта команда обозначает, что все кадры, попадающие на интерфейс fastEthernet 0/0 с тегом vlan 2 будут попадать на сабинтерфейс fastEthernet 0/0.2. А все кадры, которые будут уходить с этого сабинтерфейса — помечаются тегом vlan 2. Остальные настройки маршрутизатора абсолютно аналогичны тому, что мы делали ранее.

Router(config)#username user secres pass - заводим пользователя user с паролем pass
Router(config)#enable secret pass - защищаем привилигированный режим
Router(config)#line vty 0 4 - переходим в настройки виртуальных линий (5 сессий) 
Router(config-line)#login local - авторизация по имени и паролю (из локальной базы) 
Router(config-line)#transport input ssh - разрешаем доступ только по SSH 
Router(config-line)#exec-timeout 0 60 - при бездеятельности отключаем от консоли через 60 сек. 
Router(config-line)#logging synchronous - убираем всплывающие сообщения-уведомления 
Router(config-line)#exit 
Router(config)#ip ssh version 2 - ставим последнюю версию SSH 
Router(config)#ip domain-name Router - указываем доменное имя 
Router(config)#crypto key generate rsa - генерируем ключи (1024 kb)