Новости
Serverspace запустил обновленную партнерскую программу
Serverspace Black Friday
DF
июля 8, 2025
Обновлено июля 8, 2025

Основы настройки Linux сервера от выбора железа до базовой безопасности

Linux

Первые шаги после получения сервера (будь то VPS, VDS или выделенный) критически важны. Правильная начальная настройка закладывает фундамент безопасности, стабильности и производительности будущих сервисов. Мы подробно пройдем все необходимые этапы: от выбора типа сервера и операционной системы до базовой настройки безопасности. К концу руководства вы получите минимально настроенный, защищенный сервер, готовый к установке веб-сервера, базы данных или другого необходимого программного обеспечения.

Выбор типа сервера и операционной системы

VPS, VDS или Выделенный сервер? Краткий обзор:

  • VPS (Virtual Private Server):
    • Виртуальный сервер, созданный на физическом хосте с использованием технологий виртуализации (часто OpenVZ, KVM). Ресурсы (CPU, RAM, диск) делятся между несколькими VPS. Хорошее соотношение цена/производительность для старта и средних нагрузок. Уровень изоляции зависит от типа виртуализации (KVM предпочтительнее).
  • VDS (Virtual Dedicated Server):
    • Фактически, синоним VPS на KVM-виртуализации, подчеркивающий более высокую степень изоляции и гарантию ресурсов. Часто используется как маркетинговый термин.
  • Выделенный сервер (Dedicated Server):
    • Физический сервер целиком в вашем распоряжении. Максимальная производительность, контроль и изоляция. Требует больше навыков администрирования и значительно дороже.

Вывод для старта:

  • Для большинства задач (сайты, небольшие приложения) оптимален VPS/VDS на KVM.

Выбор дистрибутива Linux:

  • Ubuntu Server LTS (Long-Term Support):
    • Настоятельно рекомендуется. Обладает огромным сообществом, обширной документацией, репозиториями с актуальными пакетами и гарантированными обновлениями безопасности на 5 лет. Стабильность и удобство для новичков.
  • Debian:
    • Идеал стабильности и философии свободного ПО. Чуть более консервативен в версиях пакетов, чем Ubuntu. Отличная альтернатива с долгим циклом поддержки стабильных веток.

Рекомендация:

  • Ubuntu Server LTS (например, 22.04 Jammy Jellyfish) – лучший выбор для начала благодаря простоте, поддержке и распространенности.

Минимальная установка операционной системы

Большинство провайдеров предлагают автоматическую установку ОС через панель управления (ISPmanager, cPanel, SolusVM, Proxmox или собственное решение). Если устанавливаете с ISO-образа:

  • Загрузитесь с установочного носителя (ISO).
  • Выберите язык, раскладку клавиатуры.
  • Настройте сеть (обычно DHCP включен по умолчанию).
  • Ключевой шаг:
    • При выборе типа установки обязательно отметьте "Minimal Installation" или аналогичную опцию. Это установит только базовую систему без лишнего ПО (графический интерфейс, офисные пакеты и т.д.).
  • Настройте диск (обычно подходит схема по умолчанию для всего диска с LVM или без).
  • Задайте имя сервера (hostname), например, server1.
  • Укажите ваше географическое местоположение для корректного часового пояса.
  • Создайте начального пользователя:
    • Введите полное имя (можно повторить имя пользователя).
    • Задайте имя пользователя (например, admin или ваше имя). Запомните его!
    • Установите надежный пароль! Эта учетная запись будет иметь права администратора (sudo). Запишите пароль в надежное место!
  • Начните установку. Дождитесь ее завершения и перезагрузите сервер.

Первоначальная настройка операционной системы (После первого входа)

Войдите на сервер под учетной записью, созданной при установке, используя SSH (для Windows используйте PuTTY или Windows Terminal, для Linux/macOS – встроенный терминал: ssh ваш_пользователь@ip_адрес_сервера).

