Как стать автором
Обновить

Комментарии 17

В файле системной конфигурации нужно убрать знак комментария "#" вначале строки "net.ipv4.ip_forward=1", чтобы разрешить нашему серверу выполнять роль прокси

И все начинают маршрутизировать трафик через ваш сервер, без ограничений. Запрещающих правил у вас не вижу.

Сервер Linux Debian 11

Актуальная версия дебиана - 12.11.0 на данный момент.

Зачем использовать Debian 11? Debian 12 выпущен около 2-х лет назад.

Дома у себя - согласен. Но на хостингах обычно идут не самые последние релизы ОС.

Это легко решается редактированием sources.list с последующим apt update && apt dist-upgrade

зачем? чем 11 дебиан плох? какого функционала нам не хватает? зачем нам тратить своё время на лишние действия?

Дело не в нехватке функционала. Использование актуальной версии дистрибутива сделало бы инструкцию актуальной на более долгое время. Насколько я помню до конца поддержки Debian 11 осталось около года.

А при чём здесь VPS?

  1. Давно уже iptables заменили на nftables

  2. Для конвертации ext4 в btrfs есть btrfs-convert

  3. Почему не использовать юнит systemd для запуска мониторинга? после перезагрузки предлагаете вручную снова запускать?

  4. Рекомендую использовать снимки в режиме только для чтения: btrfs subvolume snapshot -r

про мониторинг - вот это хорошо подмечено, пропустил его автозапуск, добавляю в гайд

По настройке fail2ban пара комментариев:

  1. Желательно заигнорить айпишник станции, с которой ходим на vps.

  2. Производительность может очень сильно отличаться в зависимости от способа бана. У меня fail2ban стартовал минут 5 при 1500 забаненных айпишниках с близкой к вашей конфигурацией и банами по-дефолту через rich rules, переключил на ipset - время запуска сократилось до пары секунд.

sudo dnf install fail2ban
sudo vi /etc/fail2ban/jail.local
    # приводим к виду:
    [DEFAULT]
    bantime = 1mo
    findtime = 3600
    maxretry = 2
    ignoreip = 127.0.0.0/8 ::1 $MY_IP
    [sshd]
    enabled = true
    filter = sshd
    mode = aggressive
    port = 22

# переключаем на баны через ipset
sudo vi /etc/fail2ban/jail.d/00-firewalld.conf
    # конфиг, который был у меня по-умолчанию:
    [DEFAULT]
    banaction = firewallcmd-rich-rules
    banaction_allports = firewallcmd-rich-rules

    # приводим к виду:
    [DEFAULT]
    banaction = firewallcmd-ipset
    banaction_allports = firewallcmd-ipset

    # названия действий для iptables/nftables можно подсмотреть где-то тут:
    # sudo ls -la /etc/fail2ban/action.d/

# чтобы не слетало правило фильтрации по ipset при
# выполнении sudo firewall-cmd --reload
sudo vi /etc/firewalld/firewalld.conf
    # находим строку
    FlushAllOnReload=yes
    # заменяем на
    FlushAllOnReload=no

sudo systemctl restart firewalld
sudo systemctl enable --now fail2ban

sudo iptables -L
    # тут увидим новое правило:
    Chain INPUT (policy ACCEPT)
    target     prot opt source               destination
    REJECT     tcp  --  anywhere             anywhere             multiport dports ssh match-set f2b-sshd src reject-with icmp-port-unreachable

sudo fail2ban-client status sshd
sudo ipset list f2b-sshd
    # два способа посмотреть список банов

(это на centos9 stream, но идея должна быть понятна)

+ добавил бы про отключение логина по ssh для пользователя root (как минимум)

Интересный кейс! Спасибо, изучу

Гайд - это, я так понимаю, от английского guide (руководство)
т.е. статья называется:
"руководство на виртуальный частный сервер (VPS) с нуля"
Это вообще по-русски написано?

Давайте тогда, как сегодня модно:
"Обзор на VPS с нуля"

Используя программу Putty и предоставленные IP адрес и пароль, нужно войти на сервер

Как насчет перевода SSH логина на ключи? Вроде и само собой разумеющееся действие, но инструкция претендует на подробность, а о такой важной штуке ни слова.

Ставил Wireguard на VPS в докер-контейнере. Две недели включал-выключал по 20 раз в день. Один раз ошибся (скачал фильм с торрента из под VPN). VPS-хостеру прилетело письмо из калифорнийской юридической фирмы с угрозами гигантских штрафов и, кажется, уголовного преследования.

VPS-хостер прислал мне письмо, состоящее из оскорблений и обвинений в заработке миллиардов на скачивании торрентов. И что они теперь мой аккаунт блокируют, VPS уничтожают, предоплату за VPS оставляют себе. Кстати, у них был тариф для профессиональных мошенников за 200$ в месяц (я использовал дешевый, для "немошенников").

В статье не нашел как с этим риском бороться. Говорят роутинг помогает.

При составлении своей инструкции я потратил где-то пол дня на изучение возможностей блокировок p2p траффика, пробовал блочить по портам и по классу трафика на L7. На моей практике эти подходы оказались неэффективны. Можно "задушить" торренты ограничением числа подключений - в p2p сетях высокая скорость передачи формируется как раз за счёт подключения к огромному числу пиров - этот подход должен сработать, но я для себя его пробовать не стал т.к. мой хостер, вроде как, лоялен к таким делам и мне достаточно простого QoS - чтобы скачка торрентов на домашнем компе никак не мешала просмотру HD бесплатных кинотеатров с другого устройства - с этим мой конфиг (в этом гайде) вроде как, справляется.

Зарегистрируйтесь на Хабре, чтобы оставить комментарий

Публикации