1

525

GoldNuts
GoldNuts

Форумец

Offline

Сообщений: 9

Регистрация: 02.04.2024 в 22:06

02.04.2024 в 22:11

# astra-2024-demo
## Настройка имен
Зайти в файл - nano /etc/hosts - Файл будет иметь вид
127.0.0.1 localhost
127.0.0.1 astra
astra – необходимо изменить в соответствии с таблицей
Зайти в файл - nano /etc/hostname – файл будет иметь вид
astra – необходимо изменить в соответствии с таблицей
на машине которая будет использоваться в качестве сервера имен (dns) написать hq-srv.hq.work
после проделанных действий машину необходимо перезагрузить
---
## Настройка Сети
nano /etc/network/interfaces – в этом файле необходимо добавить записи
auto eth0 – номер интерфейса
iface eth0 inet static/dhcp – в зависимости от типа адреса (в случае если выбран dhcp
следующие записи не нужны)
address 10.10.10.10 – ip адрес в соответствии с таблицей
netmask 255.255.255.0 – в соответствии с таблицей
gateway 10.10.10.1 – если есть\
#### Далее мы включаем и запускаем службу resolvconf:
sudo apt install resolvconf
$ sudo systemctl enable resolvconf.service
$ sudo systemctl start resolvconf.service
Затем мы можем проверить состояние службы:
$ sudo systemctl status resolvconf.service
Зайти в файл - Nano /etc/resolv.conf – где необходимо прописать
Nameserver 172.16.100.10
Nameserver 8.8.8.8
### Следующие действия выполняются на роутерах
Зайти в файл - nano /etc/network/interfaces
HQ-R:
auto <название gre-туннеля>(любое, кроме gre0 и tunl0)

iface <название gre-туннеля> inet tunnel

address <IPv4-адрес GRE-туннеля для HQ-R>

netmask <IPv4-маска GRE-туннеля, не 30, а 255.255.255.252>

mode gre

local <IP-адрес HQ-R который смотрит во внешнюю сеть>

endpoint <IP-адрес BR-R так же смотрящий во внешнюю сеть>

ttl <64 или 255>
BR-R:
auto <название gre-туннеля>(любое, кроме gre0 и tunl0)

iface <название gre-туннеля> inet tunnel

address < IPv4-адрес GRE-туннеля для BR-R >

netmask <IPv4-маска GRE-туннеля, не 30, а 255.255.255.252>

mode gre

local <IP-адрес BR-R>

endpoint <IP-адрес HQ-R>

