Илья Чигарев

Сделаю для вас сайт, который станет источником клиентов, дохода, продвижения

Как настроить VDS с нуля: подключение по SSH и защита сервера на Ubuntu

Обложка: настройка VDS с нуля, SSH и защита сервера на Ubuntu Обзоры сервисов
Пошаговая инструкция для тех, кто только что арендовал VDS: как подключиться к серверу по SSH с Windows и Mac, обновить систему, настроить вход по ключу, закрыть вход по паролю, включить файрвол и защиту от подбора пароля. Все команды можно копировать.

Привет. Вы арендовали VDS, на почту пришли IP-адрес и пароль root. Что дальше? Пока сервер с настройками по умолчанию, его уже начинают перебирать роботы: подбор паролей к SSH на открытых в интернет серверах идёт постоянно. Поэтому первые полчаса после создания сервера лучше потратить на базовую настройку VDS.

В инструкции 10 шагов для Ubuntu 24.04: подключение по SSH, обновления, отдельный пользователь, вход по ключу, файрвол, защита от подбора паролей, автообновления, swap и снапшот. Опыт работы с Linux не нужен, все команды можно копировать. Если вы ещё не выбрали сервер, начните со статьи аренда VDS: как выбрать и где купить.

Схема: 10 шагов первой настройки VDS - от подключения по SSH до снапшота

Что понадобится

  • VDS с Ubuntu 24.04. Я показываю на Timeweb Cloud, но команды одинаковые у любого провайдера. Ссылка партнёрская: если закажете сервер по ней, я получу вознаграждение, для вас цена не меняется.
  • IP-адрес и пароль root — приходят на почту после создания сервера.
  • Терминал на компьютере. В Windows 10 и 11 это PowerShell (уже установлен, SSH в нём есть), на Mac — приложение «Терминал».

Совет: если сервер ещё не создан, сразу добавьте SSH-ключ в форме создания сервера — в Timeweb Cloud это поле «Авторизация». Тогда шаг 5 будет наполовину сделан.

Блок «Авторизация» в форме создания сервера Timeweb Cloud: кнопка «Загрузить новый ключ»

Шаг 1. Подключитесь к серверу по SSH

Откройте PowerShell или Терминал и выполните, подставив IP своего сервера:

ssh root@ВАШ_IP

При первом подключении появится вопрос про отпечаток сервера (fingerprint) — напишите yes и нажмите Enter. Затем введите пароль из письма. Символы при вводе не отображаются — так и должно быть, просто вставьте пароль правой кнопкой мыши и нажмите Enter.

Если увидели строку вида root@имя-сервера:~# — вы на сервере.

Шаг 2. Обновите систему

apt update && apt upgrade -y

Если в процессе появится синее окно с вопросом о перезапуске служб, нажмите Enter, оставив выбор по умолчанию. После обновления ядра система может попросить перезагрузку — выполните reboot, подождите минуту и подключитесь снова.

Заодно выставьте часовой пояс, чтобы время в логах совпадало с вашим:

ЕСЛИ ВАМ НУЖЕН САЙТ, ТО...

Я могу его сделать для вас. Меня зовут Илья - являюсь автором блога, занимаюсь разработкой сайтов на Wordpress более 10-ти лет. Специализируюсь на форматах: блог, лендинг, сайт-визитка, корпоративный сайт.

В портфолио найдете мои работы, а детали по разработке читайте по ссылке.
timedatectl set-timezone Europe/Moscow

Шаг 3. Создайте пользователя для работы

Работать постоянно под root опасно: любая ошибка выполняется с полными правами. Создадим обычного пользователя с правом выполнять команды администратора через sudo. Вместо admin можно взять любое имя:

adduser admin
usermod -aG sudo admin

Система попросит придумать пароль — он понадобится для команд с sudo. Остальные вопросы (имя, телефон) можно пропустить нажатием Enter.

Шаг 4. Создайте SSH-ключ на компьютере

SSH-ключ — это пара файлов для входа без пароля: закрытый ключ остаётся у вас, открытый кладётся на сервер. Подобрать ключ перебором практически невозможно, в отличие от пароля.

Откройте новое окно PowerShell или Терминала на своём компьютере (не на сервере) и выполните:

ssh-keygen -t ed25519

