Быстрая установка и базовая настройка Nginx на Ubuntu 22.04/24.04 LTS: Полное руководство за 15 минут | AdminWiki
Timeweb Cloud — сервера, Kubernetes, S3, Terraform. Лучшие цены IaaS.
Попробовать

Быстрая установка и базовая настройка Nginx на Ubuntu 22.04/24.04 LTS: Полное руководство за 15 минут

03 мая 2026 6 мин. чтения

Эта инструкция позволяет получить полностью рабочую среду веб-сервера Nginx на Ubuntu менее чем за 15 минут. Мы пройдем путь от установки актуальной версии из официального PPA до создания первого тестового сайта, включая критически важные шаги по настройке брандмауэра UFW и управлению сервисом через systemd. Все команды проверены на практике и одинаково работают на Ubuntu 22.04 LTS и новой Ubuntu 24.04 LTS.

Подготовка системы и установка актуального Nginx

Первым шагом необходимо подготовить систему и выбрать источник для установки Nginx. Использование официального PPA гарантирует получение последних стабильных версий с исправлениями и новыми функциями, в отличие от стандартных репозиториев Ubuntu, где версия может отставать.

Обновление пакетов и выбор источника для установки

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

sudo apt update && sudo apt upgrade -y

Для установки самой свежей стабильной версии Nginx мы будем использовать официальный PPA разработчиков. Этот подход рекомендован для production-сред.

Установка Nginx из официального PPA

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

sudo apt install curl gnupg2 ca-certificates lsb-release ubuntu-keyring -y

Затем импортируем ключ безопасности PPA и добавим сам репозиторий в систему.

curl -fsSL https://nginx.org/keys/nginx_signing.key | sudo gpg --dearmor -o /usr/share/keyrings/nginx-archive-keyring.gpg
sudo echo "deb [signed-by=/usr/share/keyrings/nginx-archive-keyring.gpg] http://nginx.org/packages/ubuntu $(lsb_release -cs) nginx" | sudo tee /etc/apt/sources.list.d/nginx.list

После добавления репозитория обновите список пакетов и установите Nginx.

sudo apt update
sudo apt install nginx -y

Убедитесь в успешной установке. Команда nginx -v покажет версию, а systemctl status nginx подтвердит, что служба запущена.

Настройка брандмауэра UFW и базовое управление сервисом

После установки сервер необходимо защитить и научиться управлять службой Nginx. Без корректной настройки брандмауэра веб-сервер будет недоступен, а неправильное управление сервисом может привести к простою.

Открываем порты для веб-трафика в UFW

UFW (Uncomplicated Firewall) - стандартный инструмент для управления сетевой безопасностью в Ubuntu. Проверьте его статус и разрешите профили для Nginx.

sudo ufw app list

Вы увидите доступные профили, включая 'Nginx HTTP' и 'Nginx HTTPS'. Разрешите их и включите брандмауэр.

sudo ufw allow 'Nginx HTTP'
sudo ufw allow 'Nginx HTTPS'
sudo ufw enable

Команда sudo ufw status verbose покажет, что правила применены. Если вы подключены к серверу удаленно, убедитесь, что правило для SSH также разрешено перед включением UFW.

Ключевые команды systemd для управления Nginx

Nginx управляется как служба systemd. Знание основных команд позволяет контролировать его работу без риска обрыва соединений.

  • sudo systemctl start nginx - запустить службу.
  • sudo systemctl stop nginx - остановить службу.
  • sudo systemctl restart nginx - полностью перезапустить службу (все соединения обрываются).
  • sudo systemctl reload nginx - перезагрузить конфигурацию без остановки сервера (graceful reload). Это критически важно при изменении настроек в production.
  • sudo systemctl enable nginx - включить автозагрузку службы при старте системы.
  • sudo systemctl status nginx - проверить текущий статус службы.

После настройки UFW проверьте, что сервер отвечает. Вы можете выполнить curl -I 127.0.0.1 или открыть IP сервера в браузере.

Создание и настройка первого тестового сайта

Теперь создадим структуру для сайта, настроим виртуальный хост и организуем локальное тестирование через файл hosts. Это решает распространенные проблемы с правами доступа (403 ошибки) и позволяет проверить работу без реального DNS.

