Kā konfigurēt HAProxy kā reverso starpniekserveri

Ka Konfiguret Haproxy Ka Reverso Starpniekserveri



Ja jums ir tīmekļa serveris, klienta pieprasījumu un servera atbildes pārsūtīšanas iespēja palīdz sadalīt trafiku un uzlabo drošību. Reversais starpniekserveris, piemēram, HAProxy, darbojas kā starpnieks starp jūsu tīmekļa lietojumprogrammu un klienta ierīcēm, kad tas ir konfigurēts. Tādā veidā tas saņem klientu pieprasījumus un pārsūta tos uz atbilstošo tīmekļa serveri, vienlaikus saņemot servera atbildi un pārsūtot tos klientiem. HAProxy konfigurēšana servera pusē, lai tā darbotos kā reversais starpniekserveris, ir vienkāršs process. Šajā ziņojumā ir sīki aprakstītas darbības, kas jums jāveic.

Kāpēc izmantot reverso starpniekserveri?

Pirms pārrunājat darbības, kas jāveic, lai HAProxy konfigurētu kā reverso starpniekserveri, ātri uzsvērsim, kāpēc reversais starpniekserveris darbojas jūsu labā. Tālāk ir norādītas priekšrocības, ko iegūstat, izmantojot HAProxy kā apgriezto starpniekserveri:

  1. Slodzes līdzsvarošana - Jūsu tīmekļa serveris vienā brīdī var saņemt daudzu klientu pieprasījumu, kas, ja tas netiek pareizi apstrādāts, var to pārslogot, kas izraisa negaidītu dīkstāvi. Tomēr apgrieztā starpniekservera konfigurēšana nodrošina, ka trafiks tiek sadalīts pa aizmugursistēmas serveriem, lai neviens serveris netiktu pārslogots ar pieprasījumiem.
  2. Ugunsmūris un drošība - Reversais starpniekserveris savieno klienta ierīces ar tīmekļa serveri. Šādi rīkojoties, tiek samazināts risks, ka mūsu aizmugursistēmas serveri tiks tieši pakļauti internetam. Tādā veidā ļaunprātīgu trafiku var viegli filtrēt un bloķēt, pirms tā sabojā serverus.
  3. Labāka kešatmiņa — Izmantojot apgriezto starpniekserveri, jūs pamanīsit vispārējo veiktspējas uzlabošanos, jo ielādes laiks tiks samazināts, saglabājot statisko saturu kešatmiņā. Turklāt jūs sasniegsiet labāku lietotāja pieredzi.
  4. SSL/TLS pārtraukšana — Izmantojot reverso starpniekserveri, SSL/TLS savienojumu šifrēšana un atšifrēšana kļūst nemanāma, un jūsu aizmugursistēmas serveriem nebūs jāuzņemas šis uzdevums, samazinot to slodzi.

Kā konfigurēt HAProxy kā reverso starpniekserveri

Izskaidrojot, kāpēc reversais starpniekserveris, piemēram, HAProxy, ir būtisks, sniegsim konfigurācijas darbības, kas jāveic.







1. darbība. Instalējiet HAProxy



Iespējams, jūsu sistēmā jau ir instalēts HAProxy. Ja tā, izlaidiet šo darbību. Tomēr, ja kāds to nezina, palaidiet šo komandu, lai instalētu HAProxy:



$ sudo apt instalēt haproxy

Mūsu gadījumā tas jau ir instalēts.





2. darbība: rediģējiet HAProxy konfigurācijas failu



HAProxy ir konfigurācijas fails, kuram ir jāpiekļūst un jārediģē, lai to konfigurētu kā reverso starpniekserveri. Sāciet, atverot konfigurācijas failu, izmantojot teksta redaktoru.

$ sudo nano /etc/haproxy/haproxy.cfg