На вопрос о пути нажмите Enter. Парольную фразу для ключа задайте по желанию: так безопаснее, но вводить её придётся при каждом подключении. Если ключ уже есть, программа предложит перезаписать его — ответьте n и используйте существующий.

Шаг 5. Скопируйте ключ на сервер

Windows (PowerShell) — одной командой, подставив IP:

Курс по созданию сайта

Новый курс 2026 года "Идеальный сайт на Wordpress 2.0"


Если вы давно мечтаете сделать свой сайт на WordPress, который будет приносить реальный доход и клиентов, то курс для вас.

Посмотреть детали

type $env:USERPROFILE\.ssh\id_ed25519.pub | ssh admin@ВАШ_IP "mkdir -p ~/.ssh && chmod 700 ~/.ssh && cat >> ~/.ssh/authorized_keys && chmod 600 ~/.ssh/authorized_keys"

Mac и Linux:

ssh-copy-id admin@ВАШ_IP

Обе команды спросят пароль пользователя admin из шага 3. Теперь проверьте вход по ключу — в новом окне:

ssh admin@ВАШ_IP

Если вошли без пароля сервера — ключ работает. Подробнее о ключах есть в документации Timeweb Cloud.

Шаг 6. Запретите вход по паролю и под root

Теперь, когда вход по ключу работает, закроем самую частую дыру — подбор пароля. Важно: не закрывайте текущее окно с сервером, пока не проверите вход в новом окне.

Создайте файл с настройками SSH:

sudo nano /etc/ssh/sshd_config.d/00-hardening.conf

Вставьте:

PermitRootLogin no
PasswordAuthentication no

Сохраните: Ctrl+O, Enter, Ctrl+X. Имя файла начинается с 00 не случайно: SSH читает файлы из этой папки по алфавиту и берёт первое найденное значение. Так наши настройки перекроют файл 50-cloud-init.conf, который на облачных серверах часто разрешает вход по паролю.

Проверьте настройки и перезапустите SSH:

sudo sshd -t
sudo systemctl restart ssh

Если первая команда ничего не вывела — ошибок нет. Откройте новое окно и убедитесь, что ssh admin@ВАШ_IP пускает, а ssh root@ВАШ_IP — нет.

Шаг 7. Включите файрвол

Файрвол закрывает все входящие подключения, кроме тех, что вы разрешили. Сначала разрешаем SSH, потом включаем — иначе отрежете себе доступ:

sudo ufw allow OpenSSH
sudo ufw enable
sudo ufw status

Когда поставите на сервер сайт или игру, откройте и их порты: например, sudo ufw allow 80,443/tcp для сайта или sudo ufw allow 25565/tcp для Minecraft.

Шаг 8. Поставьте защиту от подбора паролей

Fail2ban следит за журналом входов и блокирует IP-адреса, с которых много раз неудачно пытаются войти. Даже при входе только по ключу он экономит ресурсы и чистит логи от мусора:

sudo apt install -y fail2ban
sudo systemctl enable --now fail2ban
sudo fail2ban-client status sshd

В Ubuntu защита SSH включается сразу после установки. Последняя команда покажет, сколько адресов уже заблокировано — уже через несколько часов там часто появляются первые «гости». Подробные настройки — в инструкции Timeweb по Fail2ban.

Шаг 9. Проверьте автоматические обновления безопасности

В Ubuntu Server обновления безопасности по умолчанию ставятся автоматически через службу unattended-upgrades. Убедитесь, что она работает:

systemctl status unattended-upgrades

Должно быть active (running). Если службы нет, установите её: sudo apt install -y unattended-upgrades, затем sudo dpkg-reconfigure -plow unattended-upgrades и ответьте «Yes».

Шаг 10. Добавьте swap и сделайте снапшот

Swap — файл подкачки на диске, который подстрахует, если закончится оперативная память. На серверах с 1-2 ГБ памяти он спасает от внезапных падений программ. Создадим swap на 2 ГБ:

sudo fallocate -l 2G /swapfile
sudo chmod 600 /swapfile
sudo mkswap /swapfile
sudo swapon /swapfile
echo "/swapfile none swap sw 0 0" | sudo tee -a /etc/fstab

Проверить: free -h — в строке Swap появится 2 ГБ. Другой способ создания swap описан в документации Timeweb.

