Пошаговое руководство по настройке Linux-сервера для начинающих

Детальное пошаговое руководство по первоначальной настройке и защите Linux-сервера (Ubuntu 22.04) для начинающих: от подключения и создания пользователя до настройки брандмауэра и базового софта.
Развертывание и первоначальная настройка Linux-сервера — фундаментальный навык для любого IT-специалиста, будь то разработчик, администратор или DevOps-инженер. Этот процесс может пугать новичка обилием команд и концепций. Данное руководство шаг за шагом проведет вас через ключевые этапы настройки свежеустановленного VPS (виртуального приватного сервера) на базе Ubuntu Server 22.04 LTS, одного из самых популярных дистрибутивов. Мы сосредоточимся на безопасности, базовой оптимизации и установке обязательного софта.

Шаг 1: Первое подключение и обновление системы.
После покупки VPS у хостинг-провайдера (Selectel, Timeweb, Reg.ru и др.) вы получите IP-адрес, имя пользователя (часто `root`) и пароль или SSH-ключ. Подключитесь с локальной машины через терминал (Linux/macOS) или PuTTY (Windows): `ssh root@ваш_ip`. При первом подключении вы примете fingerprint ключа сервера.

Сразу же смените пароль root, если он был задан провайдером, командой `passwd`. Затем обновите списки пакетов и установленные программы до последних версий, чтобы получить исправления безопасности: `apt update && apt upgrade -y`. После обновления может потребоваться перезагрузка: `reboot`.

Шаг 2: Создание нового пользователя и настройка SSH.
Работать от root постоянно — плохая практика безопасности. Создадим нового пользователя с привилегиями администратора: `adduser ваш_логин`. Добавим его в группу sudo, чтобы он мог выполнять команды с правами суперпользователя: `usermod -aG sudo ваш_логин`.

Теперь критически важно настроить безопасный доступ по SSH. Отредактируем конфигурационный файл: `nano /etc/ssh/sshd_config`. Найдите и измените следующие директивы:
  • `Port 22` -> измените на другой порт, например, `Port 2222`. Это снизит количество автоматических атак.
  • `PermitRootLogin yes` -> `PermitRootLogin no`. Запрещает прямое подключение под root.
  • `PasswordAuthentication yes` -> `PasswordAuthentication no`. Отключает аутентификацию по паролю в пользу более безопасных ключей.
Прежде чем применять изменения, необходимо добавить свой публичный SSH-ключ на сервер для нового пользователя. На локальной машине, если ключа нет, создайте его: `ssh-keygen`. Скопируйте содержимое файла `~/.ssh/id_rsa.pub`. На сервере, под своим новым пользователем (`su - ваш_логин`), создайте папку и файл: `mkdir ~/.ssh && nano ~/.ssh/authorized_keys`. Вставьте туда свой публичный ключ и сохраните файл. Теперь можно перезагрузить SSH-демон: `sudo systemctl restart sshd`. ВАЖНО: Не закрывайте текущую сессию root! Откройте новое окно терминала и попробуйте подключиться на новый порт с вашим пользователем и ключом: `ssh -p 2222 ваш_логин@ваш_ip`. Если все работает, можно выйти из сессии root.

Шаг 3: Базовая настройка брандмауэра.
Ubuntu поставляется с `ufw` (Uncomplicated Firewall) — простым фронтендом для iptables. Включим его и настроим правила:
  • `sudo ufw default deny incoming` (запретить все входящие подключения по умолчанию).
  • `sudo ufw default allow outgoing` (разрешить все исходящие).
  • `sudo ufw allow 2222/tcp` (разрешить наш новый SSH-порт).
  • Если планируете веб-сервер, позже добавите `sudo ufw allow 80/tcp` и `sudo ufw allow 443/tcp`.
Включаем брандмауэр: `sudo ufw enable`. Проверить статус можно командой `sudo ufw status verbose`.
Шаг 4: Настройка часового пояса и NTP.
Для корректного времени логов и планировщиков задайте часовой пояс: `sudo timedatectl set-timezone Europe/Moscow`. Убедитесь, что служба синхронизации времени (systemd-timesyncd) активна: `sudo timedatectl status`.

Шаг 5: Установка базового полезного софта.
Установите набор инструментов, которые пригодятся в ежедневной работе:
  • `sudo apt install -y curl wget git htop nano mc tmux`. Это набор для загрузки файлов, работы с репозиториями, мониторинга ресурсов и удобного редактирования.
  • Для анализа логов: `sudo apt install -y logrotate`.
  • Для мониторинка сетевых соединений: `sudo apt install -y net-tools` (старый добрый netstat) или более современный `iproute2` (уже предустановлен).
Шаг 6: Настройка локали и SWAP (опционально).
Если нужна русская локаль для системных сообщений, установите: `sudo apt install -y language-pack-ru` и настройте: `sudo update-locale LANG=ru_RU.UTF-8`. Для серверов с малым объемом оперативной памяти полезно создать файл подкачки (SWAP). Например, на 2 ГБ: `sudo fallocate -l 2G /swapfile`, `sudo chmod 600 /swapfile`, `sudo mkswap /swapfile`, `sudo swapon /swapfile`. Чтобы монтировать SWAP при загрузке, добавьте запись в `/etc/fstab`.

Шаг 7: Планирование задач и мониторинг.
Настройте автоматическое обновление безопасности. Установите пакет `unattended-upgrades`: `sudo apt install -y unattended-upgrades`. Активируйте его: `sudo dpkg-reconfigure --priority=low unattended-upgrades`. Для мониторинга состояния сервера в реальном времени используйте `htop` (запуск в терминале) или установите более продвинутые инструменты, такие как Netdata (`bash
394 2

Комментарии (11)

avatar
htjsyac 01.04.2026
А есть аналогичное руководство, но для CentOS/Rocky Linux? В корпоративной среде они чаще встречаются.
avatar
32i7ru7og71 01.04.2026
Автор молодец, что начал с основ безопасности (обновления, ключи SSH). Многие это пропускают.
avatar
y93ulj86c3v 01.04.2026
После настройки сервера по этой инструкции рекомендую сразу поставить и настроить fail2ban.
avatar
xa3813 02.04.2026
Спасибо! Всё четко и по делу. Для новичка, который боится терминала, — самое то.
avatar
4iny1bfzmj6c 03.04.2026
Всё бы ничего, но почему именно Ubuntu? Для сервера лучше подходит Debian, он стабильнее.
avatar
mexe4v6 03.04.2026
Инструкция ясная. Впервые настроил свой сервер без паники, следуя шагам. Огромное спасибо!
avatar
uxz2j25 03.04.2026
Статья хорошая, но шаг про создание sudo-пользователя можно было бы расписать подробнее, это важно.
avatar
ho5243bqaxv 03.04.2026
Полезный материал. Добавил в закладки, чтобы давать ссылку стажёрам для самостоятельного изучения.
avatar
aw2ixh 03.04.2026
Хорошая база. Дальше можно добавлять веб-сервер, базу данных и мониторинг по таким же гайдам.
avatar
7z3nfc 04.04.2026
Отличное руководство для первого шага! Как раз искал что-то структурированное для своей учебной VPS.
Вы просмотрели все комментарии