Создание директории сайта и настройка прав доступа

Стандартное место для файлов сайтов в Nginx - /var/www/. Создайте директорию для вашего тестового домена.

sudo mkdir -p /var/www/example.com/html

Nginx работает под пользователем www-data. Назначьте ему владение директорией сайта для корректной работы.

sudo chown -R www-data:www-data /var/www/example.com
sudo chmod -R 755 /var/www/example.com

Создайте простой индексный файл для проверки.

sudo nano /var/www/example.com/html/index.html

Вставьте в него любой HTML, например: <h1>Hello from example.com!</h1>. Права 755 на директории и 644 на файлы обеспечивают баланс безопасности и функциональности.

Конфигурация виртуального хоста (server block) в Nginx

В Nginx каждый сайт описывается отдельным server block в конфигурационном файле. Создайте файл в директории sites-available.

sudo nano /etc/nginx/sites-available/example.com

Добавьте минимальную рабочую конфигурацию:

server {
    listen 80;
    listen [::]:80;

    server_name example.com;

    root /var/www/example.com/html;
    index index.html;

    location / {
        try_files $uri $uri/ =404;
    }
}

Активируйте сайт, создав символическую ссылку в директории sites-enabled.

sudo ln -s /etc/nginx/sites-available/example.com /etc/nginx/sites-enabled/

Проверьте синтаксис всех конфигурационных файлов командой sudo nginx -t. Если проверка успешна, примените изменения с помощью graceful reload.

sudo systemctl reload nginx

Локальное тестирование через файл /etc/hosts

Для тестирования сайта по доменному имени на локальной машине до настройки реального DNS используйте файл hosts. Он позволяет сопоставить домен с локальным IP адресом.

sudo nano /etc/hosts

Добавьте строку: 127.0.0.1 example.com. После этого в браузере на этом сервере можно открыть http://example.com и увидеть созданный индексный файл. Этот метод работает только на машине, где изменен файл hosts.

Для дальнейшего развития вашего веб-сервера, например, добавления PHP-обработки или базы данных, вы можете использовать полное руководство по развертыванию стека LEMP.

Проверка работоспособности и следующие шаги

Пройдите итоговую диагностику, чтобы убедиться в успешном выполнении всех шагов. Затем можно планировать дальнейшее усиление сервера.

Итоговая диагностика: все ли работает?

Выполните чек-лист для самопроверки:

  • systemctl status nginx - служба должна быть активна (active) и запущена (running).
  • curl -I 127.0.0.1 - ответ должен содержать статус 200 OK.
  • curl -I example.com (при настроенном hosts) - также должен возвращать 200 OK.
  • Визуальная проверка в браузере по IP сервера или домену example.com должна показывать содержимое вашего index.html.

Куда двигаться дальше после базовой настройки

Базовая установка завершена. Для подготовки сервера к production-среде рекомендуются следующие шаги:

  1. Настройка SSL/TLS: Защитите трафик с помощью бесплатных сертификатов Let's Encrypt. Инструкции по автоматическому получению и обновлению сертификатов для Nginx и Apache можно найти в практическом руководстве по Let's Encrypt. Для более глубокого погружения в тему безопасности HTTPS, включая HSTS и работу с reverse proxy, обратитесь к полному руководству по SSL/TLS и HTTPS в Nginx.
  2. Оптимизация конфигурации Nginx: Настройте кэширование, компрессию gzip/brotli и параметры worker процессов для повышения производительности под нагрузку. Готовые конфигурации для высоконагруженных систем описаны в статье Nginx как балансировщик нагрузки.
  3. Усиление безопасности: Конфигурирование дополнительных HTTP заголовков, настройка WAF (Web Application Firewall) и меры противодействия атакам. Комплексные меры защиты для Nginx и Apache разбираются в руководстве по полной защите веб-серверов.

Для экспериментов с различными моделями искусственного интеллекта в едином интерфейсе без необходимости использовать VPN вы можете воспользоваться агрегатором API AiTunnel, который предоставляет доступ к более чем 200 моделям, включая GPT, Gemini и Claude, с оплатой в рублях.

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