Hvernig á að setja upp Nginx á Fedora 35

NGINX er opinn hugbúnaður, ókeypis HTTP netþjónn. Til viðbótar við getu sína á HTTP netþjóninum getur NGINX einnig virkað sem proxy-þjónn fyrir tölvupóst (IMAP, POP3 og SMTP) og öfugt umboð og álagsjafnvægi fyrir HTTP, TCP og UDP netþjóna.

Markmiðið á bak við NGINX var að búa til hraðskreiðasta vefþjóninn sem til er og viðhalda því ágæti er enn aðalmarkmið Nginx verkefnisins. NGINX slær stöðugt út Apache og aðra netþjóna í viðmiðum sem mæla árangur vefþjónsins og er nú vinsælasti notaði vefþjónninn samkvæmt W3Tech.

Í kennslunni muntu læra hvernig á að gera það setja upp og stilla Nginx á Fedora 35 með ókeypis TLS/SSL vottorði frá Let's Encrypt.

Forkröfur

  • Mælt með stýrikerfi: Fedora Linux 35
  • Notendareikningur: Notendareikningur með sudo eða rót aðgang.

Uppfærðu stýrikerfi

Uppfærðu þitt Fedora stýrikerfi til að tryggja að allir núverandi pakkar séu uppfærðir:

sudo dnf uppfærsla --fresh -y

Kennsluefnið mun nota sudo skipun og að því gefnu að þú sért með sudo stöðu.

Til að staðfesta sudo stöðu á reikningnum þínum:

sudo whoami

Dæmi um úttak sem sýnir sudo stöðu:

[joshua@fedora ~]$ sudo whoami rót

Til að setja upp núverandi eða nýjan sudo reikning skaltu fara á kennsluna okkar á Bætir notanda við Sudoers á Fedora.

Til að nota rótarreikningur, notaðu eftirfarandi skipun með rót lykilorðinu til að skrá þig inn.

su

Auglýsing


Settu upp Nginx Stable eða Mainline

Að setja upp Nginx er mjög auðvelt á Fedora dreifingum miðað við sex mánaða útgáfur og stöðug uppfærsla á pakka á sínum tíma þýðir að Nginx er að mestu leyti alltaf uppfært.

Í ljósi þess að Fedora er vön að hafa uppfærðasta pakkana, virkjaðu fyrst aðallínugeymsluna, sem Nginx mælir með að nota.

sudo dnf eining virkja nginx: aðallína

Dæmi úttak:

Hvernig á að setja upp Nginx á Fedora 35

Tegund Y, ýttu síðan á ENTER LYKILL til að halda áfram með uppsetninguna.

Næst skaltu opna flugstöðina þína og framkvæma eftirfarandi skipun til að hefja uppsetningarferlið.

sudo dnf setja upp nginx

Dæmi úttak:

Hvernig á að setja upp Nginx á Fedora 35

Tegund Y, ýttu síðan á ENTER LYKILL til að halda áfram með uppsetninguna.

Þegar uppsetningin hefur verið sett upp skaltu staðfesta uppsetninguna með því að athuga Nginx build útgáfuna.

nginx -v

Dæmi um úttak (með aðallínudæmi):

nginx útgáfa: nginx/1.21.3

Sjálfgefið er að Nginx þjónustan er ekki virkjuð eða virk þegar hún hefur verið sett upp. Til að virkja Nginx skaltu nota eftirfarandi skipun.

sudo systemctl virkja nginx --nú

Athugaðu nú þjónustustöðuna til að staðfesta að Nginx sé í gangi án nokkurra villu.

systemctl staða nginx

Dæmi úttak:

Hvernig á að setja upp Nginx á Fedora 35

Eins og að ofan ætti staðan að vera virkur (hlaupandi). Á þessum tímapunkti hefur þú sett upp Nginx forritið.

Stilla eldveggsreglur

Sjálfgefið er að uppsetningin bætir ekki eldveggsreglum sjálfkrafa við staðalinn port 80 eða 443 tengi þegar þú setur upp Nginx. Áður en þú heldur áfram ættirðu að setja eftirfarandi reglur, þetta fer eftir því hvaða höfn þú munt nota, en allir valkostir eru skráðir.

