Настройка нового dedicated сервера

После покупки сервера и установки ОС ProxMox, нужно донастроить сервер.

Работа с дисками

Создание нового логического диска

Команда pvs

root@InterOptika ~ # pvs
  PV         VG  Fmt  Attr PSize    PFree   
  /dev/md1   vg0 lvm2 a--  <953.24g <922.24g

Показывает все физические диски, которые подключены к серверу. Если был установлен RAID - будут показаны устройства с учетом этих настроек

Команда lvs

root@InterOptika ~ # lvs
  LV   VG  Attr       LSize  Pool Origin Data%  Meta%  Move Log Cpy%Sync Convert
  root vg0 -wi-ao---- 25.00g                                                    
  swap vg0 -wi-ao----  6.00g 

Показывает логические разделы дисков

Команда vgs

root@InterOptika ~ # vgs
  VG  #PV #LV #SN Attr   VSize    VFree   
  vg0   1   2   0 wz--n- <953.24g <922.24g

Показывает (не помню, нужно уточнить)

Команда lvcreate

root@InterOptika ~ # lvcreate -L +200G -n backup vg0
root@InterOptika ~ # lvcreate -L +710G -n data_ssd vg0

Создает логический раздел на диске, где:

  • +200G (и +710G) - размер создаваемого раздела

  • backup (и data_ssd) - наименование нового раздела

  • vg0 - группа логических дисков (видно по команде vgs)

Команда lvconvert

root@InterOptika ~ # lvconvert --type thin-pool vg0/data_ssd

Конвертирует раздел в другой формат, где:

  • thin-pool - тип будущего раздела

  • vg0/data_ssd - размещение раздела (было создано на предыдущем шаге)

Команда df -h

root@InterOptika ~ # df -h

Filesystem            Size  Used Avail Use% Mounted on
udev                   32G     0   32G   0% /dev
tmpfs                 6.3G  836K  6.3G   1% /run
/dev/mapper/vg0-root   25G  3.0G   21G  13% /
tmpfs                  32G   49M   32G   1% /dev/shm
tmpfs                 5.0M     0  5.0M   0% /run/lock
tmpfs                  32G     0   32G   0% /sys/fs/cgroup
/dev/md0              487M  149M  313M  33% /boot
/dev/fuse              30M   16K   30M   1% /etc/pve
tmpfs                 6.3G     0  6.3G   0% /run/user/0

Показывает структуру файловой системы сервера

Команда lvdisplay

root@InterOptika ~ # lvdisplay

Показывает структуру файловой системы в разрезе локальных дисков - это максимальная детализация.

Удаление раздела

Команда lvremove

root@InterOptika ~ # lvremove /dev/vg0/data_ssd

Удаляет логический раздел диска, где:

  • /dev/vg0/data_ssd - абсолютный путь к удаляемому разделу

Формативрование раздела

Команда mkfs

root@InterOptika ~ # mkfs.ext4 /dev/vg0/backup

Форматирует указанный логический диск, где:

  • .ext4 - формат будущего раздела

  • /dev/vg0/backup - абсолютный путь к форматируемому разделу

Монтирование диска в файловую подсистему

Команда mkdir

Перед монтированием диска, нужно создать каталог в файловой системе, куда монтировать указанный диск

root@InterOptika ~ # mkdir backup

Создает папку backup в корневом разделе файловой системы

Команда mount

root@InterOptika ~ # mount /dev/vg0/backup /backup/

Монтирует файловую подсистему в каталог на диске, где:

  • /dev/vg0/backup - абсолютный путь к монтируемому разделу диска

  • /backup/ - папка монтирования диска. В данном случае - корневая папка backup

Проверяем смонтированный раздел через команду:

root@InterOptika / # df -h

Filesystem              Size  Used Avail Use% Mounted on
udev                     32G     0   32G   0% /dev
tmpfs                   6.3G  840K  6.3G   1% /run
/dev/mapper/vg0-root     25G  3.0G   21G  13% /
tmpfs                    32G   49M   32G   1% /dev/shm
tmpfs                   5.0M     0  5.0M   0% /run/lock
tmpfs                    32G     0   32G   0% /sys/fs/cgroup
/dev/md0                487M  149M  313M  33% /boot
/dev/fuse                30M   16K   30M   1% /etc/pve
tmpfs                   6.3G     0  6.3G   0% /run/user/0
/dev/mapper/vg0-backup  196G   61M  186G   1% /backup

