Kas ir apgrieztais starpniekserveris? Drošības arhitektūras galvenās sastāvdaļas
Apgriezti starpniekserveri tiek izmantoti kā starpniekkomпоненti tīklā, lai nodrošinātu publisko tiešsaistes pakalpojumu serveru drošību. Tie pieņem serveru pieprasījumus serveru vārdā un pārsūta tos lietotājiem.
Kā darbojas apgrieztais starpniekserveris?
Būtībā starpniekserveris darbojas kā saziņas starpnieks tīklā, saņemot pieprasījumus un nosūtot tos tālāk mērķa serverim klienta vārdā. Apgrieztais proxy serveris atrodas starp klientiem (piemēram, tīmekļa pārlūkprogrammām) un aizmugures serveriem (piemēram, tīmekļa serveriem, datu bāzu serveriem vai lietojumprogrammām). Tas aktivizējas, kad tiek veikts klienta pieprasījums, nosakot, vai un uz kuru iekšējo servera komponentu pieprasījums ir jānovirza. Process noris četros pamatposmos:
- Klienta pieprasījuma saņemšana: Apgrieztais starpniekserveris pieņem HTTP, HTTPS vai citus pieprasījumus, piemēram, FTP vai WebSocket.
- Pieprasījuma analīze: starpnieks pārbauda, vai pieprasījums ir derīgs, vai tas rada kādus drošības riskus un vai ir pieejama cachelēta versija.
- Pārsūtīšana uz atbilstošo serveri: ja pieprasījumu nevar apstrādāt no kešatmiņas, reversais starpniekserveris nosūta pieprasījumu uz vienu no iekšējiem serveriem.
- Atbilde klientam: apgrieztais starpniekserveris saņem atbildi no aizmugures servera, nepieciešamības gadījumā to apstrādā (piemēram, šifrē) un nosūta atpakaļ pieprasījuma iesniedzējam.

Kāda ir atšķirība salīdzinājumā ar forward proxy?
Kā jau minēts iepriekš, apgriezti starpniekserveri atrodas starp klientiem un aizmugures serveriem, savukārt tiešie starpniekserveri ir novietoti starp klientiem un internetu. Tiešais starpniekserveris novirza visus klienta pieprasījumus un nosūta tos ar savu sūtītāja adresi mērķa serveriem internetā. Arī serveru atbildes vispirms nonāk pie starpniekservera, pirms tās tiek izplatītas attiecīgajām klienta ierīcēm. Tās paliek anonīmas — ja vien tas nav caurspīdīgs starpniekserveris. Kamēr tiešais starpniekserveris aizsargā klientus iekšējā tīklā no ārējiem draudiem, apgrieztais starpniekserveris nodrošina serveru drošību publiskajā tīklā un optimizē to pieejamību.
Lai gan atgriezeniskie starpniekserveri piedāvā acīmredzamas priekšrocības serveru struktūrām, pateicoties tādām funkcijām kā slodzes izlīdzināšana un dažādām drošības funkcijām, tiešo starpniekserveru stiprās puses ir saistītas ar klientu aizsardzību.

