Първите 10 минути с нов Linux VPS
Новият сървър е чист, но не е „готов“. Ботовете в интернет пробват пароли постоянно и не чакат да си настроил нещата. Ето какво правим в първите 10 минути след като получим данните за вход. Командите са за Debian/Ubuntu, а където е различно — и за AlmaLinux/Rocky.
Влез и смени паролата
Данните за вход идват по имейл: потребител, парола и SSH порт.
Code: Select all
ssh -p ПОРТ потребител@ssh.vpsstorages.comCode: Select all
passwd
Обнови системата
Code: Select all
# Debian / Ubuntu
sudo apt update && sudo apt upgrade -y
# AlmaLinux / Rocky
sudo dnf upgrade -ysudo reboot
Вход с SSH ключ вместо с парола
Ключът не може да бъде „налучкан“ като паролата. Създава се на твоя компютър (Windows 10/11, macOS и Linux имат ssh-keygen):
Code: Select all
ssh-keygen -t ed25519Code: Select all
# Linux / macOS
ssh-copy-id -p ПОРТ потребител@ssh.vpsstorages.com
# Windows (PowerShell)
type $env:USERPROFILE\.ssh\id_ed25519.pub | ssh -p ПОРТ потребител@ssh.vpsstorages.com "mkdir -p ~/.ssh && chmod 700 ~/.ssh && cat >> ~/.ssh/authorized_keys && chmod 600 ~/.ssh/authorized_keys"
(По желание) Изключи входа с парола
Code: Select all
echo "PasswordAuthentication no" | sudo tee /etc/ssh/sshd_config.d/00-keys-only.conf
sudo sshd -t && sudo systemctl restart ssh # AlmaLinux/Rocky: sshd
sudo sshd -T | grep passwordauthentication # трябва да е: no00- отпред нарочно: при SSH печели първата настройка, а някои системи вече имат файл, който разрешава паролите.Пази копие на ключа си на сигурно място — без него и без парола няма да влезеш.
Защитна стена
Вътре в сървъра SSH е на порт 22 (портът от имейла е само външният). Разреши SSH преди да включиш стената:
Code: Select all
# Debian / Ubuntu
sudo apt install -y ufw
sudo ufw allow 22/tcp
sudo ufw enable
# AlmaLinux / Rocky
sudo dnf install -y firewalld
sudo systemctl enable --now firewalld
sudo firewall-cmd --permanent --add-service=ssh
sudo firewall-cmd --reload80/tcp (Ubuntu: sudo ufw allow 80/tcp, Alma: --add-service=http).
Автоматични обновления за сигурност
Повечето пробиви са през дупки, за които отдавна има поправка. Нека сървърът се обновява сам:
Code: Select all
# Debian / Ubuntu
sudo apt install -y unattended-upgrades
sudo dpkg-reconfigure -plow unattended-upgrades
# AlmaLinux / Rocky
sudo dnf install -y dnf-automatic
sudo sed -i 's/^upgrade_type.*/upgrade_type = security/; s/^apply_updates.*/apply_updates = yes/' /etc/dnf/automatic.conf
sudo systemctl enable --now dnf-automatic.timer
Провери кой влиза
Code: Select all
last -n 10 # последните входове
sudo journalctl -u ssh --since today # AlmaLinux/Rocky: -u sshd
А fail2ban?
На обикновен сървър с публичен IP fail2ban е добра идея. При нашите VPS обаче SSH минава през общ вход (ssh.vpsstorages.com), затова сървърът вижда всички входове като идващи от един и същ адрес. fail2ban би блокирал този адрес — и би заключил и теб. Тук по-добрата защита е ключ + силна парола.
Или с една отметка при поръчка
При поръчка на Linux VPS можеш да избереш безплатната добавка „Защита на сървъра“. Тя прави вместо теб стъпки 5 и 6 (защитна стена и автоматични обновления), ограничава опитите за вход по SSH и затяга мрежовите настройки на системата. Входът с парола остава, така че SSH ключа (стъпки 3–4) добавяш сам, ако искаш.Въпроси? Пиши тук в темата