Первичные шаги настройки сервера
1. Обновляем систему
sudo apt update && sudo apt upgrade -y
sudo apt autoremove -y
2. Перезагрузи сервер, если потребуется:
sudo reboot
3. Создай обычного пользователя с sudo-правами
- Создай пользователя, задай сильный пароль
adduser твой_логин
- Добавь в группу sudo
usermod -aG sudo твой_логин
4. Лучше всего: настрой вход по SSH-ключам
Команда для генерации ключа, ключи хранится на Mac OS в папке по пути /Users/Имя пользователя/.ssh
ssh-keygen -t ed25519 -C "твой_email@example.com"
- Тут спрашивает путь куда сохранить ключи, лучше оставить папку по умолчанию, нажимаем «Enter»

- Тут можем указать пароль для ключа или нажать «Enter» если не хотим указывать пароль
- Пароль нужно будет вести два раза

После чего в папке «/Users/Имя пользователя/.ssh» появится два ключа, приватный и публичный
- id_ed25519 — приватный ключ (никому не показывай!).
- id_ed25519.pub — публичный ключ (его будем копировать на сервер).

Теперь нужно на сервере перейти в директорию
/root/.ssh
Нам нужно открывать файл «authorized_keys» и вставить значения из файл «id_ed25519.pub»
- Файл «authorized_keys» будет пустым
- Вставляем значения из файла «id_ed25519.pub»
Теперь пробуем подключится к серверу через SSH Key
5. Теперь нужно настроить службу SSH чтобы вход был безопасным
Открываем файл sshd_conf
sudo nano /etc/ssh/sshd_config
Меняем порт
Port Указываем другой порт
Разрешаем вход root ТОЛЬКО по ключу
PermitRootLogin yes
Включаем аутентификацию по ключам
PubkeyAuthentication yes
Отключаем вход по паролю
PasswordAuthentication no
Запрещаем пустые пароли
PermitEmptyPasswords no
Отключаем интерактивную аутентификацию
KbdInteractiveAuthentication no
Перезапускаем SSH
sudo systemctl restart sshd
6. Настрой firewall (UFW — простой и встроенный)
Устанавливаем
sudo apt install ufw -y
Добавляем порт SSH
sudo ufw allow 2222/tcp
Включаем службу (ответь yes)
sudo ufw enable
Проверяем
sudo ufw status verbose
Если будешь ставить веб-сервер или выпускать SSL:
sudo ufw allow 80/tcp
sudo ufw allow 443/tcp
Чтобы добавить порт в правило
sudo ufw allow нужный_порт/tcp
7. Установи Fail2Ban (защита от брутфорса)
sudo apt install fail2ban -y
Он сам настроится на SSH. Для кастомизации: nano /etc/fail2ban/jail.local
Перезапуск
sudo systemctl restart fail2ban