ttl <64 или 255>
сохранить и выйти
Systemctl restart networking
---
## Включить пересылку пакетов (выполняется только на роутерах)
Зайти в файл - Nano /etc/sysctl.conf
Найти строчку «net.ipv4.ip_forward=1» и раскоментировать
sudo sysctl -p
Systemctl restart networking
---
## Установка frr
apt-cdrom add
apt update
apt install curl -y
mkdir /usr/share/keyrings – создать каталог для ключей
Установить ключи - curl –s https://deb.frrouting.org/frr/keys.gpg | sudo tee /usr/share/keyrings/frrouting.gpg > /dev/null
Зайти в файл - nano /etc/apt/sources.list – в нем написать следующее
deb [signed-by=/usr/share/keyrings/frrouting.gpg] https://deb.frrouting.org/frr stretch frr-stable
Обновляемся и устанавливаем frr
apt update && apt install frr
---
## Настройка frr
nano /etc/frr/daemons
ospf = no – исправить на yes
ospf6d = no – исправить на yes
systemctl restart frr
Vtysh
configure
ip forwarding
int eth0 (интерфейс, который смотрит к конечному пользователю)
Ip ospf passive
Router ospf
Network 10.0.0.0/30 (подсеть gre туннеля и все подсети которые знает роутер кроме сетей которые смотрят на isp) area 0
Повторить для всех подсетей которые знает роутер
end
write
Повторить на всех роутерах
Для того чтобы проверить необходимо написать команду
show ip route
Также после настройки на всех роутерах все узлы должны пинговаться друг с другом.
---
## Установка и настройка dhcp
apt-cdrom add
apt install isc-dhcp-server –y
nano /etc/default/isc-dhcp-server
INTERFACES = “eth0” – указать интерфейс смотрящий во внутреннюю сеть.
Выйти и сохранить
nano /etc/dhcp/dhcp.conf
раскомментировать authoritative
создать запись типа
subnet 172.16.100.0 netmask 255.255.255.0 {
range 172.16.100.10 172.16.100.50;
option routers 172.16.100.1;} – диапазон раздачи адресов
создать запись типа
host hq-srv {
hardware Ethernet 00:00:00:00:00:00; - mac адрес интерфейса хоста
fixed-address 172.16.100.10;} – выдача фиксированного адреса
сохранить и выйти
проверка файлов на ошибки
dhcpd -t -cf /etc/default/isc-dhcp-server
dhcpd -t -cf /etc/dhcp/dhcp.conf
systemctl restart isc-dhcp-server
---
## Создание пользователей
adduser username (имя пользователя)
---
## Установка iperf3 и замер пропускной способности
apt-cdrom add
apt install debian-archive-keyring dirmngr
nano /etc/apt/sources.list - добавить ссылку на репозиторий Debian:
deb https://archive.debian.org/debian/ stretch main contrib non-free
apt update
apt install iperf3
Iperf3 работает в клиент-серверном режиме.
На ISP прописать:
iperf3 -s -запустить серверный режим
На HQ-R:
script -c ‘iperf3 -c 10.10.10.1(IPv4 ISP, смотрящий в сторону HQ-R) –-get-server-output' iperf3logfile.txt (файлжурнала)
cat iperf3_logfile.txt
#### Так же существует более простой способ установить iperf 1 версии
apt-cdrom add
apt install iperf
---
## Настройка SSH
### На сервере ssh
apt-cdrom add
apt update && apt install ssh
nano /etc/ssh/sshd_config
Найти строку #Port 22, раскоментировать и изменить на Port 2222
Найти строки #PermitRootLogin prohibit, раскоментировать изменить на PermitRootLogin no
AllowTCPForwarding yes
GatewayPorts yes
добавить строку
AllowUsers admin
Сохранить и выйти
systemctl enable ssh
systemctl restart ssh
### на hq-r
Создать файл
nano /etc/nat
в этом файле написать следующее
#!/bin/sh
iptables -t nat -A PREROUTING -i eth2 -p tcp --dport 22 -j DNAT --to-destination 172.16.100.10:2222
сохранить и выйти
chmod +x /etc/nat
./etc/nat
nano /etc/network/interfaces
в самом низу пишем
pre-up /etc/nat
сохранить и выйти
перезагрузить машину
### ограничение доступа для CLI
### на сервере ssh
файл: sudo nano /etc/hosts.deny и запретить все подключения от CLI:
SSHD: 30.30.30.10
SSHD: 172.16.200.10
Чтобы разрешить подключения со всех устройств, кроме CLI нужно зайти в файл: sudo nano /etc/hosts.allow
SSHD: 172.16.100.0/26
SSHD: 192.168.10.0/28
SSHD: 10.10.10.0/24
SSHD: 20.20.20.0/24
---
## Создание Backup скриптов
создадим простой bash-скрипт: sudo nano backup-script.sh
#!/bin/sh
backup_files="/home /etc /root /boot /opt"
dest="/home/admin "
day=$(date +%A)
hostname=$(hostname -s)
archive_file="$hostname-$day.tgz"
echo "Backing up $backup_files to $dest/$archive_file"
date
echo
sudo tar -cvpz $backup_files | ssh [email protected] –p 2222 "( cat > $dest/$archive_file)" (На BR-R убрать часть –p 2222)
echo
echo "Backup finished"
date
сохранить и выйти
chmod +x backup-script.sh
./backup-script.sh - проверка работы скрипта
### на hq-srv
cd /home/admin
ls
tar -tf HQ-R-14.03.24.tar.gz | less
---
## Настройка синхронизации времени NTP сервер
Установить chrony на всех устройствах, кроме ISP – sudo apt install chrony
Разрешить автозапуск и запустить сервис:
sudo systemctl enable chrony –now
Отобразить текущее время можно командой: date
Настроить московский часовой пояс (UTC +3):
timedatectl set-timezone Europe/Moscow
### HQ-R:
Открыть файл с настройками: sudo nano /etc/chrony/chrony.conf
Удалить пул по умолчанию (pool 2.centos.pool.ntp.org iburst).
Добавить сервер Loopback интерфейса HQ-R, как
источника сервера времени:
server 127.0.0.1 iburst prefer
Стратум со значением 5
local stratum 5
где:
pool — указывает на выполнение синхронизации с пулом серверов.
server — указывает на выполнение синхронизации с сервером.
iburst — отправлять несколько пакетов (повышает точность).
prefer — указывает на предпочитаемый сервер.
server 127.0.1.1 — локальный сервер, который будет брать время из своих системных часов.
Указать все подсети и сети, с которых разрешены соединения с машиной, работающей в качестве сервера NTP:
allow 172.16.100.0/26
allow 192.168.10.0/28
allow 172.16.200.0/24
allow 10.10.10.0/24
allow 20.20.20.0/24
allow 30.30.30.0/24
Разрешить доступ по IPv6 также всем сетям и подсетям:
allow 2000:/122
allow 2000:168::0/124
allow 2001:16::/120
allow 2001:10::/120
allow 2001:20:://120
allow 2001:30:://120
в данном примере мы разрешаем синхронизацию времени с нашим сервером для узлов сети 192.168.0.0/255.255.255.0
Перезапустить сервис: sudo systemctl restart chrony
date MMDDhhmmCCYY.ss, где MM — месяц, DD — день месяца, hh — часы, mm — минуты, CCYY — год, ss — секунды
Тестирование
Проверить состояние получения эталонного времени можно командой:
chronyc sources
В выводе должно быть примерно, следующее:
^? 127.127.1.0 0 6 0 - +0ns[ +0ns] +/- 0ns
### Настройка клиентов NTP:
Установка Chrony: sudo apt-get install chrony
После установки открыть /etc/chrony.conf: sudo nano /etc/chrony/chrony.conf
В качестве сервера оставить только сервер HQ-R:
#pool 2.debian… -удалить
server 172.16.100.1 iburst
Разрешаем автозапуск сервиса: sudo systemctl enable chrony
Перезапустить сервис: sudo systemctl restart chrony
Проверить состояние работы и отслеживание времени можно командами:
chronyc sources и chronyc tracking
### CLI:
В правом нижнем углу нажать значок «✩», далее в пуске выбрать «Панель управления». Зайти в «Панель управления» и здесь выбрать «Система» , а в ней «Менеджер пакетов Synaptic». Перейдя в менеджер пакетов, нажать на лупу «Поиск». В поле поиска написать «chrony» и нажать «Поиск». Найдутся некоторые пакеты, выбрать самый первый из них «chrony» щелчком ЛКМ и нажатием ПКМ «Отметить для установки». В меню выбора нажать «Применить». После установки пакета «chrony» вернуться в «Панель управления»  «Система» и запустить приложение «Синхронизация времени». При выбранном в блоке «Сервисы» «chrony» в блоке «Серверы и пулы» дважды щёлкнуть по дефолтному пулу. Стереть имя сервера ntp и задать вместо него IP-адрес HQ-R, например 172.16.100.1.
---
## Настройка dns и домена посредством freeipa
apt update
apt install astra-freeipa-server
krb5_newrealm
astra-freeipa-server –o
Переходим на CLI открываем браузер и пишем https://hq-srv.hq.work – имя машины на которой установлен freeipa

Наверх