Täydellinen opas turvallisen Nginx-käänteisen välityspalvelimen rakentamiseen
Turvallisen, luotettavan ja skaalautuvan käänteisen välityspalvelimen luominen on ratkaisevan tärkeää yrityksille ja IT-ammattilaisille, jotka hallinnoivat paljon liikennettä käyttäviä verkkosivustoja tai monimutkaisia sovelluksia. Nginx, avoimen lähdekoodin web-palvelin ja käänteinen välityspalvelin, on tehokas ratkaisu taustapalveluiden liikenteen reitittämiseen, optimointiin ja suojaamiseen. Tässä oppaassa käymme läpi vankan käänteisen välityspalvelimen määrittämisen Nginxin avulla Ubuntu 24.04:ssä ja käsittelemme tärkeitä vaiheita, kuten TLS-salausta, nopeusrajoitusta ja integrointia Cloudflaren kanssa.
Jos hallinnoit yritystason verkkosivustoja, verkkokauppa-alustoja tai mediapalvelimia, tämä opas auttaa sinua parantamaan suorituskykyä, varmistamaan käyttöajan ja suojaamaan infrastruktuuriasi haavoittuvuuksilta.
Mikä on Nginx-käänteinen välityspalvelin?
Nginx-käänteinen välityspalvelin toimii välittäjäpalvelimena asiakkaiden ja taustapalveluiden välillä. Se välittää asiakaspyynnöt asianmukaiselle taustapalvelimelle, optimoi kuormituksen jakautumisen, parantaa tietoturvaa ja ottaa käyttöön ominaisuuksia, kuten välimuistin, SSL-päättämisen ja liikenteen suodatuksen. Tämä kokoonpano on erityisen hyödyllinen mediapalvelimien, usean sivuston sovellusten ja palomuurien takana olevien palveluiden isännöintiin.
sbb-itb-59e1987
Miksi tarvitset käänteisen välityspalvelimen
Käänteinen välityspalvelin tarjoaa useita keskeisiä etuja:
- Parannettu suojausPiilottaa taustapalvelimien IP-osoitteet ja mahdollistaa salauksen TLS/SSL-salauksen kautta.
- Kuorman tasapainotusJakaa liikenteen tasaisesti useiden taustapalvelimien kesken.
- OptimointiVähentää viivettä ja parantaa resurssien tehokkuutta.
- skaalautuvuusHelpottaa vilkkaasti liikennöityjen tilanteiden hallintaa.
- Hallinnan helppousYksinkertaistaa useiden taustapalveluiden konfigurointia yhtenäisen toimialueen takana.
Tässä opetusohjelmassa näytämme, miten:
- Aseta Nginx käänteiseksi välityspalvelimeksi.
- Suojaa asetukset Let's Encrypt TLS -varmenteilla.
- Määritä edistyneitä optimointeja, kuten nopeuden rajoittaminen ja pyyntöjen edelleenlähetys.
- Integroi Cloudflare ohittaaksesi internet-palveluntarjoajan porttirajoitukset.
Vaihe 1: Nginxin ja Certbotin asentaminen Ubuntu 24.04:ään
Päivitä järjestelmäsi
Ennen minkään ohjelmiston asentamista varmista, että järjestelmäsi on ajan tasalla:
sudo apt -päivitys ja sudo apt -päivitys Asenna Nginx ja Certbot
Asenna Nginx ja Certbot Nginx-laajennuksella seuraavilla komennoilla:
sudo apt install nginx -y sudo apt install certbot python3-certbot-nginx -y Varmista asennus
Varmista, että Nginx on käynnissä:
sudo systemctl status nginx Testaa käyttöoikeus määrittämällä palvelimesi IP-osoite:
ip a Siirry IP-osoitteeseen selaimessa. Jos se onnistuu, näet Nginxin oletusarvoisen aloitussivun.
Vaihe 2: Palomuurisääntöjen määrittäminen
Ota käyttöön yksinkertainen palomuuri (UFW)
UFW:n avulla voit hallita palomuurisääntöjä helposti:
sudo ufw salli 'Nginx Full' sudo ufw salli OpenSSH:n sudo ufw salli Tarkista palomuurin tila varmistaaksesi, että oikeat portit ovat auki:
sudo ufw -tila Vaihe 3: Nginx-välityspalvelimen kokoonpanon määrittäminen
Luo mukautettuja määritystiedostoja
Paremman joustavuuden ja turvallisuuden takaamiseksi käytä koodikatkelmia tiettyjen määritysten tallentamiseen. Luo seuraavat tiedostot:
- Suojausotsikot:
Määritä suojausotsikot suojauksen parantamiseksi:sudo nano /etc/nginx/snippets/security-headers.confadd_header X-Frame-Options "SAMEORIGIN"; add_header X-Content-Type-Options "nosniff"; add_header X-XSS-Protection "1; mode=block"; - Välityspalvelimen asetukset:
Optimoi pitkät striimit ja estä hitaat vastaukset:sudo nano /etc/nginx/snippets/proxy.confproxy_connect_timeout 60s; proxy_send_timeout 60s; proxy_read_timeout 60s; - Nopeusrajoitukset:
Lievennä liiallisia pyyntöjä:sudo nano /etc/nginx/snippets/rate-limit.conflimit_req_zone $binary_remote_addr zone=mylimit:10m rate=10r/s;
Sisällytä koodinpätkät pääasetuksiin
Muokkaa Nginxin pääkonfiguraatiota:
sudo nano /etc/nginx/nginx.conf Lisää seuraava kohdan alle http lohko:
sisällytä /etc/nginx/snippets/*.conf; Käynnistä Nginx uudelleen muutosten käyttöönottamiseksi:
sudo systemctl lataa nginx uudelleen Vaihe 4: Käänteisen välityspalvelimen määrittäminen taustapalvelulle
Luo virtuaalipalvelin
Luo konfiguraatiotiedosto taustapalvelullesi:
sudo nano /etc/nginx/sites-available/jellyfin Esimerkki Jellyfin-mediapalvelimen kokoonpanosta:
palvelin { listen 80; palvelimen_nimi jelly.omaverkkotunnus.com; sijainti / { proxy_pass http://10.10.0.112:8096; include /etc/nginx/snippets/proxy.conf; } } Ota sivusto käyttöön luomalla symbolinen linkki:
sudo ln -s /etc/nginx/sites-available/jellyfin /etc/nginx/sites-enabled/ Nginxin testaaminen ja uudelleenlataus:
sudo nginx -t sudo systemctl lataa nginx uudelleen Vaihe 5: Verkkotunnuksesi suojaaminen Let's Encrypt TLS:llä
Suojaa verkkotunnuksesi käyttämällä Let's Encrypt -palvelua ilmaisten varmenteiden myöntämiseen:
sudo certbot --nginx -d jelly.yourdomain.com Certbot määrittää SSL-sertifikaatin automaattisesti Nginx-sivustotiedostossasi. Varmistaaksesi, että sertifikaatit uusitaan automaattisesti, tarkista, että systemd-ajastin on aktiivinen:
sudo systemctl lista-ajastimet | grep certbot Vaihe 6: Cloudflaren integrointi lisäturvallisuuden ja internet-palveluntarjoajan portin ohituksen takaamiseksi
Asenna Cloudflared
Cloudflared luo suojatun tunnelin liikenteen reitittämiseksi Cloudflaren läpi ohittaen internet-palveluntarjoajan rajoitukset porteissa 80 ja 443:
- Lataa
.deb-tiedostopaketti Cloudflaren GitHub-sivulta. - Asenna paketti:
sudo dpkg -i cloudflared-version.deb
Tunnelin konfigurointi
Tunnistaudu Cloudflare-tililläsi:
Cloudflared-tunnelin kirjautuminen Luo uusi tunneli:
pilvileimahtanut tunneli luo oma tunnelini Muokkaa Cloudflaren asetustiedostoa:
sudo nano /etc/cloudflared/config.yml Esimerkkikonfiguraatio:
tunneli: my-tunnel credentials-file: /home/user/.cloudflared/my-tunnel.json ingress: - isäntänimi: jelly.omaverkkotunnus.com palvelu: http://localhost:8096 - palvelu: http_status:404 Käynnistä ja ota tunnelipalvelu käyttöön:
sudo systemctl ota cloudflared käyttöön sudo systemctl käynnistä cloudflared Avaimet takeawayt
- Nginx-käänteinen välityspalvelinOlennaista liikenteen turvalliselle reititykselle ja taustapalveluiden optimoinnille.
- TLS-salausKäytä Let's Encryptiä suojataksesi verkkotunnuksesi ilmaisilla SSL-varmenteilla.
- PalomuurisäännötAvaa tarvittavat portit HTTP:lle (80), HTTPS:lle (443) ja SSH:lle (22).
- Tietoturvan optimointiKäytä otsikoita ja nopeusrajoituksia hyökkäysten estämiseksi.
- Cloudflare-integraatioKäytä Cloudflared-tunneleita turvalliseen ja internet-palveluntarjoajaystävälliseen ylläpitoon.
- automaatioSystemd-ajastimet varmistavat, että SSL-varmenteet uusitaan automaattisesti.
Johtopäätös
Turvallisen Nginx-käänteisen välityspalvelimen määrittäminen vaatii yksityiskohtiin paneutumista ja huolellista konfigurointia, mutta palkkiot ovat vaivan arvoisia. Olitpa sitten isännöimässä mediapalvelimia, kuten Jellyfiniä, tai hallinnoimassa yrityssovelluksia, tämä opas antaa sinulle työkalut ja tiedon erittäin turvallisen ja tehokkaan ympäristön rakentamiseen. Ominaisuuksien, kuten TLS:n, Cloudflare-tunnelien ja edistyneiden optimointien, avulla infrastruktuurisi on valmis nykyaikaisiin vaatimuksiin.
Lähde: "Lopeta sovellustesi paljastaminen! Rakenna turvallinen Nginx-käänteinen välityspalvelin!" – KeepItTechie, YouTube, 19. elokuuta 2025 – https://www.youtube.com/watch?v=MzbhS2S7H_g
Käyttö: Upotettu viitteeksi. Lyhyitä lainauksia käytetään kommentointiin/arviointiin.
Aiheeseen liittyvät blogikirjoitukset
- Nginx-kokoonpanojen hallitseminen optimaalisen verkkopalvelimen suorituskyvyn takaamiseksi
- NGINX-määrityksen hallitseminen: Kuinka Serverion avaa B2B-verkkohotellin menestystä
- NGINX Config Rewind: Serverion elvyttää välityspalvelimen välimuistin virityksen kadonneen taiteen
- Unohtunut NGINX Config Frontier: Serverionin sukellus FastCGI-mikrokätköilyyn