Nginx – один из самых популярных веб-серверов в мире, его используют многие крупные интернет-порталы. Его можно использовать не только в качестве веб-сервера, но и как обратный прокси. Nginx обладает массой преимуществ, например, в сравнении с Apache он потребляет меньше ресурсов.
Из этой статьи вы узнаете, как установить nginx на сервер с ОС Debian 10.
Требования
Для выполнения дальнейших действий у вас должен быть создан пользователь с sudo привилегиями (под которым вам нужно авторизоваться), а также работать файрвол.
Шаг 1: установка nginx
Nginx доступен в стандартных репозиториях Debian, так что его можно установить прямо оттуда, используя пакетный менеджер apt.
Нужно выполнить стандартные действия - сначала обновить локальный индекс пакетов:
$ sudo apt update
А затем уже установить сам nginx:
$ sudo apt install nginx
Далее нужно нажать Enter, чтобы подтвердить то, что вы хотите начать установку. После этого на ваш сервер установится nginx и все необходимые зависимости.
Шаг 2: настройка файрвола
Теперь нужно внести несколько изменений в файрвол.
Введите команду ниже для того, чтобы просмотреть все доступные профили приложений на вашем сервере:
$ sudo ufw app list
Вы увидите список профилей приложений:
Available applications: ... Nginx Full Nginx HTTP Nginx HTTPS ...
Для nginx доступны 3 профиля:
- Nginx Full: профиль открывает два порта – 80 (обычный, незашифрованный веб-трафик) и 443 (TLS/SSL зашифрованный трафик);
- Nginx HTTP: профиль открывает только порт 80 (обычный, незашифрованный веб-трафик);
- Nginx HTTPS: профиль открывает только порт 443 (TLS/SSL зашифрованный трафик).
Лучше всего использовать наиболее ограниченный профиль, но при этом разрешающий необходимый вам трафик. Так как на сервере еще не настроен SSL, то на данном этапе необходимо открыть порт 80, который разрешает трафик для незашифрованного трафика HTTP.
Для этого нужно выполнить команду:
$ sudo ufw allow 'Nginx HTTP'
Затем проверьте состояние UFW:
$ sudo ufw status
В выводе вы увидите заданные правила (HTTP разрешен):
Status: active To Action From -- ------ ---- OpenSSH ALLOW Anywhere Nginx HTTP ALLOW Anywhere OpenSSH (v6) ALLOW Anywhere (v6) Nginx HTTP (v6) ALLOW Anywhere (v6)
Шаг 3: проверка работы веб-сервера
После завершения процесса установки Debian 10 запустит nginx. То есть веб-сервер будет уже работать.
Это можно проверить следующей командой:
$ systemctl status nginx
Вы увидите вывод:
nginx.service - A high performance web server and a reverse proxy server Loaded: loaded (/lib/systemd/system/nginx.service; enabled; vendor preset: enabled) Active: active (running) since Wed 2019-07-12 12:52:54 UTC; 4min 23s ago Docs: man:nginx(8) Main PID: 3942 (nginx) Tasks: 3 (limit: 4719) Memory: 6.1M CGroup: /system.slice/nginx.service ├─3942 nginx: master process /usr/sbin/nginx -g daemon on; master_process on; ├─3943 nginx: worker process └─3944 nginx: worker process
Это значит, что сервис успешно запущен. И лучший способ убедиться в этом - это загрузить начальную страницу nginx, перейдя по IP-адресу вашего сервера. Если вы его не знаете, то введите команду:
$ ip addr show eth0 | grep inet | awk '{ print $2; }' | sed 's/\/.*$//'
В выводе вы увидите несколько строк - попробуйте в строке браузера каждую из них.
После ввода IP-адреса сервера вы должны увидеть:
Если страница отобразилась, значит, сервер работает корректно.
Шаг 4: работа с nginx
Наконец, несколько основных команд, которые позволяют управлять nginx.
Остановить веб-сервер:
$ sudo systemctl stop nginx
Заново запустить после остановки:
$ sudo systemctl start nginx
Остановить и запустить:
$ sudo systemctl restart nginx
Если вы вносите изменения в настройки, можно перезагрузить nginx без остановки процессов и обрыва соединений:
$ sudo systemctl reload nginx
По умолчанию nginx будет запускаться вместе с сервером. Выключить эту настройку можно командой:
$ sudo systemctl disable nginx
Если же вам нужно включить автозапуск nginx, то введите:
$ sudo systemctl enable nginx
Комментарии