Ota meihin yhteyttä

info@serverion.com

Soita meille

+1 (302) 380 3902

Täydellinen opas turvallisen Nginx-käänteisen välityspalvelimen rakentamiseen

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.

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:

  1. Suojausotsikot:
    sudo nano /etc/nginx/snippets/security-headers.conf 
    Määritä suojausotsikot suojauksen parantamiseksi:
    add_header X-Frame-Options "SAMEORIGIN"; add_header X-Content-Type-Options "nosniff"; add_header X-XSS-Protection "1; mode=block"; 
  2. Välityspalvelimen asetukset:
    sudo nano /etc/nginx/snippets/proxy.conf 
    Optimoi pitkät striimit ja estä hitaat vastaukset:
    proxy_connect_timeout 60s; proxy_send_timeout 60s; proxy_read_timeout 60s; 
  3. Nopeusrajoitukset:
    sudo nano /etc/nginx/snippets/rate-limit.conf 
    Lievennä liiallisia pyyntöjä:
    limit_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:

  1. Lataa .deb-tiedosto paketti Cloudflaren GitHub-sivulta.
  2. 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

fi