Max
Понял, спасибо. Второй вопрос, тогда как заменить свой id? Слишком много где засветился, где нельзя (проверял по своему id)
Upd: понимаю что самое лёгкое перерегистрация, но это болезненно(есть куча групп/каналов). Или посоветуйте как менее болезненно перенести все нажитое в новый акк
✙ M Σ L O M Λ N I C ✙
А, тоесть цитировать сразу несколько цитат из других сообщений нельзя, это инструмент редактирования такой
✙ M Σ L O M Λ N I C ✙
Понял, спасибо, я то думал это все реплайные цитаты, а это внутренние
Nick
🛡 Мой сервер — моя крепость 🛡
Здравствуй, друг За этот год количество успешных атак на веб-сервисы достигло рекордной отметки. Это натолкнуло меня на написание этой статьи, в которой я хочу поделиться с тобой базовыми принципами обеспечения безопасности удаленного сервера. Это, на мой взгляд, минимум, который настоятельно рекомендую применить на любом Linux-сервере.
Для начала давай просканируем наш сервер через nmap и увидим, что у нас тут все печально:
sudo nmap -Pn твой IP
Ладно, тогда давай немного поправим это недоразумение, а именно — настроим iptables.
Отбросим пакеты с флагами SYN, FIN, RST, ACK, FIN, URG (Xmas Tree Scan) для минимизации информации, которую наш сервер будет светить в интернет по запросам:
sudo iptables -A INPUT -p tcp --tcp-flags SYN,FIN SYN,FIN -j DROP
sudo iptables -A INPUT -p tcp --tcp-flags SYN,RST SYN,RST -j DROP
sudo iptables -A INPUT -p tcp --tcp-flags ALL SYN,RST,ACK,FIN,URG -j DROP
sudo iptables -A INPUT -p tcp -i enp0s3 -m state --state NEW -m recent --set
Давай еще отключим ping. Многие посчитают это неуместным, но это будет полезно, если ты используешь свой сервер как VPN. Это поможет скрыть его от ботов. Когда-то из-за неотключенного ping сломали сайт FBI :D
echo "1" > /proc/sys/net/ipv4/icmp_echo_ignore_all
Настроим защиту от DoS с помощью корректировки таймаутов:
echo "1800" > /proc/sys/net/ipv4/tcp_keepalive_time
echo "0" > /proc/sys/net/ipv4/tcp_window_scaling
echo "0" > /proc/sys/net/ipv4/tcp_sack
Теперь настроим fail2ban для защиты от атак грубой силы (brute force). Начнем с установки и запуска демона:
sudo apt-get install fail2ban
sudo systemctl enable fail2ban
sudo systemctl start fail2ban
sudo cp /etc/fail2ban/jail.conf /etc/fail2ban/jail.local
sudo apt install unattended-upgrades
sudo dpkg-reconfigure -plow unattended-upgrades
Перезапускаем fail2ban:
sudo systemctl restart fail2ban
Теперь настроим сам SSH. Откроем конфиг:
nano /etc/ssh/sshd_config
Переключаемся на второй протокол, отключаем авторизацию root пользователя и сменим порт в строчке Port на свой:
# меняй на свой порт
Port 7252
# отключаем авторизацию root пользователя
PermitEmptyPasswords no
MaxAuthTries 3
# отключаем доступ к x серверу через SSH
X11Forwarding no
Теперь добавим наш новый порт в iptables:
sudo iptables -A INPUT -m state --state NEW -m tcp -p tcp --dport 7252 -j ACCEPT
Настроим apt. Давай добавим в него фильтрацию seccomp-bpf, что немного убережет нас от возможной эксплуатации уязвимостей apt злоумышленниками для повышения привилегий:
nano /etc/apt/apt.conf.d/40sandbox
Добавьте следующую строку в файл:
APT::Sandbox::Seccomp "true";
Советую собирать еще ловушку для хакера, что поможет вовремя определить попытку атаки на наш сервер. Скачиваем репозиторий:
git clone https://github.com/skeeto/endlessh & cd endlessh
make & sudo make install
sudo cp util/endlessh.service /etc/systemd/system
sudo systemctl enable endlessh
sudo mkdir -p /etc/endlessh
Редактируем конфиг:
sudo nano /etc/endlessh/endlesshconfig
Вставляем следующие параметры:
Port 22
Delay 10000
MaxLineLength 32
MaxClients 4096
LogLevel 0
BindFamily 0
Наш honeypot имитирует работу SSH сервера на 22 порту
Теперь перезапускаем:
sudo systemctl start endlessh
Думаю, на этом все. Спасибо за прочтение
Увидимся уже в следующем году
материал: @ruinas_histori