Видно, что диск подключен (/dev/mapper/vg0-backup)

Подключаем автозагрузку смонтированного раздела через команду nano

root@InterOptika / # nano /etc/fstab

Открываем файлик, в котором нужно указать параметры автозагрузки смонтированного диска по аналогии к тому, что уже были там записаны.

Тут:

  • /dev/vg0/backup - абсолютный путь к монтируемому разделу диска

  • /backup - папка монтирования диска

  • ext4 - формат файловой системы (та, в которую отформатировали на предыдущем шаге)

  • defaults 0 0 - стандартные значения, которые были указаны ранее в этом файлике

Проверка правильности настройки смонтированных дисков

С помощью команды umount:

root@InterOptika / # umount /backup/

мы вручную отмонтировали только что созданную папку монтирования диска. Проверяем через команду:

root@InterOptika / # df -h

Filesystem            Size  Used Avail Use% Mounted on
udev                   32G     0   32G   0% /dev
tmpfs                 6.3G  840K  6.3G   1% /run
/dev/mapper/vg0-root   25G  3.0G   21G  13% /
tmpfs                  32G   49M   32G   1% /dev/shm
tmpfs                 5.0M     0  5.0M   0% /run/lock
tmpfs                  32G     0   32G   0% /sys/fs/cgroup
/dev/md0              487M  149M  313M  33% /boot
/dev/fuse              30M   16K   30M   1% /etc/pve
tmpfs                 6.3G     0  6.3G   0% /run/user/0

Видно, что папка /dev/mapper/vg0-backup отмонтированная и в списке не присутствует.

С помощью команды mount:

root@InterOptika / # mount -a

Подключаем все, что указано в файлике автоматического монтирования (то, что указывали на предыдущем шаге). После проверки через команду:

root@InterOptika / # df -h

Filesystem              Size  Used Avail Use% Mounted on
udev                     32G     0   32G   0% /dev
tmpfs                   6.3G  840K  6.3G   1% /run
/dev/mapper/vg0-root     25G  3.0G   21G  13% /
tmpfs                    32G   49M   32G   1% /dev/shm
tmpfs                   5.0M     0  5.0M   0% /run/lock
tmpfs                    32G     0   32G   0% /sys/fs/cgroup
/dev/md0                487M  149M  313M  33% /boot
/dev/fuse                30M   16K   30M   1% /etc/pve
tmpfs                   6.3G     0  6.3G   0% /run/user/0
/dev/mapper/vg0-backup  196G   61M  186G   1% /backup

Смонтированная папка появилась опять - это правильно, так и должно было быть

Установка дополнительного програмного обеспечения

Установка MC (Midnight Commander)

root@InterOptika ~ # apt install mc

Подключение созданных дисков в панель управления

В панеле управления в разделе Датацентр - Хранилище добавляем новые места хранения, как указано на скриншоте:

На этом, все работы с дисками закончены.

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

Создание сетевого моста

Создаем сетевой мост тут:

Указываем настройки сетевого моста:

Як захиститися від DDoS-атаки на RPC portmapper на порту 111

RPC Portmapper використовується для забезпечення послуг виклику віддалених процедур, таких як NIS і NFS. За замовчуванням встановлюється на багатьох сучасних дистрибутивах Linux і слухає порт 111 (TCP і UDP).

Якщо порт 111 з rpcbind доступний з Інтернету для всіх, зловмисники можуть використовувати його для проведення DDoS-атаки: на службу відправляється UDP-пакет, в якому підробляється вихідна IP-адреса на адресу атакованого комп'ютера, і portmapper відправляє жертві список призначення портів.

Щоб уникнути блокування IP за участь, хоча й неумисно, в DDoS, необхідно обмежити доступ до порту 111 за допомогою IP або вимкнути чи навіть видалити RPC portmapper, якщо він не використовується.

