Установка Ubuntu на VPS: Пошаговая инструкция 2024 | AdminWiki

Установка Ubuntu на VPS: Полное руководство для разработчиков и DevOps

17 декабря 2025 9 мин. чтения #devops #linux #ssh #ubuntu #vps #безопасность #настройка сервера #сервер #установка ubuntu

Представь, что ты только что арендовал свой первый VPS. Чистый лист, полная свобода действий и... легкая паника: "С чего начать?" Давай разберем процесс установки Ubuntu на VPS от А до Я. Я буду твоим ментором и покажу каждый шаг — от выбора дистрибутива до настройки безопасного сервера, готового к работе.

Подготовка к установке Ubuntu на VPS

Перед тем как начать установку Ubuntu, нужно понять несколько ключевых моментов. VPS (Virtual Private Server) — это виртуальный сервер, который ты арендуешь у хостинг-провайдера. В отличие от shared-хостинга, здесь у тебя root-доступ и полный контроль.

Важно: Большинство современных хостинг-провайдеров предлагают предустановленные образы Ubuntu. Это самый быстрый способ начать работу. Мы рассмотрим оба варианта: установку из готового образа и ручную настройку.

Выбор версии Ubuntu для VPS

Для серверов я рекомендую использовать LTS (Long Term Support) версии. Они получают обновления безопасности в течение 5 лет.

Версия Кодовое имя Поддержка до Рекомендация
Ubuntu 22.04 LTS Jammy Jellyfish Апрель 2027 ★ Лучший выбор
Ubuntu 24.04 LTS Noble Numbat Апрель 2029 Для новых проектов
Ubuntu 20.04 LTS Focal Fossa Апрель 2025 Для legacy-систем

Пошаговая установка Ubuntu на VPS

Давай пройдем весь путь от заказа VPS до полностью настроенного сервера. Я буду использовать DigitalOcean в качестве примера, но процесс аналогичен для Hetzner, Vultr, Linode и других провайдеров.

Шаг 1: Создание VPS с предустановленным Ubuntu

Самый простой способ — выбрать готовый образ Ubuntu при создании сервера:

  • Зайди в панель управления провайдера (DigitalOcean, Hetzner Cloud и т.д.)
  • Нажми "Create Droplet" (или аналогичную кнопку)
  • Выбери Ubuntu из списка дистрибутивов
  • Выбери версию (рекомендую 22.04 LTS)
  • Выбери тарифный план (для начала хватит 1GB RAM, 1 vCPU)
  • Выбери регион дата-центра (ближе к твоей аудитории)
  • Добавь SSH ключи (об этом ниже)
  • Нажми "Create" и жди 30-60 секунд
Внимание: Всегда добавляй SSH ключи при создании сервера! Парольная аутентификация менее безопасна. Если забыл — придется настраивать позже.

Шаг 2: Первое подключение к VPS по SSH

После создания сервера ты получишь IP-адрес. Подключаемся:

bash
# Подключение к серверу
ssh root@ваш_ip_адрес

# Если используешь SSH ключ с нестандартным именем
ssh -i ~/.ssh/private_key root@ваш_ip_адрес

При первом подключении увидишь предупреждение о fingerprint. Нажми "yes" чтобы продолжить.

Шаг 3: Базовая настройка Ubuntu после установки

Сразу после входа выполни эти команды для обновления системы:

bash
# Обновляем список пакетов
apt update

# Обновляем установленные пакеты
apt upgrade -y

# Устанавливаем полезные утилиты
apt install -y \
  curl \
  wget \
  git \
  htop \
  nano \
  ufw \
  fail2ban

Шаг 4: Настройка безопасности сервера

Безопасность — не опция, а необходимость. Настроим базовую защиту:

bash
# Настраиваем фаервол UFW
ufw allow OpenSSH
ufw allow 80/tcp    # HTTP
ufw allow 443/tcp   # HTTPS
ufw enable

# Проверяем статус
ufw status verbose

# Настраиваем Fail2Ban для защиты от bruteforce
systemctl enable fail2ban
systemctl start fail2ban

# Создаем пользователя без root-прав (рекомендуется)
adduser ваш_username
usermod -aG sudo ваш_username

# Копируем SSH ключи для нового пользователя
rsync --archive --chown=ваш_username:ваш_username ~/.ssh /home/ваш_username
Совет: После создания обычного пользователя и настройки SSH, отключи вход root по SSH. Для этого в файле /etc/ssh/sshd_config измени PermitRootLogin на no.

Шаг 5: Настройка часового пояса и локали

bash
# Устанавливаем нужный часовой пояс (например, Europe/Moscow)
timedatectl set-timezone Europe/Moscow

# Проверяем текущее время
date

# Настраиваем локаль (язык системы)
apt install -y locales
locale-gen ru_RU.UTF-8
locale-gen en_US.UTF-8
update-locale LANG=en_US.UTF-8

Ручная установка Ubuntu на существующий VPS

Иногда нужно переустановить систему или использовать кастомный образ. Вот как это делается через救援 режим (rescue mode) или IPMI/KVM.

Метод 1: Через救援 режим (Rescue Mode)

Большинство провайдеров предлагают rescue mode — временная загрузка с LiveCD для восстановления системы:

  1. Включи救援 режим в панели управления провайдера
  2. Подключись к серверу по SSH (получи временный пароль)
  3. Смонтируй основной диск: mount /dev/sda1 /mnt
  4. Скачай образ Ubuntu: wget https://releases.ubuntu.com/22.04/ubuntu-22.04-live-server-amd64.iso
  5. Смонтируй образ и скопируй файлы на основной диск
  6. Настрой загрузчик GRUB
  7. Перезагрузись в нормальном режиме

