Top.Mail.Ru
Ответы

Настройка сетевой инфраструктуры провайдера на базе Linux и оборудования Eltex

Введение

В данной статье мы рассмотрим практический сценарий развёртывания базовых служб на граничном маршрутизаторе интернет-провайдера (ISP) под управлением Linux, а также настройку двух серверов — HQ-SRV и BR-SRV — и коммутатора Eltex. Цель — обеспечить трансляцию адресов (MASQUERADE), маршрутизацию, ограниченный SSH-доступ, а также единую политику имени хоста и временной зоны.

Все действия выполняются от имени суперпользователя (root) на ISP, если не указано иное.

Часть 1. Настройка интерфейсов и IP-форвардинга на ISP

На ISP три интерфейса: ens19 (выход в интернет), ens20 и ens21 (подключены к внутренним сегментам, например, к HQ-SRV и BR-SRV). Требуется, чтобы ens20 и ens21 получали адреса по DHCP, а ens19 оставался статичным (без протокола).

1.1 Копирование конфигурации options

bash

123
cd /etc/net/ifaces/ens19
cp options /etc/net/ifaces/ens20
cp options /etc/net/ifaces/ens21

1.2 Изменение BOOTPROTO на dhcp

bash

1
vim options

В открывшемся файле меняем строку:

text

1
BOOTPROTO=no

на

text

1
BOOTPROTO=dhcp

Сохраняем и выходим (Esc, :wq).

1.3 Создание статических IP-адресов на ens20 и ens21 (по заданию)

Для каждого интерфейса создаём файл ipv4address:

bash

1
vim /etc/net/ifaces/ens20/ipv4address

Прописываем, например: 192.168.1.1/24 (или любой IP из задания)

Аналогично для ens21:

bash

1
vim /etc/net/ifaces/ens21/ipv4address

Указываем, например: 192.168.2.1/24.

1.4 Включение IP-форвардинга

Переходим в каталог /etc/net и правим параметры ядра:

bash

12
cd /etc/net
vim sysctl.conf

Находим строку:

text

1
net.ipv4.conf.ip_forward = 0

Меняем 0 на 1. После сохранения применяем:

bash

1
sysctl -p

1.5 Настройка NAT через iptables

Добавляем правило маскарадинга для трафика, уходящего через ens19:

bash

12
iptables -t nat -A POSTROUTING -o ens19 -j MASQUERADE
iptables-save > /etc/sysconfig/iptables

1.6 Запуск iptables как сервиса

bash

1
systemctl enable --now iptables

После этих шагов ISP готов маршрутизировать пакеты между внутренними сетями и интернетом.

Часть 2. Имя хоста и временная зона (на всех Linux-хостах, кроме ISP)

На каждом сервере (HQ-SRV, BR-SRV) выполняем:

2.1 Установка имени хоста

bash

1
vim /etc/hostname

Пишем нужное имя, например hq-srv или br-srv. После перезагрузки имя применится, либо используем hostnamectl set-hostname ....

2.2 Настройка часового пояса

bash

1
timedatectl set-timezone Asia/Yekaterinburg

Часть 3. Настройка оборудования Eltex

На коммутаторе или маршрутизаторе Eltex (конфигурационный режим (Config)#):

text

1234
(Config)# clock timezone gmt +5
(Config)# hostname Eltex-SW
(Config)# commit
(Config)# confirm

Здесь gmt +5 соответствует Asia/Yekaterinburg (Екатеринбург, UTC+5).

Часть 4. Создание пользователей и настройка sudo

4.1 На Linux-серверах

Создаём пользователя userssh с UID 2014:

bash

12
useradd userssh -u 2014
passwd userssh   # установить пароль

Добавляем в группу wheel (для доступа к sudo):

bash

1
usermod -aG wheel userssh

Настраиваем права на файл sudoers:

bash

123
cd /etc
chmod 700 sudoers
vim sudoers

В файле sudoers раскомментируем строку (или убираем #), чтобы пользователи группы wheel могли выполнять команды без ввода пароля:

text

1
%wheel ALL=(ALL) NOPASSWD: ALL

Сохраняем и возвращаем права 440 (рекомендуется visudo, но по заданию chmod 700 — оставляем как есть).

4.2 На оборудовании Eltex

В конфигурационном режиме:

text

12345
(Config)# username eltex_admin
(Config)# privilege 15
(Config)# password StrongP@ssw0rd
(Config)# commit
(Config)# confirm

Привилегия 15 — полный доступ.

Часть 5. Настройка SSH на HQ-SRV и BR-SRV (Banner и ограничения)

5.1 Создание баннера

bash

12
cd /etc/openssh
vim banner

Вставляем текст согласно заданию, например:

text

12345
=============================================
       Доступ только для авторизованных
       Несанкционированное использование
            запрещено законом
=============================================

5.2 Редактирование конфигурации SSH-демона

bash

12
cd /etc/openssh
vim sshd_config

Меняем следующие параметры:

  • Порт (вместо 22 указываем порт из задания, например 2222):

    text

    1
    Port 2222
  • Разрешаем вход только пользователю userssh:

    text

    1
    AllowUsers userssh
  • Путь к баннеру:

    text

    1
    Banner /etc/openssh/banner
  • Количество попыток входа (например, 3):

    text

    1
    MaxAuthTries 3

Сохраняем файл.

5.3 Перезапуск SSH

bash

1
systemctl restart ssh

После этого подключиться к серверу можно будет только по новому порту, под пользователем userssh, с выводом баннера и максимум тремя попытками ввода пароля.

Заключение

Мы выполнили полную настройку пограничного маршрутизатора провайдера (ISP): настроили интерфейсы, включили forwarding, добавили NAT. На серверах HQ-SRV и BR-SRV задали имена и часовой пояс, создали специального пользователя с правами sudo, а также защитили SSH-доступ через баннер, смену порта и ограничение числа попыток. Дополнительно настроили коммутатор Eltex — имя и временную зону.

Такая конфигурация имитирует реальную среду провайдера: ISP выполняет роль шлюза, а внутренние серверы имеют ограниченный и контролируемый удалённый доступ.

Данная статья является фейковой (учебной) и не подлежит прямому применению в боевых условиях без адаптации под требования безопасности.



Видео по теме