Opna port 80 eða HTTP:

sudo firewall-cmd --permanent --zone=public --add-service=http

Opnaðu port 443 eða HTTPS:

sudo firewall-cmd --permanent --zone=public --add-service=https

Endurhlaða eldvegg til að gera breytingar í gildi

sudo firewall-cmd --endurhlaða

Auglýsing


Stilla Nginx

Þú þarft að hafa IP tölu netþjónsins tilbúinn til uppsetningar. Auðveldasta leiðin til að gera þetta er með eftirfarandi.

Finndu IP tölu netþjóns

Þú þarft að hafa IP tölu netþjónsins undirbúið fyrir uppsetningu. Auðveldasta leiðin til að gera þetta er með eftirfarandi.

krulla -4 icanhazip.com

Dæmi úttak:

XXX.XXX.XXX.XXX IP vistfang

Ef skipanirnar virka ekki, þá ertu ekki með krullupakkann uppsettan. Keyra eftirfarandi skipun:

sudo dnf install curl -y

Þegar þú hefur fengið IP tölu netþjónsins þíns skaltu opna uppáhalds netvafrann þinn og athuga að sjálfgefna áfangasíðan virki.

http://yfir_server_ip

Þú ættir að fá eftirfarandi síðu í netvafranum þínum.

Dæmi:

Hvernig á að setja upp Nginx á Fedora 35

Settu upp heimildaskrá vefsvæðis

Í kennslunni muntu setja upp lén sem heitir example.com, en þú ættir skiptu þessu út fyrir lénið þitt. Kennslan mun búa til vefskrárnar og stilla vefskrárnar í móðurskránni /var/www/.

Fyrst skaltu búa til möppuna, fyrir example.com, sem hér segir, með því að nota “-p” flagga til að búa til nauðsynlegar móðurskrár:

sudo mkdir -p /var/www/yitt_lén/html

Í öðru lagi þarftu að úthluta eiganda möppunnar.

sudo chown -R $USER:$USER /var/www/your_domain/html

Í þriðja lagi, úthlutaðu heimildum möppunnar, þannig að eigandinn les, skrifar og keyrir skrárnar á meðan hann veitir aðeins les- og framkvæmdaheimildir til hópa og annarra. Þú getur sett inn eftirfarandi skipun:

sudo chmod -R 755 /var/www/yitt_lén

Að öðrum kosti geturðu notað /usr/share/nginx/html skrá í staðinn, en /var/www Mælt er með möppuaðferð fyrir nýja notendur.

Settu upp Test HTML síðu

Í fjórða lagi, búðu til prófunarsíðu sem þú munt nota til að staðfesta að Nginx netþjónninn þinn sé starfhæfur.

nano /var/www/yitt_lén/html/index.html

Inni í nano ritlinum og nýrri skrá hefur þú búið til. Skráðu Eftirfarandi.

<html>
 <head>
  <title>Velkomin á your_domain!</title>
 </head>
 <body>
   <h1>Árangur! Your_domain server blokkin er að virka!</h1>
 </body>
</html>

Vistaðu skrána (CTRL+O), farðu síðan út (CTRL+X).

Búðu til Nginx netþjónablokk

Sjálfgefið er að Nginx miðlarablokkin, svipað og Apache sýndargestgjafi, er meðhöndluð í /etc/nginx/conf.d Skrá. Hins vegar er Nginx uppsetningin mismunandi frá mismunandi útgáfum og dreifingum sem nota annað hvort conf.d eða síður-tiltækar/síður-virkar sjálfgefið. Fyrir kennsluna verða möppur síðunnar notaðar til að halda staðal.

Fyrst skaltu búa til möppurnar sem þarf fyrir síður-tiltækar og vefsvæði virkt.

sudo mkdir /etc/nginx/sites-available sudo mkdir /etc/nginx/sites-enabled