Kad tas tiek atvērts, ņemiet vērā, ka tajā ir pamata konfigurācijas noklusējuma un globālajām sadaļām. Pēc tam mums ir jāizveido vēl divas sadaļas: frontend un backend. Priekšgals nosaka saskarnes, kurām jāsaņem klientu pieprasījumi, savukārt aizmugure norāda serverus, kas apstrādās trafiku.

Šajā piemērā mēs konfigurējam priekšgalu, lai pieņemtu klientu pieprasījumus no 80. un 81. porta. Pēc tam mēs izveidojam kārtulu, lai sadalītu trafiku tā, lai savienojumi no 80. porta tiktu maršrutēti uz noteiktu serveri, bet savienojumi no 81. porta tiek novirzīti uz citu. serveris. Mūsu priekšgala sadaļa ir šāda:

Tā kā mēs izveidojām divus aizmugursistēmas serverus, backend2 un linux_backend, mums ir jāizveido aizmugursistēmas sadaļas abiem serveriem. Mēs norādām, uz kuru IP adresi sadalīt trafiku uz mūsu “serveri1” un “serveri2” katram.

Kad konfigurācijas fails ir rediģēts, saglabājiet to un izejiet no faila. Ņemiet vērā, ka ir daudz veidu, kā konfigurēt HAProxy atkarībā no jūsu vajadzībām. Mūsu gadījumā mēs izveidojam tīmekļa serverus, izmantojot norādīto IP adresi, lai maršrutētu trafiku. Mainiet IP adreses, lai tās atbilstu jūsu tīmekļa serveru IP adresēm un portam, kurā vēlaties klausīties.

3. darbība: pārbaudiet derīgumu

Izmantojot HAProxy, ir komanda, kas ļauj pārbaudīt, vai jūsu konfigurācijas fails ir derīgs. Palaidiet šo komandu un skatiet iegūto izvadi:

$ sudo haproxy -c -f /etc/haproxy/haproxy.cfg

Ja saņemat līdzīgu izvadi, tas apstiprina, ka jūsu konfigurācijas fails ir derīgs. Pretējā gadījumā tas radīs kļūdas.

4. darbība: pārbaudiet reverso starpniekserveri

Izmantojot komandu, piemēram, “curl”, varat nosūtīt trafiku uz savu tīmekļa serveri un redzēt, kā tas reaģē. Mūsu gadījumā mēs izmantojam Python3, lai izveidotu tīmekļa serverus.

Palaižot komandu “curl”, tiek apstiprināts, ka mūsu tīmekļa serveris klausās norādīto portu un ka HAProxy ir sadalījis trafiku uz norādīto serveri, pamatojoties uz mūsu konfigurācijas failu.

Varat arī piekļūt savam tīmekļa serverim pārlūkprogrammā un apstiprināt, ka darbojas apgrieztais starpniekserveris.

Tā kā mums ir divi tīmekļa serveri, kurus var izmantot atkarībā no porta, ko izmanto klienta ierīces, piesaistīsim citu tīmekļa serveri citam portam un paskatīsimies, kas notiek.

Šī izvade parāda, ka HAProxy nosūtīja mūsu trafiku uz otro aizmugursistēmas serveri pēc tam, kad tika konstatēts, ka klienta pieprasījums tika nosūtīts caur 81. portu, apstiprinot, ka trafika sadale darbojas, kā paredzēts.

Šādi var konfigurēt HAProxy kā reverso starpniekserveri.

Secinājums

HAProxy ir lieliska izvēle reversajam starpniekserveram jūsu tīmekļa serverim. Tā konfigurēšana ir vienkārša. Norādiet tikai to, kurš ports jāuzklausa klienta pieprasījumiem un kādi noteikumi jāizmanto slodzes līdzsvarošanai. Pēc tam pievienojiet izmantojamos aizmugursistēmas serverus, un reversais starpniekserveris tiks izveidots un darbosies. Šajā ziņojumā tika kopīgotas darbības, kas jāveic, un parādīts piemērs, lai nodrošinātu, ka esat apmierināts ar HAProxy.