Reversā proxy serveru pielietojuma jomas
Klientu pieprasījumu apvienošana ļauj apgrieztajiem starpniekserveriem precīzi kontrolēt ienākošo datplūsmu. Tas, cita starpā, ļauj nodrošināt vairākus serverus zem viena URL, vienmērīgi sadalīt pieprasījumus starp dažādiem serveriem un paātrināt datu iegūšanu, izmantojot kešēšanu. Turpmāk ir uzskaitītas galvenās apgriezto starpniekserveru pielietojuma jomas.
Slodzes izlīdzināšana
Priekšā novietots apgrieztais starpniekserveris ļauj URL adresi saistīt ar dažādiem serveriem privātajā tīklā. Tas sadala ienākošos pieprasījumus starp vairākiem serveriem. Šāda slodzes izlīdzināšana novērš atsevišķu sistēmu pārslodzi un nodrošina darbības nepārtrauktību traucējumu gadījumā. Ja kāds serveris nav sasniedzams aparatūras vai programmatūras kļūdu dēļ, starpniekservera slodzes izlīdzināšanas modulis pārdala ienākošos pieprasījumus starp pārējiem serveriem. Tas nodrošina serveru pakalpojumu pieejamību pat traucējumu gadījumā.
Caching
Lai paātrinātu servera pakalpojumu sniegšanu, apgrieztiem starpniekserveriem ir pieejama funkcija, kas ļauj bieži pieprasīto saturu saglabāt kešatmiņā. Šī kešēšana ļauj starpniekserverim atbildēt uz atkārtotiem pieprasījumiem vai nu daļēji, vai pilnībā patstāvīgi. Statiskais saturs, piemēram, attēli vai CSS stilu lapas, tiek saglabāts proxy cache. Rezultātā no backend servera ir jāiegūst maz vai vispār nav jāiegūst dati, kas ievērojami paātrina piekļuvi tīmekļa pakalpojumiem. Tomēr, tā kā strauji mainīgais saturs ne vienmēr garantē, ka proxy cache ir aktuālā versija, pastāv risks, ka pieprasījuma veicējiem tiks sniegta novecojusi informācija.
Aizsardzības un drošības pasākumi
Apgrieztais starpniekserveris darbojas kā sava veida aizsargājošs vairogs aizmugures serveriem un šajā lomā var nodrošināt dažādas drošības funkcijas:
- Aizsardzība pret DDoS uzbrukumiem: Apgrieztiem starpniekserveriem ir iespējams atklāt un bloķēt aizdomīgu vai neparasti lielu datu plūsmu DDoS uzbrukumu laikā, pirms tā sasniedz aizmugures serverus.
- Web Application Firewall (WAF): Daudzi reversie proksi ietver WAF, kas var filtrēt ļaunprātīgus pieprasījumus, piemēram, SQL injekcijas vai Cross-Site Scripting (XSS).
- IP balto un melno sarakstu izveide: apgrieztais starpniekserviss var bloķēt noteiktas IP adreses vai nepieciešamības gadījumā atļaut savienojumus tikai no konkrētiem tīkliem.
- Aizmugures serveru slēpšana: Reversais starpniekserveris neļauj aizmugures serveru iekšējām IP adresēm būt publiski redzamām, tādējādi apgrūtinot uzbrukumus.
Šifrēšana
Lai samazinātu slodzi uz aizmugures serveriem, šifrēšanai var izmantot arī apgriezto starpniekserveri. Šajā gadījumā tas dešifrē klienta SSL/TLS pieprasījumu (piemēram, HTTPS savienojumu), nosūta dešifrētos datus uz aizmugures serveriem un atpakaļ klientam nosūta atbilstošo atbildi, kas atkal ir šifrēta. Iekšējā saziņa var notikt gan šifrētā, gan nešifrētā veidā.
Anonimizācija
Apgriezto starpniekserveri var izmantot arī datplūsmas anonimizēšanai, maskējot klientu sākotnējās IP adreses vai aizstājot tās ar savām IP adresēm. Tas palīdz aizsargāt klientu privātumu, jo reālās IP adreses nebūs redzamas žurnālos. Turklāt tas ļauj veikt ģeogrāfisko slodzes izlīdzināšanu: pieprasījumus var novirzīt uz tuvāko serveri atkarībā no lietotāja ģeogrāfiskās atrašanās vietas.
Saspiešana
Izmantojot atbilstošu programmatūru, apgriezto starpniekserveri var izmantot ienākošo un izejošo datu saspiešanai. Populāra programma tīmekļa vietņu saspiešanai ir gzip, ko bieži izmanto kopā ar tīmekļa serveriem Apache vai NGINX.