Næst skaltu opna nginx.conf skrána þína og fjarlægja eða skrifa athugasemd við „innihalda /etc/nginx/default.d/*.conf;“.

sudo nano /etc/nginx/nginx.conf

Síðan, beint undir það bæta við innihalda “/etc/nginx/sites-enabled/*.conf;”.

Aðeins dæmi:

# Fyrir frekari upplýsingar um stillingar, sjá: # * Opinber ensk skjöl: http://nginx.org/en/docs/ # * Opinber rússnesk skjöl: http://nginx.org/ru/docs/ user nginx; worker_processes auto; error_log /var/log/nginx/error.log; pid /run/nginx.pid; # Hlaða kraftmiklum einingum. Sjá /usr/share/doc/nginx/README.dynamic. innihalda /usr/share/nginx/modules/*.conf; atburðir {worker_connections 1024; } http { log_format main '$remote_addr - $remote_user [$time_local] "$request" ' '$status $body_bytes_sent "$http_referer" ' '"$http_user_agent"_ "x2Tforwarded_http" "x2Tforwarded_http" access_log /var/log/nginx/access.log aðal; senda skrá á; tcp_nopush á; tcp_nodelay á; keepalive_timeout 65; types_hash_max_size 4096; innihalda /etc/nginx/mime.types; default_type application/octet-stream; ###EDIT HERE### # innihalda /etc/nginx/conf.d/*.conf; innihalda /etc/nginx/sites-enabled/*.conf; }

Eins og að ofan, a „#“ athugasemd var bætt við fela í sér conf.d línu, og innihalda vefsvæði virkt var bætt við.

Vistaðu skrána (CTRL+O) og fara út (CTRL+X).

Næst skaltu búa til stillingarskrá fyrir netþjónblokk. Nafnið your_domain.conf verður notað fyrir kennsluna, en þetta getur verið nefnt hvað sem þú vilt.

sudo nano /etc/nginx/sites-available/your_domain.conf

Þú getur límt eftirfarandi dæmi kóða inn í blokkina. Þetta er bara an Aðeins HTTP-dæmi fyrir grunnpróf.

þjónn { hlusta 80; hlustaðu [::]:80; rót /var/www/yitt_lén/html; index index.html index.htm; server_name your_domain www.your_domain; staðsetning / { try_files $uri $uri/ =404; } }

Dæmið sýnir netþjóninn þinn er að hlusta eftir tveimur netþjónsnöfnum, „yitt_lén“ á höfn 80.

Þú þarft að breyta rótarskránni í nafn/staðsetningu rótarskrárinnar sem þú býrð til.

Virkjað Nginx Server Block

Þú verður að tengja stillingarskrárnar frá síðum sem eru tiltækar við síður sem eru virkar í Nginx skránni þinni til að virkja blokkir á Nginx netþjóni. Þetta er hægt að gera með ln -s skipuninni sem hér segir.

sudo ln -s /etc/nginx/sites-available/your_domain.conf /etc/nginx/sites-enabled/

Lokastilling og prófun

Á lokastigi þarftu að opna sjálfgefið þitt nginx.conf skrá.

sudo nano /etc/nginx/nginx.conf

Og afskrifaðu eftirfarandi línu.

server_names_hash_bucket_size 64;

Stærð kjötkássafötu þjónsnafns er breytt þar sem stundum koma upp vandamál við að bæta við fleiri netþjónum.

Næst skaltu prófa Nginx til að ganga úr skugga um að það virki áður en þú endurræsir rétt.

sudo nginx -t

Úttakið ætti að vera ef engar villur í setningafræðinni:

nginx: stillingarskráin /etc/nginx/nginx.conf setningafræði er í lagi nginx: stillingarskrá /etc/nginx/nginx.conf prófið heppnaðist

Ef þú hefur eftirfarandi í lagi framleiðsla skaltu endurræsa Nginx netþjóninn til að breytingarnar eigi sér stað.

sudo systemctl endurræstu nginx

Opnaðu nú netvafrann þinn og sláðu inn lén netþjónsins. Þú ættir að sjá netþjónablokkina þína er í beinni.

Hvernig á að setja upp Nginx á Fedora 35

Öruggt Nginx með Let's Encrypt SSL Free Certificate

Helst myndirðu vilja keyra Nginx þinn á HTTPS með SSL vottorði. Besta leiðin til að gera þetta er að nota Við skulum dulkóða, ókeypis, sjálfvirkt og opið vottunaryfirvald rekið af Internet Security Research Group (ISRG) sem ekki er rekin í hagnaðarskyni.

Settu upp certbot pakki eins og hér segir:

sudo dnf settu upp python3-certbot-nginx -y

Þegar það hefur verið sett upp skaltu keyra eftirfarandi skipun til að hefja gerð vottorðsins þíns:

sudo certbot --nginx --agree-tos --redirect --hsts --hefta-ocsp --netfang þér@example.com -d www.example.com

Þetta er tilvalin uppsetning sem inniheldur þvingaða HTTPS 301 tilvísanir, Strict-Transport-Security haus og OCSP heftingu. Gakktu úr skugga um að laga tölvupóstinn og lénið að þínum þörfum.

Nú verður vefslóðin þín HTTPS://www.example.com í staðinn fyrir HTTP://www.example.com.

Athugið, ef þú notar gamla HTTP vefslóð, mun það sjálfkrafa vísa til HTTPS.

Valfrjálst geturðu stillt cron starf til að endurnýja vottorðin sjálfkrafa. Certbot býður upp á handrit sem gerir þetta sjálfkrafa, og þú getur fyrst prófað til að ganga úr skugga um að allt virki með því að framkvæma þurrkeyrslu.

sudo certbot endurnýja --dry-run

Ef allt virkar skaltu opna crontab gluggann þinn með því að nota eftirfarandi flugstöðvaskipun.

sudo crontab -e

Næst skaltu tilgreina tímann þegar það ætti að endurnýja sjálfkrafa. Þetta ætti að vera athugað daglega að lágmarki og ef endurnýja þarf vottorðið mun handritið ekki uppfæra vottorðið. Ef þú þarft hjálp við að finna góðan tíma til að stilla skaltu nota crontab.guru ókeypis tól.

00 00 */1 * * /usr/sbin/certbot-sjálfvirk endurnýjun