Снапшот — снимок сервера целиком. Сделайте его в панели управления сразу после настройки: если потом что-то сломаете, сервер можно откатить к чистому настроенному состоянию за пару минут.

Схема: снапшот после настройки - точка, к которой можно откатить сервер

Что дальше

Сервер настроен и защищён. Теперь на него можно ставить то, ради чего он арендован:

  • Docker — самый простой способ запускать готовые приложения: curl -fsSL https://get.docker.com | sudo sh.
  • Сервер Minecraft — пошагово в статье хостинг для сервера Minecraft.
  • Telegram-бот — в статье хостинг для Telegram-бота.
  • Сайт с панелью управления — ispmanager, FASTPANEL или HestiaCP ставятся из маркетплейса Timeweb Cloud при создании сервера, дальше всё мышкой.

Если что-то пошло не так

ОшибкаПричинаЧто делать
Permission denied (publickey)ключ не скопирован или вход по паролю уже отключёнпроверить шаг 5; если доступа нет совсем — войти через веб-консоль в панели хостинга
Connection timed outфайрвол закрыл SSH или неверный IPвойти через веб-консоль, выполнить sudo ufw allow OpenSSH
REMOTE HOST IDENTIFICATION HAS CHANGEDсервер переустановлен, у него новый отпечатокна своём компьютере выполнить ssh-keygen -R ВАШ_IP и подключиться снова
admin is not in the sudoers fileпользователь не добавлен в группу sudoпод root выполнить usermod -aG sudo admin и перезайти
Пароль не принимаетсяраскладка или лишний пробел при вставкевставить пароль правой кнопкой мыши, проверить раскладку
Сервер «завис» при установкезакончилась оперативная памятьдобавить swap (шаг 10) или повысить тариф

Главное правило: если заблокировали себе доступ по SSH, сервер не потерян. У облачных провайдеров есть веб-консоль в панели управления (в Timeweb Cloud — раздел «Консоль» у сервера), через неё можно войти и исправить настройки.

Частые вопросы

Как подключиться к VDS с Windows?

Откройте PowerShell и выполните ssh root@IP-адрес, подставив IP сервера из письма. Встроенный SSH-клиент есть в Windows 10 и 11, ставить PuTTY не обязательно.

Что нужно настроить на VDS в первую очередь?

Обновить систему, создать пользователя с sudo, настроить вход по SSH-ключу, запретить вход по паролю и под root, включить файрвол и Fail2ban. Это закрывает самые частые способы взлома.

Нужно ли менять порт SSH?

Не обязательно. Смена порта уменьшает число автоматических попыток входа в логах, но не заменяет вход по ключу и запрет паролей. Если всё же меняете порт, сначала откройте новый порт в файрволе.

Какую систему ставить на VDS?

Для большинства задач — Ubuntu 24.04 LTS: она актуальная, получает обновления безопасности долгие годы и под неё написано больше всего инструкций. Debian тоже хороший выбор, команды почти те же.

Что делать, если потерял доступ к серверу?

Войти через веб-консоль в панели управления хостинга — она работает даже при закрытом SSH. Если не помогло, можно сбросить пароль root через панель или откатить сервер из снапшота.

Сколько времени занимает настройка VDS?

Около 30 минут, если делать по этой инструкции. Большую часть времени занимают обновление системы и проверка входа по ключу.

Если на каком-то шаге застряли — пишите в комментариях, какая ошибка, разберёмся.

Добавляйтесь в мой телеграм. Там больше советов про сайты, заработок, фриланс. И можем лично пообщаться.

Заказать сайт
Поделитесь в соцсетях? Благодарю ✌
Илья Чигарев

Меня зовут Илья. Делаю сайты на заказ и веду блог, где рассказываю как зарабатывать на сайте от 100 тысяч в месяц. Посмотрите мою историю, чтобы познакомиться со мной. Подписывайтесь на все соцсети, чтобы не пропускать фишки и секреты по заработку и продвижению.

Добавить комментарий

Отправляя данную форму вы соглашаетесь с политикой конфиденциальности сайта

Содержание

Новый курс по созданию лендинга в Elementor

Уже уходите?

Чтобы не терять связь, подпишитесь на мой Телеграм. Там делюсь секретами, лайфхаками и сервисами для сайта и заработка в интернете.