Обновление репозиториев и системы:

Первым делом всегда обновляйте списки пакетов и саму систему. Это закрывает известные уязвимости безопасности и обеспечивает стабильность.

sudo apt update && sudo apt upgrade -y
  • sudo apt update: Обновляет информацию о доступных пакетах из репозиториев.
  • sudo apt upgrade -y: Устанавливает обновления для всех установленных пакетов (-y автоматически подтверждает действие).

Если ядро получило обновление, потребуется перезагрузка: sudo reboot.

Создание и настройка нового пользователя (опционально, но рекомендуется):

Хотя у вас уже есть пользователь с sudo, создание отдельного пользователя для повседневных задач – хорошая практика безопасности.

Создайте пользователя (замените newuser на желаемое имя):

sudo adduser newuser

Следуйте подсказкам, чтобы задать пароль и дополнительную информацию (можно оставить пустой).

Наделите нового пользователя правами sudo:

sudo usermod -aG sudo newuser

Проверьте: Выйдите из системы (exit) и войдите под новым пользователем (ssh newuser@ip_адрес_сервера). Попробуйте выполнить команду с sudo (например, sudo ls -l /root). Вам будет предложено ввести пароль нового пользователя. Если команда выполняется – права sudo работают.

Настройка аутентификации по SSH-ключам (Крайне важно!):

Пароли уязвимы к подбору. Аутентификация по криптографическим ключам намного безопаснее.

На вашем локальном компьютере (клиенте): Сгенерируйте пару SSH-ключей (если ее еще нет):

ssh-keygen -t ed25519 -C "your_email@example.com" # Предпочтительный современный алгоритм
# ИЛИ, если ed25519 не поддерживается:
ssh-keygen -t rsa -b 4096 -C "your_email@example.com"

Нажимайте Enter, чтобы принять значения по умолчанию (файлы сохранятся в ~/.ssh/id_ed25519 и ~/.ssh/id_ed25519.pub или ~/.ssh/id_rsa и ~/.ssh/id_rsa.pub). Защитите фразу-пароль (passphrase) для ключа, если задаете.

Скопируйте публичный ключ на сервер:

ssh-copy-id newuser@ip_адрес_сервера

Введите пароль пользователя newuser на сервере. Ключ будет добавлен в файл ~/.ssh/authorized_keys этого пользователя.

Если ssh-copy-id недоступен: Скопируйте содержимое файла ~/.ssh/id_ed25519.pub (или id_rsa.pub) на клиенте и вручную добавьте его в файл ~/.ssh/authorized_keys на сервере (создав каталог ~/.ssh с правами 700 и файл authorized_keys с правами 600, если их нет).

Проверьте вход по ключу: Попробуйте войти на сервер: ssh newuser@ip_адрес_сервера. Если ключ настроен правильно, вход должен произойти без запроса пароля пользователя (запрос фразы-пароля ключа возможен, если вы ее задавали).

Отключите парольную аутентификацию (Только после успешной проверки ключа!):

Откройте конфигурацию SSH-демона:

sudo nano /etc/ssh/sshd_config

Найдите и измените директивы:

PasswordAuthentication no # Запретить аутентификацию паролем

PermitRootLogin no # Запретить вход root (уже должно быть после установки Ubuntu/Debian, но проверьте)

PubkeyAuthentication yes # Разрешить аутентификацию по ключам (обычно по умолчанию 'yes')

Сохраните файл (Ctrl+O, Enter в nano). Выйдите (Ctrl+X).

Примените изменения, перезагрузив SSH-демон:

sudo systemctl restart ssh
# ИЛИ на некоторых системах
sudo systemctl restart sshd

Важно! Не закрывайте текущую SSH-сессию! Откройте новое окно терминала и попробуйте войти еще раз. Убедитесь, что вход по ключу работает и пароль больше не запрашивается. Только после этого закрывайте первоначальную сессию.

Настройка системного времени (NTP):