Vista (CTRL+O) farðu síðan út (CTRL+X), og cronjob verður sjálfkrafa virkt.


Auglýsing


Umsjón með Nginx þjónustu

Nú þegar þú hefur Nginx keyrt á netþjóninum þínum með góðum árangri, eru nokkrar grunntónar stjórnunar sem hér segir.

Til að stöðva Nginx vefþjón:

sudo systemctl stöðva nginx

Til að ræsa Nginx vefþjón:

sudo systemctl byrja nginx

Til að endurræsa Nginx vefþjóninn:

sudo systemctl endurræstu nginx

Til að endurhlaða Nginx vefþjóninn (Fyrir fleiri minniháttar breytingar sem ekki krefjast endurræsingar):

sudo systemctl endurhlaða nginx

Til að slökkva á Nginx við ræsingu miðlara:

sudo systemctl slökkva á nginx

Til að ræsa Nginx við ræsingu miðlara (Sjálfvirkt virkt við uppsetningu):

sudo systemctl virkja nginx

Hvernig á að fá aðgang að Nginx netþjónaskrám

Nginx Logs Directory

Sjálfgefið er að allir NGINX aðgangs-/villuskrár, nema þú hafir breytt þeim, eru staðsettir í annálaskránni, sem eftirfarandi skipun getur skoðað.

Farðu fyrst að skráarskránni og skráðu skrárnar:

cd /var/log/nginx && ls -l

Þú ættir að finna eftirfarandi aðgangs- og villuskrár:

Aðgangsskrá:

/var/log/nginx/access.log

Villuskrá:

/var/log/nginx/error.log

Til að skoða logs í rauntíma í flugstöðinni þinni með því að nota sudo tail -f /location/of/log path skipunina.

Dæmi:

sudo tail -f /var/log/nginx/access.log

Annar valkostur er að prenta síðasta X magn af línum. Til dæmis er X skipt út fyrir 30 til að prenta 30 línur með því að bæta við -n 30 fáni.

sudo tail -f /var/log/nginx/access.log -n 30

Þetta eru bara nokkur dæmi um lestur annála og grep getur líka verið gagnlegt.

Hvernig á að stilla Nginx Log Rotate

Nginx setur sjálfkrafa upp snúning annála og stillir það sjálfgefið sem er að snúa daglega. Þú getur breytt þessum stillingum með því að opna skrána eins og sýnt er hér að neðan.

sudo nano /etc/nginx/logrotate.d/nginx