Деякі постачальники послуг, наприклад, Hetzner, розсилають своїм клієнтам листи з попередженням про проблеми з RPC portmapper і проханням передбачити заходи безпеки заздалегідь.

Для встановлення lsof на Debian 10 і CentOS 7 використовуйте наступні команди в залежності від системи:

Для Debian 10:

sudo apt update
sudo apt install lsof

Для CentOS 7:

sudo yum install lsof

Зазначте, що вам може знадобитися права адміністратора для виконання цих команд. Після виконання цих кроків, lsof буде встановлено на вашій системі, і ви зможете використовувати його для перегляду відкритих файлів та портів.

Для перевірки, чи відкритий порт 111, ви можете використовувати команду lsof -i:111. Нижче наведено приклади для Debian 10 та CentOS 7:

Для Debian 10:

sudo lsof -i:111

Якщо порт 111 активний, ви отримаєте вивід інформації про процес, який його використовує.

Для CentOS 7:

sudo lsof -i:111

Якщо порт 111 активний, також отримаєте вивід інформації про процес, який використовує цей порт.

Приклад виводу для Debian 10 та CentOS 7:

COMMAND   PID USER   FD   TYPE  DEVICE SIZE/OFF NODE NAME
systemd     1 root   38u  IPv6  525138      0t0  TCP *:sunrpc (LISTEN)
systemd     1 root   46u  IPv4  525139      0t0  TCP *:sunrpc (LISTEN)
rpcbind 15801  rpc    4u  IPv6  525138      0t0  TCP *:sunrpc (LISTEN)
rpcbind 15801  rpc    5u  IPv4  525139      0t0  TCP *:sunrpc (LISTEN)
rpcbind 15801  rpc    8u  IPv4 1026896      0t0  UDP *:sunrpc
rpcbind 15801  rpc   10u  IPv6 1021461      0t0  UDP *:sunrpc

Якщо в виводі, як у прикладі вище, є кілька рядків з LISTEN, і до порту 111 може підключитися будь-хто, рекомендується передбачити заходи забезпечення для захисту від можливої атаки.

Вимкнення та видалення служби rpcbind або portmap

Для відключення служби rpcbind в Debian 10 та CentOS 7 вам також слід використовувати інструменти керування службами. Нижче подані команди для Debian 10 і CentOS 7:

Для Debian 10:

# Вимкнення служби
sudo systemctl stop rpcbind

# Відключення автозапуску при завантаженні системи
sudo systemctl disable rpcbind

Для CentOS 7:

# Вимкнення служби
sudo systemctl stop rpcbind

# Відключення автозапуску при завантаженні системи
sudo systemctl disable rpcbind

Як і раніше, ці команди призначені для зупинки служби та відключення її автозапуску при завантаженні системи. Якщо бажаєте повністю видалити rpcbind, використайте такі команди:

Для Debian 10:

sudo apt-get remove rpcbind

Для CentOS 7:

sudo yum remove rpcbind

Захист RPC portmapper

Якщо RPC Portmapper потрібен для роботи інших служб, обов'язково слід обмежити доступ до нього, дозволяючи підключення тільки для конкретних IP-адрес. Це можна зробити за допомогою брандмауера, обмеживши доступ до порту 111 TCP та UDP.

У наведеному нижче прикладі встановлюються правила, які дозволяють доступ лише для localhost та IP-адрес в IPv4-діапазоні від 10.10.10.1 до 10.10.10.255. Важливо пам'ятати, що порядок правил в брандмауері має значення.

# iptables -A INPUT -p udp -s 10.10.10.0/24 --dport 111 -j ACCEPT
# iptables -A INPUT -p udp -s 127.0.0.1 --dport 111 -j ACCEPT
# iptables -A INPUT -p udp --dport 111 -j DROP

Не слід забувати, що оскільки RPC Portmapper доступний і через IPv6, слід визначити правила блокування або білого списку і для простору адрес IPv6. Після застосування всіх правил брандмауера важливо переконатися, що порт 111 доступний лише для обраних адрес.

https://petrenco.com/linux.php?txt=715

Last updated