Метод 2: Через IPMI/KVM консоль

Для выделенных серверов или VPS с KVM доступом:

bash
# 1. Зайди в IPMI/KVM консоль через панель провайдера
# 2. Загрузись с ISO образа Ubuntu (загруженного через virtual media)
# 3. Следуй графическому установщику
# 4. Выбери "Manual partitioning" для полного контроля
# 5. Настрой разделы:
#    /     - 20-30GB ext4
#    /home - остальное место ext4
#    swap  - 2x RAM (но не более 8GB)

Оптимизация Ubuntu на VPS после установки

После базовой установки Ubuntu на VPS, давай настроим систему для максимальной производительности.

Настройка swap файла

bash
# Создаем swap файл 2GB
fallocate -l 2G /swapfile
chmod 600 /swapfile
mkswap /swapfile
swapon /swapfile

# Делаем постоянным
echo '/swapfile none swap sw 0 0' >> /etc/fstab

# Настраиваем swappiness (рекомендуется 10 для серверов)
echo 'vm.swappiness=10' >> /etc/sysctl.conf
sysctl -p

Оптимизация SSH для безопасности и скорости

bash
# Редактируем конфиг SSH
nano /etc/ssh/sshd_config

# Важные настройки:
Port 2222                    # Меняем стандартный порт
PermitRootLogin no          # Запрещаем root вход
PasswordAuthentication no   # Только по ключам
ClientAliveInterval 300     # Keepalive
ClientAliveCountMax 2
MaxAuthTries 3              # Защита от bruteforce

# Перезагружаем SSH
systemctl restart sshd
Важно: После смены SSH порта не забудь добавить его в фаервол: ufw allow 2222/tcp. И убедись, что у тебя есть доступ к новому порту, прежде чем закрывать старый!

Установка и настройка Docker (опционально)

Для современных приложений Docker почти обязателен:

bash
# Устанавливаем Docker
curl -fsSL https://get.docker.com -o get-docker.sh
sh get-docker.sh

# Добавляем пользователя в группу docker
usermod -aG docker ваш_username

# Устанавливаем Docker Compose
apt install -y docker-compose-plugin

# Проверяем установку
docker --version
docker compose version

Частые проблемы при установке Ubuntu на VPS

Проблема 1: Не могу подключиться по SSH после установки

Решение: Проверь:

  • Правильный ли IP-адрес
  • Добавлен ли твой SSH ключ в панели управления
  • Не блокирует ли фаервол на твоей стороне
  • Используй KVM консоль для диагностики

Проблема 2: Нет интернета после установки

Решение: Проверь настройки сети:

bash
# Проверяем сетевые интерфейсы
ip addr show

# Проверяем маршрутизацию
ip route show

# Проверяем DNS
cat /etc/resolv.conf
nslookup google.com

Автоматизация установки с помощью cloud-init

Для массового развертывания используй cloud-init — это инструмент для автоматической настройки облачных инстансов:

yaml
# cloud-config.yaml
# Автоматическая настройка Ubuntu при первой загрузке

users:
  - name: admin
    ssh-authorized-keys:
      - ssh-rsa AAAAB3NzaC1yc2E...
    sudo: ['ALL=(ALL) NOPASSWD:ALL']
    groups: sudo
    shell: /bin/bash

packages:
  - docker.io
  - nginx
  - fail2ban

runcmd:
  - [ufw, allow, 'OpenSSH']
  - [ufw, allow, '80/tcp']
  - [ufw, allow, '443/tcp']
  - [ufw, enable]
  - [systemctl, enable, docker]
  - [systemctl, start, docker]

power_state:
  mode: reboot
  message: Настройка завершена
  timeout: 30

FAQ: Часто задаваемые вопросы

Какую версию Ubuntu выбрать для VPS?

Для production всегда используй LTS (Long Term Support) версии. Ubuntu 22.04 LTS — самый стабильный и проверенный вариант на 2024 год. Ubuntu 24.04 LTS подойдет для новых проектов.

Нужно ли ставить графический интерфейс на VPS?

Нет! Серверный Ubuntu работает без GUI. Это экономит ресурсы и повышает безопасность. Все управление через SSH. Если нужен GUI, используй X2Go или VNC, но это не рекомендуется для production.

Как перенести данные со старого сервера?

Используй rsync для синхронизации файлов:

bash
rsync -avz -e ssh user@old_server:/path/ /path/on/new/server/

Как сделать бэкап перед установкой?

Если переустанавливаешь существующий сервер:

  • Экспортируй базы данных: mysqldump -u user -p database > backup.sql
  • Скопируй конфиги: /etc/nginx/, /etc/mysql/
  • Скопируй данные веб-сайтов
  • Сохрани список установленных пакетов: apt list --installed > packages.txt

Заключение

Установка Ubuntu на VPS — это только начало пути. Ты получил чистую, безопасную систему, готовую к развертыванию любых приложений. Помни главные правила:

  • Всегда обновляй систему: apt update && apt upgrade
  • Никогда не работай из-под root — создавай отдельных пользователей
  • Настрой мониторинг (я использую Netdata + Telegram бота)
  • Делай регулярные бэкапы (автоматизируй этот процесс)
  • Документируй все изменения в системе

Теперь у тебя есть мощный инструмент для разработки, тестирования и деплоя. Что развернешь первым? Docker-контейнеры, веб-сервер, базу данных или maybe целый Kubernetes кластер? Выбор за тобой!

Поделиться:
Сохранить гайд? В закладки браузера