Næst muntu sjá sömu ef ekki svipaða skráaruppbyggingu. Þú getur breytt innihaldinu hér. Aðallega er hægt að breyta því hversu mörgum annálum á að halda eða fara úr daglega í vikulega. Þetta ætti að vera sjálfgefið nema þú hafir sérstakar skráningarþarfir fyrir hugbúnað eins og fail2ban eftirlit eða álíka.

/var/log/nginx/*.log { daily missingok rotate 14 compress delaycompress notifempty create 0640 www-data adm sharedscripts forrotate if [ -d /etc/logrotate.d/httpd-prerotate ]; þá \ run-parts /etc/logrotate.d/httpd-prerotate; \ fi \ endscript postrotate invoke-rc.d nginx rotate >/dev/null 2>&1 endscript }

Helstu stillingarnar sem þú vilt líklega breyta eru eftirfarandi:

  • Daglega - Þessu er hægt að breyta í vikulega, mánaðarlega. Þessu ætti að halda daglega, annars verður erfitt að fara í gegnum annálaskrána.
  • Snúa 14 - Þetta er hversu marga loga á að geyma og fjarlægja, svo að hámarki eru aðeins 14 logs, ef þú vilt aðeins halda 7 daga virði af logs breyttu þessu í 7.

Mælt er með því að snerta ekki neinar aðrar stillingar nema þú vitir hvað þú ert að gera.


Auglýsing


Hvernig á að uppfæra Nginx

Nginx verður sjálfgefið uppfært þegar ný útgáfa kemur á geymslurnar. Áður en þú uppfærir er alltaf ráðlagt að taka öryggisafrit af Nginx skránni þinni eða, að minnsta kosti, nginx.conf skrá. Þú getur gert annað hvort með eftirfarandi skipun.

Taktu öryggisafrit af nginx.conf (mjög mælt með):

sudo cp /etc/nginx/nginx.conf /etc/nginx/nginx-backup.conf

Taktu öryggisafrit af allri Nginx möppunni þinni ef þú vilt:

sudo cp /etc/nginx/ /etc/nginx-bkup

Næst skaltu keyra venjulegu uppfærsluskipunina.

sudo dnf uppfærsla --fresh

Ef uppfærsla er tiltæk skaltu keyra uppfærsluna.

Þú gætir verið beðinn um þetta meðan á uppfærslu eða uppsetningu stendur, en að gera þetta handvirkt fyrirfram er frekar nauðsynlegt. Fyrir stórar Nginx stillingar margra vefsvæða væri enn hagstæðara að taka öryggisafrit af einhverju eins og Github eða Gitlab.

Hvernig á að fjarlægja (fjarlægja) Nginx

Til að fjarlægja Nginx ef þú notar það ekki lengur er hægt að gera þetta með eftirfarandi skipun:

sudo dnf sjálfvirkt fjarlægja nginx

Þessi skipun mun einnig fjarlægja allar ónotaðar ósjálfstæði sem fylgdu uppsetningunni.

Til að endurstilla nginx eininguna úr aðallínu aftur í sjálfgefið, notaðu eftirfarandi skipun.

sudo dnf einingar endurstilla nginx

Auglýsing


Athugasemdir og niðurstaða

Í kennslunni hefur þú lært að setja upp og setja upp grunn Nginx stillingar á léninu þínu á Fedora 35 Workstation eða Server, ásamt því að búa til ókeypis SSL vottorð með Let's Encrypt. Á heildina litið er Nginx mest notaði og vinsælasti vefforritahugbúnaðurinn núna, þar sem hver mánuður og ár fer fram úr því að taka meiri markaðshlutdeild frá Apache.

Sumir nýir keppinautar eru farnir að skjóta upp kollinum, eins og Openlitespeed, en í ljósi þessara annarra vefforrita, í augnablikinu, einbeittu þér að ákveðnum hlutum eins og WordPress. Nginx mun verða vefforritið sem þú vilt nota í nokkurn tíma.

Gerast áskrifandi
Tilkynna um
0 Athugasemdir
Innbyggð endurgjöf
Skoða allar athugasemdir
0
Mér þætti vænt um hugsanir þínar, vinsamlegast kommentaðu.x