Корректное время необходимо для журналов, работы сертификатов (HTTPS) и синхронизации приложений. В Ubuntu/Debian используется systemd-timesyncd.

Проверьте текущее состояние:

timedatectl status

Обратите внимание на строки System clock synchronized: (должно быть yes) и NTP service: (должно быть active).

Если NTP не активен:

sudo timedatectl set-ntp on

Убедитесь, что служба запущена и время синхронизировано:

timedatectl status

При необходимости установите пакет (обычно предустановлен):

sudo apt install systemd-timesyncd

(Опционально) Проверьте, с какими серверами синхронизируется время: timedatectl show-timesync.

Настройка базового брандмауэра (UFW - Uncomplicated Firewall):

UFW – простая фронтенд-обертка над iptables/nftables для управления фаерволом.

Установите UFW (если не установлен):

sudo apt install ufw

Установите политики по умолчанию:

sudo ufw default deny incoming # Блокировать ВСЕ входящие подключения

sudo ufw default allow outgoing # Разрешить ВСЕ исходящие подключения

Откройте необходимые порты:

SSH (22/TCP): Крайне важно открыть ДО активации UFW! Если вы изменили стандартный порт SSH (например, на 2222), открывайте именно его!

sudo ufw allow 22/tcp # Для стандартного порта SSH
# ИЛИ, если используется нестандартный порт (например, 2222):
sudo ufw allow 2222/tcp

HTTP (80/TCP): Для незашифрованного веб-трафика.

sudo ufw allow 80/tcp

HTTPS (443/TCP): Для зашифрованного веб-трафика.

sudo ufw allow 443/tcp

(Дополнительно) Если планируете использовать другие сервисы (FTP, SMTP, кастомные порты), откройте их сейчас аналогично.

Включите UFW:

sudo ufw enable

Подтвердите операцию, нажав y. Убедитесь, что порт SSH (22 или ваш кастомный) открыт, иначе потеряете доступ!
Проверьте статус и правила:

sudo ufw status verbose

Вывод должен показать статус Status: active и список разрешенных портов (22, 80, 443/tcp).

Поздравляем! Вы успешно выполнили первоначальную настройку вашего Linux-сервера. Мы выбрали оптимальный тип сервера (VPS/VDS) и ОС (Ubuntu Server LTS), установили минимальный набор ПО, обновили систему, создали пользователя, настроили безопасный вход по SSH-ключам, отключили прямой вход root, синхронизировали время и настроили базовый фаервол UFW.

Ваш сервер теперь значительно более защищен от распространенных атак (брутфорс паролей SSH, сканирование открытых портов).

Не забывайте регулярно поддерживать систему в актуальном состоянии:

sudo apt update && sudo apt upgrade -y

Дополнительные рекомендации для усиления безопасности:

  • Fail2Ban:
    • Установите и настройте для автоматической блокировки IP-адресов, совершающих много неудачных попыток входа (особенно в SSH). (sudo apt install fail2ban).
  • Автоматические обновления безопасности:
    • Настройте пакет unattended-upgrades для автоматической установки критических обновлений безопасности. (sudo apt install unattended-upgrades и настройка /etc/apt/apt.conf.d/50unattended-upgrades).
  • Мониторинг ресурсов:
    • Установите htop (sudo apt install htop) или glances (sudo apt install glances) для удобного мониторинга использования CPU, RAM, диска и процессов.
  • Резервное копирование:
    • Реализуйте стратегию регулярного резервного копирования критически важных данных (файлы приложения, базы данных, конфигурации)! Это не опция, а необходимость.

Теперь вы можете приступать к установке необходимого программного стека для ваше

Оценка:
5 из 5
Аverage rating : 5
Оценок: 1
050000 г. Алматы пр. Сейфуллина, д. 502
+7 (777) 555-36-66
ООО «ИТГЛОБАЛКОМ ЛАБС»

Вам также может быть интересно...