Com configurar HAProxy com a servidor intermediari invers

Com Configurar Haproxy Com A Servidor Intermediari Invers



Quan teniu un servidor web, tenir una manera de reenviar les sol·licituds del client i la resposta del servidor ajuda a distribuir el trànsit i millora la seguretat. Un servidor intermediari invers, com ara HAProxy, actua com a intermediari entre la vostra aplicació web i els dispositius client quan es configura. D'aquesta manera, rep les peticions del client i les reenvia al servidor web corresponent mentre rep la resposta del servidor i les transmet als clients. Configurar HAProxy al vostre servidor perquè actuï com a servidor intermediari invers és un procés senzill. Aquesta publicació ha detallat els passos que heu de seguir.

Per què utilitzar un proxy invers?

Abans de parlar dels passos per configurar HAProxy com a servidor intermediari invers, destaquem ràpidament per què un servidor intermediari invers funciona al vostre avantatge. Els següents són els avantatges que obteniu en utilitzar HAProxy com a servidor intermediari invers:

  1. Equilibri de càrrega - El vostre servidor web pot, en un moment donat, tenir un cas de moltes sol·licituds de client que, si no es gestionen bé, poden sobrecarregar-lo i provocar un temps d'inactivitat inesperat. Tanmateix, la configuració d'un servidor intermediari invers garanteix que el trànsit es distribueix entre els servidors de fons per garantir que cap servidor es sobrecarregui de sol·licituds.
  2. Tallafoc i seguretat - El servidor intermediari invers connecta els dispositius client al servidor web. Si ho feu, es redueix el risc d'exposar directament els nostres servidors backend a Internet. D'aquesta manera, un trànsit maliciós es pot filtrar i bloquejar fàcilment abans que danyi els servidors.
  3. Millor memòria cau - Amb un servidor intermediari invers, notareu la millora general del rendiment, ja que el temps de càrrega es reduirà mitjançant la memòria cau del contingut estàtic. A més, aconseguiràs una millor experiència d'usuari.
  4. Terminació SSL/TLS - Amb un servidor intermediari invers, xifrar i desxifrar les connexions SSL/TLS es fa sense problemes i els vostres servidors backend no hauran d'assumir aquesta tasca, reduint-ne la càrrega.

Com configurar HAProxy com a servidor intermediari invers

Després d'haver explicat per què un servidor intermediari invers com HAProxy és essencial, donem els passos de configuració a seguir.







Pas 1: instal·leu HAProxy



Probablement ja tingueu instal·lat HAProxy al vostre sistema. Si és així, ometeu aquest pas. Tanmateix, per a algú nou en això, executeu l'ordre següent per instal·lar HAProxy:



$ sudo apt install haproxy

Ja el tenim instal·lat en el nostre cas.





Pas 2: editeu el fitxer de configuració HAProxy



HAProxy té un fitxer de configuració al qual heu d'accedir i editar per configurar-lo com a servidor intermediari invers. Comenceu obrint el fitxer de configuració amb un editor de text.

$ sudo nano /etc/haproxy/haproxy.cfg

Un cop obert, tingueu en compte que té configuracions bàsiques per a les seccions per defecte i global. Aleshores hem de crear dues seccions més: frontend i backend. El frontend defineix les interfícies que haurien de rebre les sol·licituds del client, mentre que el backend especifica els servidors que gestionaran el trànsit.

Per a aquest exemple, configurem la interfície per acceptar les sol·licituds del client dels ports 80 i 81. A continuació, creem una regla per distribuir el trànsit de manera que les connexions des del port 80 s'encaminen a un servidor específic mentre que les del port 81 van a un altre servidor. La nostra secció d'interfície és com es mostra a continuació:

Com que hem creat dos servidors backend, backend2 i linux_backend, hem de crear les seccions backend per a tots dos servidors. Especifiquem quina IP distribuir el trànsit al nostre 'servidor1' i 'servidor2' per a cadascun.

Un cop editat el fitxer de configuració, deseu-lo i sortiu del fitxer. Tingueu en compte que hi ha moltes maneres de configurar HAProxy en funció de les vostres necessitats. Per al nostre cas, creem els servidors web utilitzant l'adreça IP especificada per encaminar el nostre trànsit. Canvieu les IP perquè coincideixin amb les dels vostres servidors web i en quin port voleu escoltar.

Pas 3: comproveu la validesa

Amb HAProxy, hi ha una ordre que us permet verificar si el vostre fitxer de configuració és vàlid. Executeu l'ordre següent i mireu quina sortida obteniu:

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

Si obteniu una sortida similar, confirma que el vostre fitxer de configuració és vàlid. En cas contrari, generarà errors.

Pas 4: proveu el proxy invers

Mitjançant una ordre com 'curl', podeu enviar un trànsit al vostre servidor web i veure com respon. Per al nostre cas, utilitzem Python3 per crear els servidors web.

L'execució de l'ordre 'curl' confirma que el nostre servidor web està escoltant el port especificat i que HAProxy ha distribuït el trànsit al servidor especificat en funció del nostre fitxer de configuració.

També podeu accedir al vostre servidor web en un navegador i confirmar que el servidor intermediari invers funciona.

Com que tenim dos servidors web que es poden utilitzar segons el port que utilitzen els dispositius client, anem a vincular un servidor web diferent a un port diferent i veure què passa.

La sortida següent mostra que HAProxy va enviar el nostre trànsit al segon servidor backend després de detectar que la sol·licitud del client s'havia enviat a través del port 81, confirmant que la distribució del trànsit funciona com s'esperava.

Així és com es configura HAProxy com a servidor intermediari invers.

Conclusió

HAProxy és una opció excel·lent per a un servidor intermediari invers per al vostre servidor web. Configurar-lo és senzill. Especifiqueu només quin port escoltar les sol·licituds dels clients i quines regles utilitzareu per a l'equilibri de càrrega. A continuació, afegiu els servidors de fons que cal utilitzar i tindreu el vostre servidor intermediari invers en funcionament. Aquesta publicació va compartir els passos a seguir i va demostrar un exemple per assegurar-vos que us sentiu còmode amb HAProxy.