Nginx Ubuntu: установка і настройка

286 0 Новини високих технологій

Nginx Ubuntu - це веб-сервер з відкритим вихідним кодом, який володіє потужними функціями балансування навантаження, зворотного проксі і кешування. Спочатку він був розроблений для усунення збоїв масштабування і паралелізму на існуючих серверах. Асинхронна архітектура на основі подій зробила його самим популярним і ефективним.

Дві версії установки

Зазвичай вибирають дві версії Nginx Ubuntu з відкритим вихідним кодом - основну і стабільну. Основна версія представляє невелику частину повного пакету. Статус «Розробка і пробна версія» не означає, що основна вразлива, навпаки, вона досить стабільна. Її переваги: завжди можна попередньо випробувати оптимальні функції та новітні можливості. Недолік - ймовірність отримання помилок більше в порівнянні із стабільною. У останньої (повна версія Nginx Ubuntu) функції і безпека були проаналізовані за допомогою серії тестів і мають дуже високі показники. В результаті користувач отримує стабільний і надійний веб-сервер, який підходить для застосування в якості сервера електронної комерції.

Тип інсталяції Nginx

Новачкам потрібно правильно застосувати параметри інсталяції, щоб розгорнути сервер. Існує кілька варіантів установки Nginx Ubuntu:
  • З готового пакету Debian/Ubuntu.
  • З готового пакету репозиторію Nginx.
  • З вихідного коду.
  • Установка з готового пакету (Debian/Ubuntu) як з ядром, так і з модулем за умовчанням виконується дуже легко разом з процесом оновлення автоматично. Процес здійснюється за програмою, що складається із стабільної версії і декількох опцій модуля.

    Установка Nginx Ubuntu з пакету репозиторію також проста, як і з операційної системи за замовчуванням. Можна вибрати: використовувати стабільну версію або основну. Крім того, можна більш гнучко підібрати динамічний модуль, який планується застосовувати. Останній відрізняється від статичного модуля, але деякі з них можна перетворити в динамічні. Для Nginx процес оновлення ядра досить складний, тому повинен виконуватися вручну.

    Попередньо зібраний пакет

    Якщо потрібна велика гнучкість, то установка Nginx з вихідних кодів – це правильний вибір. Всі модулі використовують у міру необхідності, можна змінити основний код. Виконання Nginx Ubuntu install з готового пакету:
    Nginx Ubuntu: установка і настройка
    Для того щоб встановити цю схему за промовчанням, перевіряють Ubuntu або Debian Web, щоб побачити, які вбудовані модулі в Full. Далі інсталюють ЗА попередньо зібраного пакету Repository.
    Nginx Ubuntu: установка і настройка
    Після цього додають наступний ключ підпису, щоб гарантувати, що репозиторій і пакети перераховані в зв'язці ключів менеджера (apt).

    Алгоритм установки:
  • Далі додають репозиторій Nginx за замовчуванням з пакету Ubuntu або Debian.
  • Для цього визначають репозиторій у файлі пакету sources.list.
  • Спочатку відкривають файл sources.list в консолі nano в якості редактора файлів.
  • Після відкриття файлу додають репозиторій в нижню рядок з загальним шаблоном.
  • Зберігають зміни, натиснувши Ctrl + x -> Y -> Enter.
  • Після цього можна інсталювати Nginx звичайним способом.
  • Стабільна версія Nginx Ubuntu server буде встановлена в систему. Де:
  • {ОС Linux} - Ubuntu або Debian;
  • {codename} - назва використовуваної ОС.
  • Кодове ім'я можна побачити в наступній таблиці.
    Nginx Ubuntu: установка і настройка
    Код установки.
    Nginx Ubuntu: установка і настройка

    Налаштування NGINX Ubuntu 1804

    В даний час кращий спосіб встановити модель 1804 це використовувати версію, включену в репозиторії Ubuntu. Конфігураційні файли NGINX зберігаються в /etc/nginx/conf.d/. Як правило, потрібно самостійний файл в цьому каталозі для кожного домену або субдомену.
    Алгоритм установки NGINX в Ubuntu:
  • Копіюють файл за умовчанням.
  • Замінюють example.com доменним ім'ям сайту або публічним IP.
  • Відключають файл за умовчанням, додавши .disabled до його імені.
  • Відкривають файл в редакторі.
  • Замінюють у директиві доменне ім'я або IP сайту.
  • Для готового контенту, наприклад, установки WordPress або статичних файлів, замінюють шлях в root-директиві на шлях до контенту сайту.
  • Nginx Ubuntu: установка і настройка
    Тестування NGINX:
  • Перевіряють конфігурацію на помилки.
  • Перезавантажують версію.
  • Переходять до IP Linode в браузері, після чого з'явиться сторінка NGINX.
  • Додавання нового сайту на сервер

    ЗА стека LEMP демонструє групу, яку можна використовувати для обробки динамічних сторінок і додатків. Внутрішні дані зберігаються в MySQL, а динамічні процеси обробляються PHP Ubuntu Nginx. Вимоги:
  • Клієнти SSH, наприклад, Bitvise або Putty, з інструкціями про те, як їх використовувати.
  • Базові знання загальних команд Unix для SSH до сервера.
  • Сервер або VPS з мінімальною оперативною пам'яттю 256 МБ (OpenVZ). Рекомендується використовувати 512 МБ, якщо використовується KVM або Xen.
  • Ubuntu 1604 між 32 або 64 бітами.
  • Передумова:
  • Надає сервер Ubuntu.
  • Встановлює повний LAMP (Ubuntu Nginx Apache, MySQL, Perl /PHP /Python) на сервер Ubuntu.
  • Створення веб-каталогу

    Веб-каталоги - це списки або папки на сервері, де зберігаються або розміщуються всі файли. Вхід в нього виконують за допомогою Terminal, Putty і Bitvise.
    Далі необхідний каталог. Нижче ця команда створює дві директорії для двох сайтів, наприклад, якщо потрібно додати лише один сайт, просто вказують один раз, замість domain1.tld і domain2.tld прописують потрібний домен. Далі встановлюють власника каталогу на www-data і рекурсивно змінюють права доступу до каталогу. Розміщують наступний після цього створюють тестовий файл index.html, зберігають і виходять з редактора, натиснувши Ctrl+O, потім Cotrol+X.
    Nginx Ubuntu: установка і настройка

    Створення блочного сервісу

    Файл блоку сервера Nginx зберігається всередині, потім поміщають цю конфігурацію туди і замінюють «xxxx» своїм власним IPv4 або IPv6-адреси. Зберігають і виходять з редактора, натиснувши Ctrl+O потім Control+X. Після цього виконують аналогічні дії для іншого сайту.
    Nginx Ubuntu: установка і настройка
    Далі можна активувати кожен блок сервера. В цілях безпеки редагують nginx.conf і активують опцію: «Розмір хеш-пам'яті імен», видаляють символ коментаря (#). Натискають Control+O для збереження і Control+X для виходу з редактора. Тепер тестують конфігурацію і підтверджують Ok.

    Нарешті, виконують reload або restart, щоб сервіс перезавантажився. Потім налаштовують дані DNS домену або редагують файл локального хоста на комп'ютері, щоб протестувати пакет. Запускають веб-браузер і пробують отримати доступ до VPS через доменне ім'я.

    Розміщення HTTP-Сервера

    Nginx Ubuntu: установка і настройка
    HTTP-сервер Nginx (Engine-X) - найбільш популярних з аналогів, що використовуються в Інтернеті. Він легкий, стабільний, готовий до роботи, який може використовуватися будь-якою людиною для створення потужних і динамічних веб-сайтів. Він також може служити проксі-сервером, що робить його відмінним вибором для безпеки завантажених і популярних веб-сайтів. Установка HTTP-сервера Nginx:
  • Встановлюють сервер. Пакети можна отримати у програмному сховище Ubuntu, все, що потрібно зробити, це запустити команду apt.
  • Після того як сервер буде встановлений, налаштовують брандмауер для вирішення трафіку HTTP. За замовчуванням брандмауер Ubuntu не включений. В деяких випадках він включається автоматично з міркувань безпеки.
  • Якщо включений брандмауер, наведені однорядкові команди повинні дозволяти HTTP-трафік, як на порт 80 так і на порт 443. Якщо перевірити стан брандмауера, можна побачити, що HTTP Full дозволений звідки завгодно, включаючи трафік v6.
  • Відкривають доступ до сторінки веб-сайту Nginx за замовчуванням або переходять по IP сервера або хоста.
  • При установці HTTP-сервера Nginx будуть створені додаткові папки. Вони містять файли конфігурації, налаштування і інші вищевказані каталоги, є найбільш використовуваними на сервері.
  • Використання зворотного проксі

    Nginx Ubuntu: установка і настройка
    Зворотний проксі - це сервер, який знаходиться між внутрішніми і зовнішніми додатками клієнтами, перенаправляючи клієнтські запити. Хоча багато поширені програми, такі як Node.js можуть працювати як сервери самостійно, NGINX є ряд розширених функцій балансування навантаження, безпеки та прискорення цих функцій немає в більшості спеціалізованих програмах. Використання NGINX в якості зворотного проксі-сервера дозволяє додавати ці функції в будь-який додаток.
    Для цього використовується простий Node.js щоб продемонструвати, як налаштувати NGINX в якості зворотного проксі-сервера. Установка проксі:
  • Ці кроки встановлюють Mainline в Ubuntu з офіційного репозиторію NGINX Inc. Для інших дистрибутивів потрібно ознайомитися з керівництвом адміністратора, щоб отримати інформацію про налаштування для виробничих середовищ.
  • Відкривають /etc/apt/sources.list текстовий редактор і додають наступну рядок внизу.
  • Замінюють codename у цьому прикладі на кодове ім'я встановленої версії.Наприклад, для Ubuntu Nginx php-fpm з ім'ям Bionic Beaver прописують bionic.
  • Імпортують ключ підпису пакета репозиторію і додають його в apt.
  • Переконуються, що сервер запущено і буде включений автоматично при перезавантаженні.
  • Приклад програми

    Nginx Ubuntu: установка і настройка
    Використовують curl для завантаження сценарію установки, наданого NodeSource. Замінюють версію Node в curl-команді тієї, яку треба розмістити. Запускають скрипт:
  • Сценарій apt-get update запуститься автоматично, тож можна відразу встановити Node.js.
  • Диспетчер пакетів вузлів (NPM) буде розпакований разом з Node.js.
  • Створюють каталог програми.
  • Ініціалізують додаток Node.js в каталозі.
  • Приймають всі значення за замовчуванням при появі запиту.
  • Встановлюють Express.js: npm install --save express.
  • Використовують текстовий редактор для створення та додавання наступного вмісту: app.js.
  • Запускають програму.
  • В окремому вікні терміналу використовують curl, щоб переконатися, що працює.
  • Налаштування Node.js

    На цьому етапі можна налаштувати Node.js так, щоб він служив прикладом програми на загальнодоступному IP-адресі Linode, що дозволило б виставити його в Інтернеті. Замість цього розділу виконує установку php Ubuntu Nginx для пересилання всіх запитів з загальнодоступного IP на сервер з прослуховуванням localhost. Базова конфігурація для NGINX із зворотним проксі: створюють файл, заміняють у цьому прикладі example.com, домен або публічний IP-адресу.
    Nginx Ubuntu: установка і настройка
    Директива proxy_pass - це конфігурація зворотного проксі. Вона вказує, що всі запити, які відповідають блоку місця розташування, в даному випадку кореневого шляху, повинні бути перенаправлені на порт 3000 на localhost з запущеним Node.js. Процедура установки:
  • Відключають або видаляють сторінку за замовчуванням Welcome to NGINX:sudo mv /etc/nginx/conf.d/default.conf /etc/nginx/conf.d/default.conf.disabled.
  • Перевіряють конфігурацію: sudo nginx -t.
  • Якщо про помилки не повідомляється, перезавантажують нову:sudo nginx -s reload.
  • У браузері переходять до спільного IP-адресою Linode, з'явиться повідомлення Hello World!
  • Додаткові параметри: постійне посилання

    Nginx Ubuntu: установка і настройка
    Для простого додатка proxy_pass досить директиви. Однак для більш складних можуть знадобитися додаткові параметри. Наприклад, Node.js часто використовується для тих випадків, які вимагають багато взаємодій в реальному часі. Щоб пристосуватися, відключають функцію буферизації Nginx Ubuntu ssl. Можна додати або змінити заголовки, які пересилаються разом з проксі-запитами proxy_set_header. Ця конфігурація використовує вбудовану $remote_addr-змінну для відправки IP-адреси вихідного клієнта на проксі-хост. Одним з переваг зворотного проксі-сервера є простота налаштування HTTPS з сертифікатом TLS. Certbot - це інструмент, що дозволяє швидко отримати безкоштовні сертифікати від let's Encrypt. Можна використовуватися Certbot в Ubuntu 1604 офіційний сайт містить докладні інструкції по установці і застосування основних дистрибутивів. Після отримання сертифікатів через Certbot, він автоматично оновить файли для використання нового сертифіката. Certbot запросить інформацію про сайт. Відповіді будуть збережені як частина сертифіката.
    Nginx Ubuntu: установка і настройка
    Certbot також запитає, чи потрібно автоматично перенаправити HTTP-трафік на HTTPS. Рекомендується вибрати цю опцію. Після завершення роботи інструменту Certbot збереже згенеровані ключі і видані сертифікати в /etc/letsencrypt/live/$domain каталозі, де $domain ім'я домену, введене на етапі створення сертифіката Certbot. Certbot рекомендує вказувати конфігурацію веб-сервера в каталозі сертифікатів за замовчуванням або створювати символічні посилання. Ключі та сертифікати не слід переміщати в інший каталог. Нарешті, Certbot оновить сервер, щоб він використовував новий сертифікат, а також перенаправляє HTTP-трафік на HTTPS, якщо вибрана ця опція. Якщо на Linode брандмауер, можна додати його правило, щоб дозволити вхідні і вихідні підключення до служби HTTPS. В Ubuntu UFW - це широко використовуваний і простий інструмент для управління правил брандмауера.
    Nginx Ubuntu: установка і настройка
    Однією з вимог для реалізації програми або веб-сайту є наявність веб - або HTTP-сервера на стороні сервера, який виконує обробку. Останній встановлює двонаправлені або односпрямовані з'єднання з клієнтом і генерує відповідь на зроблені запити. Тому - це невід'ємна частина веб-інфраструктури. Статистично Nginx - це зростаючий веб-сервер, який привертає все більше і більше веб-майстрів по всьому світу. Порівняно з Apache та іншими веб-серверами, Nginx значно перевершує по швидкості обробки одночасних сеансів, часу відгуку і використання ресурсів. Це пов'язано з архітектурою і розумною обробкою сполук. Ще однією перевагою, пропонованим Nginx, є асинхронна архітектура, яка покращує обслуговування одночасних з'єднань.

    Популярі новини
    Загрузка...