Перейти к содержанию

HQ RTR

HQ-RTR (Linux)

Настройки сети

Отредактировать /etc/net/sysctl.conf:

net.ipv4.ip_forward = 1

Интерфейсы

ISP:

options:

BOOTPROTO=static
TYPE=eth
CONFIG_WIRELESS=no
CONFIG_IPV4=yes
DISABLED=no
NM_CONTROLLED=no
SYSTEMD_BOOTPROTO=static
SYSTEMD_CONTROLLED=no

ipv4address:

172.16.1.2/28

ipv4route:

default via 172.16.1.1

HQ-SRV + HQ-CLI + VLAN 999 (Условный enp6s20):

options:

BOOTPROTO=static
TYPE=eth
CONFIG_WIRELESS=no
CONFIG_IPV4=yes
DISABLED=no
NM_CONTROLLED=no
SYSTEMD_BOOTPROTO=static
SYSTEMD_CONTROLLED=no

enp6s20.100 (hq-srv):

options:

BOOTPROTO=static
TYPE=vlan
CONFIG_WIRELESS=no
CONFIG_IPV4=yes
DISABLED=no
NM_CONTROLLED=no
SYSTEMD_BOOTPROTO=static
SYSTEMD_CONTROLLED=no
VID=100
HOST=enp6s20 # Адрес родительского (основного) интерфейса.

ipv4address:

172.16.1.1/27

enp6s20.200 (hq-cli):

options:

BOOTPROTO=static
TYPE=vlan
CONFIG_WIRELESS=no
CONFIG_IPV4=yes
DISABLED=no
NM_CONTROLLED=no
SYSTEMD_BOOTPROTO=static
SYSTEMD_CONTROLLED=no
VID=200
HOST=enp6s20 # Адрес родительского (основного) интерфейса.

ipv4address:

172.16.2.1/28

enp6s20.999 (vlan 999):

options:

BOOTPROTO=static
TYPE=vlan
CONFIG_WIRELESS=no
CONFIG_IPV4=yes
DISABLED=no
NM_CONTROLLED=no
SYSTEMD_BOOTPROTO=static
SYSTEMD_CONTROLLED=no
VID=999
HOST=enp6s20 # Адрес родительского (основного) интерфейса.

ipv4address:

172.16.9.1/29

Перезапускаем службу:

systemctl restart network

IPTables

iptables -t nat -A POSTROUTING -o <Интерфейс ISP> -j MASQUERADE
iptables-save >> /etc/sysconfig/iptables
systemctl enable --now iptables

DHCP

Копируем стандартную конфигурацию:

cp /etc/dhcp/dhcpd.conf.sample /etc/dhcp/dhcpd.conf

Приводим к следующему виду:

ddns-update-style none;

subnet 192.168.2.0 netmask 255.255.255.240 {
        option routers                  192.168.2.1;
        option subnet-mask              255.255.255.240;

        option nis-domain               "";
        option domain-name              "au-team.irpo";
        option domain-name-servers      192.168.1.2;

        range dynamic-bootp 192.168.2.2 192.168.2.15;

        default-lease-time 21600;
        max-lease-time 43200;
}

Редактируем /etc/sysconfig/dhcpd. Указываем название интерфейса, который будет слушать сервер DHCP:

DHCPARGS=enp6s20.200

Включаем службу:

systemctl enable --now dhcpd

GRE + OSPF

Создаём папку /etc/net/ifaces/tunnel1/ и конфигурируем:

options:

TYPE=iptun
CONFIG_IPV4=yes
DISABLED=no
TUNTYPE=gre
TUNLOCAL=172.16.1.2
TUNREMOTE=172.16.2.2
TUNTTL=32
TUNOPTIONS='ttl 32'
TUNMTU=1426
HOST=enp6s19 # Адрес физического интерфейса, что идёт в сторону ISP.

ipv4address:

172.16.4.1/28

Перезапускаем службу:

systemctl restart network

Редактируем /etc/frr/daemons. Включаем под-службу ospfd:

ospfd=yes

Включаем службу:

systemctl enable --now frr

Входим в интерактивный режим. Команда vtysh:

conf t
hostname hq-rtr.au-team.irpo
router ospf
> passive-interface default
> network 192.168.1.0 0.0.0.31 area 0
> network 192.168.2.0 0.0.0.15 aea 0
> network 192.168.9.0 0.0.0.7 area 0
> network 192.168.4.0 0.0.0.15 area 0
> exit
interface tunnel1
> ip ospf authentication
> ip ospf authentication-key aboba
> ip ospf network broadcast
> end
wr mem
exit # Выход из vtysh

Никогда не добавляйте сеть 172.16.0.0 (ISP) в OSPF - это ошибка.

Перезапускаем службу:

systemctl restart frr

Users

adduser net_admin

Смена пароля:

passwd net_admin
P@ssw0rd
P@ssw0rd

Утилита потребует ввести новый пароль и подтвердить (повторить) его.

Sudo

Переопределить настройки /etc/sudoers:

##
## User privilege access
##

net_admin ALL=(ALL) NOPASSWD: ALL

Добавить пользователя net_admin в группу wheel:

gpasswd -a net_admin wheel

Альтернативный способ. Отредактировать /etc/group подобным образом:

wheel:x:10:root,user,net_admin

Hostname

hostnamectl hostname hq-rtr.au-team.irpo

На Linux команда применяется сразу, но визуально увидеть можно только после повторного логина в ssh/пользователя.

Timezone

timedatectl set-timezone Europe/Moscow