Nginx je jedním z nejlepších webových serverů s otevřeným zdrojovým kódem a nástrojem pro vyrovnávání zatížení HTTP. Používá se také jako reverzní proxy server a HTTP cache. Nginx si od svého vydání získal popularitu díky efektivnímu využití zdrojů a citlivosti při zatížení. Je rychlejší při doručování statického obsahu a zároveň spotřebovává méně zdrojů.
Zde na LinuxAPT se podíváme na to, jak nainstalovat Nginx na systém openSUSE Leap 15.3 různými způsoby.
Poznámka:K instalaci Nginx budete potřebovat oprávnění sudo. Také se ujistěte, že žádný Apache nebo jiný proces neposlouchá na portech 80 nebo 443.
Můžete se naučit, jak nainstalovat Nginx na Ubuntu a CentOS, pokud používáte tyto distribuce Linuxu.
a. Instalace Nginx přes výchozí úložiště openSUSE
Chcete-li nainstalovat Nginx dostupný ve výchozích úložištích openSUSE, postupujte podle následujících kroků:
1. Spuštěním příkazu níže obnovte / aktualizujte své systémové úložiště:
$ sudo zypper refresh
2. Poté spusťte níže uvedený příkaz a nainstalujte Nginx na váš systém openSUSE:
$ sudo zypper install nginx
Poté vám budou poskytnuty podrobnosti o instalaci, jako jsou balíčky, které se nainstalují na váš systém openSUSE, jejich celková velikost ke stažení a místo na disku, které bude použito. Po zadání podrobností budete požádáni o potvrzení, zda chcete v postupu pokračovat. Pokračujte stisknutím y a poté klávesy Return.
Nyní bude Nginx nainstalován na váš systém openSUSE.
3. Spuštěním níže uvedeného příkazu povolte službu Nginx:
$ sudo systemctl enable nginx
Poté spusťte službu Nginx pomocí níže uvedeného příkazu:
$ sudo systemctl start nginx
Chcete-li ověřit stav Nginx, spusťte níže uvedený příkaz:
$ sudo systemctl status nginx
Výstup bude indikovat, že služba Nginx běží, pokud je vše v pořádku.
Chcete-li zobrazit verzi balíčku Nginx nainstalovaného ve vašem systému openSUSE, spusťte níže uvedený příkaz:
$ sudo nginx -v
b. Instalace Nginx přes oficiální web openSUSE
Zde nainstalujeme Nginx přidáním úložiště dostupného na webu openSUSE. Prostřednictvím této metody můžete mít ve svém systému aktualizovanou verzi Nginx.
Nyní postupujte podle následujících kroků:
1. Chcete-li nainstalovat nejnovější verzi Nginx do vašeho openSUSE, přidejte úložiště pomocí níže uvedeného příkazu:
$ sudo zypper addrepo https://download.opensuse.org/repositories/server:http/openSUSE_Leap_15.3/server:http.repo
2. Po přidání úložiště spusťte níže uvedený příkaz k obnovení indexu místního úložiště:
$ sudo zypper refresh
Tento příkaz vás vyzve k přijetí nebo odmítnutí klíče GPG pro úložiště, které jste přidali. Zadejte a a stiskněte Enter pro přijetí klíče GPG.
3. Nyní můžete nainstalovat nejnovější verzi Nginx pomocí níže uvedeného příkazu:
$ sudo zypper install nginx
Poté dostanete informace o instalaci Nginx, jako jsou balíčky, které se nainstalují na váš systém openSUSE, jejich celková velikost ke stažení a místo na disku, které bude použito. Po zadání informací budete požádáni o potvrzení, zda chcete v postupu pokračovat. Pokračujte stisknutím y a poté klávesy Return.
Nyní bude Nginx nainstalován na váš systém openSUSE.
4. Spuštěním níže uvedeného příkazu povolte službu Nginx:
$ sudo systemctl enable nginx
Poté spusťte službu Nginx pomocí příkazu níže:
$ sudo systemctl start nginx
Chcete-li ověřit stav Nginx, spusťte níže uvedený příkaz:
$ sudo systemctl status nginx
Výstup bude indikovat, že služba Nginx běží.
Chcete-li zobrazit verzi balíčku Nginx nainstalovaného ve vašem systému openSUSE, spusťte níže uvedený příkaz:
$ sudo nginx -v
Jak nakonfigurovat Firewall pro Nginx na openSUSE?
Budete také muset nakonfigurovat bránu firewall, aby otevřela porty http a https používané Nginx.
Chcete-li najít výchozí zónu ve vaší bráně firewall, spusťte příkaz níže:
$ sudo firewall-cmd --get-default-zone
Ve výstupu můžete zjistit výchozí zónu vašeho firewallu.
Poté použijte níže uvedený příkaz k otevření portu http ve vašem firewallu:
$ sudo firewall-cmd --permanent --zone=public --add-service=http
Pomocí níže uvedeného příkazu otevřete https port ve vašem firewallu:
$ sudo firewall-cmd --permanent --zone=public --add-service=https
„Veřejnou“ zónu můžete nahradit zónou, která je aktuálně nastavena jako výchozí zóna.
Poté pro použití změn spusťte níže uvedený příkaz:
$ sudo firewall-cmd --reload
Jak otestovat Nginx nainstalovaný v systému openSUSE?
1. Nyní pro testování serveru Nginx vytvořte soubor index.html ve složce /srv/www/htdocs:
$ sudo nano /srv/www/htdocs/index.html
2. Přidejte níže uvedené řádky do souboru index.html:
html>
<body>
<h1>......Welcome to NGINX!......</h1>
</body>
</html>
3. Uložte a zavřete soubor index.html.
4. Restartujte službu Nginx pomocí příkazu níže:
$ sudo systemctl restart nginx
5. Nyní spusťte na svém systému libovolný webový prohlížeč a do adresního řádku zadejte localhost nebo svou IP adresu. Pokud je Nginx nainstalován správně, zobrazí se "Vítejte v NGINX!" stránku.
Jak zabezpečit Nginx pomocí Let's Encrypt SSL Free Certificate?
V ideálním případě byste chtěli spustit svůj Nginx na HTTPS pomocí certifikátu SSL. Nejlepším způsobem, jak toho dosáhnout, je použít Let’s Encrypt, bezplatnou, automatizovanou a otevřenou certifikační autoritu provozovanou neziskovou organizací Internet Security Research Group (ISRG).
1. Nainstalujte balíček certbot následovně:
$ sudo zypper install python3-certbot-nginx
2. Po instalaci spusťte následující příkaz pro zahájení vytváření vašeho certifikátu:
$ sudo certbot --nginx --agree-tos --redirect --hsts --staple-ocsp --email [email protected] -d www.example.com
Toto ideální nastavení zahrnuje vynucené přesměrování HTTPS 301, hlavičku Strict-Transport-Security a sešívání OCSP. Jen nezapomeňte upravit e-mail a název domény podle svých požadavků.
Nyní bude vaše adresa URL HTTPS://www.example.com namísto HTTP://www.example.com.
Pokud použijete starou HTTP URL, bude automaticky přesměrována na HTTPS.
3. Volitelně můžete nastavit úlohu cron pro automatické obnovení certifikátů. Certbot nabízí skript, který to dělá automaticky, a vy můžete nejprve otestovat, abyste se ujistili, že vše funguje tak, že provedete zkušební provoz:
$ sudo certbot renew --dry-run
4. Pokud vše funguje, otevřete okno crontab pomocí následujícího příkazu terminálu:
$ sudo crontab -e
5. Dále zadejte čas, kdy se má automaticky obnovit. Toto by mělo být kontrolováno minimálně denně, a pokud je potřeba certifikát obnovit, skript certifikát neaktualizuje:
00 00 */1 * * /usr/sbin/certbot-auto renew
Pro uložení stiskněte ESCAPE a poté napište :wq! pro uložení souboru. Případně pro ukončení bez uložení napište :qa!
Jak odinstalovat Nginx z vašeho systému openSUSE?
Pokud někdy budete potřebovat odinstalovat Nginx, můžete tak učinit pomocí níže uvedeného příkazu:
$ sudo zypper remove nginx
Pokud budete vyzváni, zadejte heslo sudo. Poté vám zmíní balíčky, které budou z vašeho systému openSUSE odinstalovány, a místo na disku, které se uvolní. Poté budete požádáni o potvrzení, zda chcete v postupu pokračovat. Stiskněte y a poté klávesu Return pro odstranění Nginx ze systému openSUSE.