Задание:
1) Базовая настройка
- a) Настройте имена устройств согласно топологии
- 1. Используйте полное доменное имя
- b) Сконфигурируйте адреса устройств на свое усмотрение
- 1. Для офиса HQ выделена сеть 192.168.11.0/24
- 2. Для офиса DT выделена сеть 192.168.33.0/24
- 3. Для туннелей между офисами выделена сеть 10.10.10.0/24
- i. Туннель должен вмещать минимально возможное количество адресов
- 4. Данные сети необходимо разделить на подсети для каждого vlan
- i. VLAN110 должна вмещать не более 64 адресов
- ii. VLAN220 должна вмещать не более 16 адресов
- iii. VLAN330 должна вмещать не более 8 адресов
- c) На всех устройства создайте пользователя sshuser с паролем P@ssw0rd
- 1. Пользователь sshuser должен иметь возможность запуска утилиты sudo без дополнительной аутентификации
- 2. На маршрутизаторах пользователь sshuser должен обладать максимальными привилегиями
Вариант реализации:
Разбиение сетей на подсети:
Название устройства |
NIC |
Сеть (подсеть) |
IP-адрес |
Шлюз |
R-DT
|
ISP <-> R-DT | 172.16.4.0/28 | 172.16.4.14/28 | 172.16.4.1 |
R-DT <-> FW-DT | 192.168.33.88/30 | 192.168.33.89/30 | — | |
Tunnel (GRE) | 10.10.10.0/30 | 10.10.10.1/30 | — | |
FW-DT
|
R-DT <-> FW-DT | 192.168.33.88/30 | 192.168.33.90/30 | 192.168.33.89 |
SW-DT (VLAN110) | 192.168.33.0/26 | 192.168.33.1/26 | — | |
SW-DT (VLAN220) | 192.168.33.64/28 | 192.168.33.65/28 | ||
SW-DT (VLAN330) | 192.168.33.80/29 | 192.168.33.81/29 | ||
ADMIN-DT | SW-DT (VLAN330) | 192.168.33.80/29 | 192.168.33.82/29 | 192.168.33.81 |
SRV1-DT | SW-DT (VLAN220) | 192.168.33.64/28 | 192.168.33.66/28 | 192.168.33.65 |
SRV2-DT | SW-DT (VLAN220) | 192.168.33.64/28 | 192.168.33.67/28 | 192.168.33.65 |
SRV3-DT | SW-DT (VLAN220) | 192.168.33.64/28 | 192.168.33.68/28 | 192.168.33.65 |
CLI—DT | SW-DT (VLAN110) | 192.168.33.0/26 | DHCP | |
R-HQ
|
ISP <-> R-HQ | 172.16.5.0/28 | 172.16.5.14/28 | 172.16.5.1 |
R-HQ <-> SW1-HQ (VLAN110) | 192.168.11.0/26 | 192.168.11.1/26 | — | |
R-HQ <-> SW1-HQ (VLAN220) | 192.168.11.64/28 | 192.168.11.65/28 | ||
R-HQ <-> SW1-HQ (VLAN330) | 192.168.11.80/29 | 192.168.11.81/29 | ||
Tunnel (GRE) | 10.10.10.0/30 | 10.10.10.2/30 | — | |
SW1-HQ | ovs-internal (VLAN330) | 192.168.11.80/29 | 192.168.11.82/29 | 192.168.11.81 |
SW2-HQ | ovs-internal (VLAN330) | 192.168.11.80/29 | 192.168.11.83/29 | 192.168.11.81 |
SW3-HQ | ovs-internal (VLAN330) | 192.168.11.80/29 | 192.168.11.84/29 | 192.168.11.81 |
ADMIN-HQ | SW3-HQ <-> ADMIN-HQ (VLAN330) | 192.168.11.80/29 | 192.168.11.85/29 | 192.168.11.81 |
SRV1-HQ | SW2-HQ <-> SRV1-HQ (VLAN220) | 192.168.11.64/28 | 192.168.11.66/28 | 192.168.11.65 |
CLI-HQ | SW2-HQ <-> CLI-HQ (VLAN110) | 192.168.11.0/26 | DHCP | |
CLI | ISP <-> CLI | 172.16.3.1/28 | 172.16.3.14/28 | 172.16.3.1 |
Назначаем имена устройств согласно топологии:
SW1-HQ | SW2-HQ | SW3-HQ | SRV1-HQ | SRV1-DT | SRV2-DT | SRV3-DT:
- Настраиваем имена устройств согласно топологии, используя полное доменное имя
- в качестве доменного имени используется — au.team
hostnamectl set-hostname <ИМЯ_ВМ>.<ДОМЕННОЕ_ИМЯ>; exec bash
где:
- hostnamectl — утилита для управления именем машины;
- set-hostname — аргумент, позволяющий выполнить изменение хостнейма;
- exec bash — перезапуск оболочки bash для отображения нового хостнейма.
- Например:
- Для ВМ SW1-HQ:
- Например:
hostnamectl set-hostname sw1-hq.au.team; exec bash
-
-
- Для ВМ SRV1-HQ:
-
hostnamectl set-hostname srv1-hq.au.team; exec bash
-
-
- Для ВМ SRV1-DT:
-
hostnamectl set-hostname srv1-dt.au.team; exec bash
- Проверяем:
-
- Для проверки полного доменного имени используем утилиту hostname и добавляем ключ -f:
hostname -f
-
-
- Результат:
-
Аналогично и для всех остальных устройств: SW2-HQ, SW3-HQ, SRV1-HQ, SRV1-DT, SRV2-DT, SRV3-DT.
CLI-HQ | ADMIN-HQ | CLI-DT | ADMIN-DT | CLI:
- Настраиваем имена устройств согласно топологии, используя полное доменное имя
- в качестве доменного имени используется — au.team
- поскольку клиент имеет графический интерфейс — воспользуемся Центром Управления Системой (ЦУС):
- После чего необходимо выполнить ПЕРЕЗАГРУЗКУ виртуальной машины
- Результат:
Аналогично и для всех остальных устройств: ADMIN-HQ, CLI-DT, ADMIN-DT, CLI.
R-HQ | R-DT:
- Настраиваем имена устройств согласно топологии, используя полное доменное имя
- в качестве доменного имени используется — au.team
- выполняем первый вход на устройство из под пользователя по умолчанию:
- логин: admin
- пароль: admin
-
- переходим в Привилегированный режим — используем для этого команду:
enable
-
- переходим в режим конфигурирования устройства — используем для этого команду:
configure terminal
-
- задаём имя устройству согласно топологии, используя при этом полное доменное имя:
- Для ВМ R-HQ:
- задаём имя устройству согласно топологии, используя при этом полное доменное имя:
hostname r-hq.au.team
-
-
- Для ВМ R-DT:
-
hostname r-dt.au.team
-
- Проверяем:
do show hostname
-
-
- Результат:
-
-
- Также выполняем сохранение на маршрутизаторах текущей конфигурации — для этого используем команду write:
Для FW-DT имя будет задано позднее, после назначения IP-адреса на локальный интерфейс и доступа к веб-интерфейсу
Назначаем IP-адреса на устройства:
R-HQ:
- Смотрим наименование портов в системе (из привилегированного режима):
show port brief
-
- Результат:
- порт te0 — смотрит в сторону ISP;
- порт te1 — смотрит в сторону локальной сети офиса HQ.
- Результат:
- Также разберёмся с основными понятиями касающимися EcoRouter:
- Порт (port) – это устройство в составе EcoRouter, которое работает на уровне коммутации (L2);
- Интерфейс (interface) – это логический интерфейс для адресации, работает на сетевом уровне (L3);
- Service instance (Сабинтерфейс, SI, Сервисный интерфейс) является логическим сабинтерфейсом, работающим между L2 и L3 уровнями:
- Данный вид интерфейса необходим для соединения физического порта с интерфейсами L3, интерфейсами bridge, портами;
- Используется для гибкого управления трафиком на основании наличия меток VLANов в фреймах, или их отсутствия;
- Сквозь сервисный интерфейс проходит весь трафик, приходящийна порт.
- Таким образом, для того чтобы назначить IPv4-адрес на EcoRouter — необходимо придерживаться следующего алгоритма в общем виде:
- Создать интерфейс с произвольным именем и назначить на него IPv4;
- В режиме конфигурирования порта — создать service-instance с произвольным именем:
- указать (инкапсулировать) что будет обрабатываться тегированный или не тегированный трафик;
- указать в какой интерфейс (ранее созданный) нужно отправить обработанные кадры.
- Создаём подинтерфейсы для назначения адресов локальных подсетей офиса HQ:
- первым делом создаём интерфейсы для каждого VLAN-а:
configure terminal
interface vl110
description "Clients"
ip address 192.168.11.1/26
exit
interface vl220
description "Servers"
ip address 192.168.11.65/28
exit
interface vl330
description "Administrators"
ip address 192.168.11.81/29
exit
write
-
- На базе физического интерфейса te1 — для каждого VLAN-а — создаём service-instance с инкапсуляцией соответствующих тегов и подключением соответствующих интерфейсов:
port te1
service-instance te1/vl110
encapsulation dot1q 110 exact
rewrite pop 1
connect ip interface vl110
exit
service-instance te1/vl220
encapsulation dot1q 220 exact
rewrite pop 1
connect ip interface vl220
exit
service-instance te1/vl330
encapsulation dot1q 330 exact
rewrite pop 1
connect ip interface vl330
exit
write
-
- Проверяем:
R-DT:
- Смотрим наименование портов в системе (из привилегированного режима):
show port brief
-
- Результат:
- порт te0 — смотрит в сторону ISP;
- порт te1 — смотрит в сторону локальной сети DT — непосредственно к FW-DT.
- Результат:
- На текущий момент выполняем создание интерфейса с именем int1 и назначаем IPv4-адрес согласно таблице адресации в сторону FW-DT:
- также при необходимости даём понятное описание для интерфейса (description);
configure terminal
interface int1
description "Connect_FW-DT"
ip address 192.168.33.89/30
exit
-
- переходим в режим конфигурирования порта te1 — создаём service-instance с именем te1/int1:
- также указываем что будет обрабатывать не тегированный трафик (untagged);
- и указываем в какой интерфейс нужно отправить обработанные кадры (int1);
- переходим в режим конфигурирования порта te1 — создаём service-instance с именем te1/int1:
port te1
service-instance te1/int1
encapsulation untagged
connect ip interface int1
exit
write
-
-
- Проверяем:
-
SRV1-HQ:
- В качестве сетевой подсистемы будет использоваться Etcnet
- Для того, чтобы в качестве сетевой подсистемы корректно использовался etcnet, в основном конфигурационной файле для интерфейса /etc/net/ifaces/<INTERFACE_NAME>/options должны присутствовать два параметра соследующими значениями:
- DISABLED=no
- NM_CONTROLLED=no
- в данном случае сетевой интерфейс имеет имя ens19;
- также стоит обратить внимание, чтобы назначить статические сетевые параметры для данного интерфейса -параметр BOOTPROTO долже иметь значение static
- Далеее назначем IP-адрес на интерфейс согласно таблице адресации и IP-адрес шлюза по умолчанию:
- Назначаем IP-адрес из vlan220 (серверная подсеть) на интерфейс ens19 (в данном случае):
echo "192.168.11.66/28" > /etc/net/ifaces/ens19/ipv4address
-
- Назначаем IP-адрес шлюза по умолчанию для vlan220 (серверная подсеть):
echo "default via 192.168.11.65" > /etc/net/ifaces/ens19/ipv4route
-
- Для применения внесённых изменений — необходимо перезагрузить службу network:
systemctl restart network
- Проверяем:
- Наличие IPv4-адреса и адреса шлюза по умолчанию:
На данный момент — доступность шлюза по умолчанию не проверить, т.к. не реализована коммутация.
SRV1-DT | SRV2-DT | SRV3-DT:
- Настраивается аналогично SRV1-HQ, таким образом, ожидаемый результат долже получиться следующий:
- SRV1-DT:
-
- SRV2-DT:
-
- SRV3-DT:
ADMIN-HQ:
- Пользуясь средствами графического интерфейса — назначаем IP-адрес на интерфейс согласно таблице адресации и IP-адрес шлюза по умолчанию
- переходим в Альтератор (Центр Управления Системой — ЦУС) — там же где назначали имя, задаём необходимые сетевые параметры:
-
-
- Результат:
-
- Проверяем:
ADMIN-DT:
- Настраивается аналогично ADMIN-HQ, таким образом, ожидаемый результат долже получиться следующий:
FW-DT:
- Переходим в режим администрирования:
- используем для этого команду enable
- вводим пароль
- Задаём полное доменное имя
- в качестве доменного имени используется — au.team
machine set hostname fw-dt.au.team
-
- проверяем:
machine show hostname
-
-
- результат:
-
- Настраиваем сетевую подситему:
- назначи IP-адрес на интерфейс в сторону R-DT:
inet ifconfig eth0 address 192.168.33.90 netmask 255.255.255.252
-
- настроим маршрутизацию между vlan:
- завершаем работу управляющей службы:
- настроим маршрутизацию между vlan:
iplir stop
-
-
- измените класс интерфейса eth1:
-
inet ifconfig eth1 class trunk
-
-
- подтверждаем удаление всез IP-адресов и их псевдонимов в этом интерфейсе:
-
-
-
- добавим виртуальные интерфейсы eth1.110, eth1.220, eth1.330, которые будут соответствовать vlan сетям с номерами 110, 220 и 330:
-
inet ifconfig eth1 vlan add 110
inet ifconfig eth1 vlan add 220
inet ifconfig eth1 vlan add 330
-
-
- назначим IP-адреса на виртуальные интерфейсы:
-
inet ifconfig eth1.110 address 192.168.33.1 netmask 255.255.255.192
inet ifconfig eth1.220 address 192.168.33.65 netmask 255.255.255.240
inet ifconfig eth1.330 address 192.168.33.81 netmask 255.255.255.248
-
-
- отредактируем конфигурационный файл iplir.conf:
-
iplir config
-
-
- добавляем секции, описывающие виртуальные интерфейсы:
-
-
-
- измените значение параметра allowtraffic на off:
-
-
-
- включаем интерфейс eth1:
-
inet ifconfig eth1 up
-
-
- запускаем управляющую службу:
-
iplir start
-
- Проверяем:
- под-интерфейсы для маршрутизации между vlan:
- Проверяем:
-
-
- интерфейс в сторону R-DT:
-
Создание пользователя sshuser с паролем P@ssw0rd:
SRV1-DT | SRV2-DT | SRV3-DT | SW1-HQ | SW2-HQ | SW3-HQ | SRV1-HQ:
- Для создания пользователя sshuser используем утилиту useradd:
- где:
- useradd — утилита для создания пользователя;
- sshuser — имя пользователя;
- -m — если домашнего каталога пользователя не существует, то он будет создан;
- -U — создаётся одноимённая группа и пользователь автоматически в неё добавляется;
- -s /bin/bash — задаётся командный интерпретатор для пользователя:
- где:
useradd sshuser -m -U -s /bin/bash
- Проверяем созданного пользователя с необходимыми параметрами:
- для этого необходимо открыть содержимое файла /etc/passwd с помощью утилиты cat или же текстовым редактором, например: vim;
- или же использовать утилиту grep и передать ей в качестве значения имя пользователя:
grep sshuser /etc/passwd
-
-
- Результат на примере для SRV1-HQ:
-
Аналогично для всез остальных устройств
- Для назначения пользователя sshuser пароля P@ssw0rd используем утилиту passwd:
- во время запуска — утилита в интерактивном режиме попросит ввести пароль для пользователя и затем подтвердить его:
passwd sshuser
-
-
- Результат запуска утилиты:
-
-
- Проверяем:
- на SRV-HQ1 — выполняем вход из под пользователя sshuser с паролем P@ssw0rd:
- Проверяем:
Аналогично для всез остальных устройств: SRV1-DT, SRV2-DT, SRV3-DT, SW1-HQ, SW2-HQ, SW3-HQ.
- Реализуем возможность запуска утилиты sudo пользователю sshuser без ввода пароля:
- Рекумендуется прочитать перед выполнением
- Добавляем пользователя sshuser в группу wheel для этого используем утилиту usermod
- поскольку штатное состояние политики: wheelonly (Означает что пользователь из группы wheel имеет право запускать саму команду sudo, но не означает, что он через sudo может выполнить какую-то команду с правами root)
- где:
- usermod — утилита для изменения и работы с параметрами пользователя;
- -aG — параметр чтобы добавить пользователя в дополнительную группу(ы). Использовать только вместе с параметром -G;
- wheel — имя группы;
- sshuser — имя пользователя:
usermod -aG wheel sshuser
- Добавляем следующую строку в файл в /etc/sudoers чтобы была возможность запуска sudo без дополнительной аутентификации:
echo "sshuser ALL=(ALL:ALL) NOPASSWD: ALL" >> /etc/sudoers
-
- P.S. или же открываем через текстовы редактор, например: vim
- Проверяем:
- на SRV-HQ1 выполняем вход из под пользователя sshuser и пытаемся повысить привелегии:
Аналогично для всез остальных устройств: SRV1-DT, SRV2-DT, SRV3-DT, SW1-HQ, SW2-HQ, SW3-HQ.
R-DT | R-HQ:
- Создаём пользователя sshuser на маршрутизаторах с паролем P@ssw0rd и с максимальными привилегиями:
- максимальным привилегиям в EcoRouter — соответствуем роль admin:
enable
configure terminal
username sshuser
password P@ssw0rd
role admin
exit
write
- Проверяем:
- на R-DT выполняем вход из под пользователя sshuser:
-
- на R-HQ выполняем вход из под пользователя sshuser:
CLI | ADMIN-DT | CLI-DT | ADMIN-HQ | CLI-HQ:
- Поскольку клиенты имеют графический интерфейс — воспользуемся Центром Управления Системой (ЦУС):
-
- создаём пользователя sshuser:
-
- задаём пользователю sshuser пароль P@ssw0rd:
- и добавляем его в группу wheel — выставив чек-бокс Входит в группу администраторов
- задаём пользователю sshuser пароль P@ssw0rd:
-
- проверяем:
Реализовать возможность запуска утилиты sudo без дополнительной аутентификации на клиентах можно после настройки доступа в сеть Интернет и установки пакета sudo