Hoe Nginx op CentOS 7 te installeren en configureren

Bij het beheren van servers met CentOS 7-distributies is het ideaal om alle voordelen en brede mogelijkheden te kennen die we hebben als het gaat om het uitbreiden van het gebruik en de werking van het systeem, omdat we dankzij open source eindeloze nieuwe applicaties of services kunnen toevoegen die zonder een betwijfel of het van grote hulp zal zijn bij het werken aan CentOS 7.

Een van de mogelijkheden die wij als beheerders of onderdeel van de IT-ondersteuning moeten toevoegen CentOS 7 is om te profiteren van zijn potentieel om een ​​proxyserver te creëren die de mogelijkheden van connectiviteit en communicatie binnen de organisatie uitbreidt en we bereiken dit dankzij Nginx.

Vandaag analyseert deze tutorial in detail hoe we kunnen installeren en configureren Nginx in CentOS 7 met totale betrouwbaarheid en op deze manier zullen we de natuurlijke mogelijkheden van deze geweldige Linux-distro uitbreiden.

Wat is NginxNginx [engine x] is een HTTP- en reverse-proxyserver die de rol van een mailproxyserver of een TCP/UDP-proxyserver kan vervullen, waardoor er meer connectiviteitsopties binnen de organisatie mogelijk zijn.

Nginx is geschreven door Igor Sysoev in Rusland, waar het al lang met succes draait op populaire Russische sites zoals Yandex, Mail.Ru, VK en Rambler, maar momenteel biedt Nginx ondersteuning en beveiliging aan bekende sites zoals Netflix, Wordpress.com, FastMail.FM.

Alle Nginx-bronnen en documentatie worden gedistribueerd onder de BSD-typelicentie.

Ondersteunde besturingssystemenNginx kan correct werken op elk van de volgende besturingssystemen:

  • FreeBSD 3-11 / i386; FreeBSD 5-11 / amd64;
  • Linux 2.2 - 4 / i386; Linux 2.6 - 4 / amd64; Linux 3-4 / armv6l, armv7l, aarch64, ppc64le;
  • Solaris 9 / i386, sun4u; Solaris 10 / i386, amd64, sun4v;
  • AIX 7.1 / powerpc;
  • HP-UX 11.31 / ia64;
  • macOS/ppc, i386;
  • Windows XP- Windows 10, Windows Server 2003-2012.

Kenmerken van Nginx als HTTP-serverNginx is een softwarebron vol functies die nuttig zullen zijn voor alle organisaties die hun reeks services en rollen willen uitbreiden. Deze functies als HTTP-server worden als volgt bepaald door categorieën:

  • Ondersteuning voor HTTP/2 met gewogen en afhankelijke prioriteitstelling.
  • SSL en TLS SIN-ondersteuning.
  • Versnelde ondersteuning met FastCGI, uwsgi, SCGI en memcached servercaching.
  • Load balancing en fouttolerantie.
  • Modulaire architectuur.
  • Versnelde reverse proxy met caching.
  • Statische en geïndexeerde bestandsserver, zelf geïndexeerd.
  • Bevat gzipping-filters, bytebereiken, dikke reacties, XSLT, SSI en beeldtransformatiefilter.
  • ondersteunt keep-alive- en pijpleidingverbindingen.
  • Leid 3xx-5xx-foutcodes om.
  • Op naam gebaseerde en op IP gebaseerde virtuele servers.
  • Inclusief herschrijfmodule die URI verandert via reguliere expressies.
  • Het voert verschillende functies uit, afhankelijk van de richting van de klant.
  • Toegangscontrole op basis van het IP-adres van de klant, per wachtwoord (basis HTTP-authenticatie).
  • Het heeft de methoden PUT, DELETE, MKCOL, COPY en MOVE.
  • Valideer HTTP-verwijzingen.
  • Mogelijkheid om het aantal gelijktijdige verbindingen of verzoeken van één adres te beperken.
  • IP-gebaseerde geolocatie.
  • Inclusief Perl.
  • Ondersteunt NginScript.

Nginx functioneert als een e-mailproxyserver

  • Ondersteunt POP3-authenticatiemethoden: USER / PASS, APOP, AUTH LOGIN / PLAIN / CRAM-MD5, IMAP: LOGIN, AUTH LOGIN / PLAIN / CRAM-MD5, SMTP: AUTH LOGIN / PLAIN / CRAM-MD5.
  • Hiermee kunt u een gebruiker omleiden naar een IMAP- of POP3-server met behulp van een externe HTTP-authenticatieserver.
  • SSL, STARTTLS en STLS ondersteuning.
  • Staat gebruikersauthenticatie toe via een externe HTTP-authenticatieserver en leidt om naar een interne SMTP-server.

Nginx-functies als een TCP / UDP-server

  • Algemene TCP- en UDP-proxy.
  • Load balancing en fouttolerantie.
  • SSL- en TLS SNI-ondersteuning voor TCP.
  • IP-gebaseerde geolocatie.
  • Het voert verschillende functies uit, afhankelijk van de richting van de klant.
  • Toegangscontrole op basis van het adres van de klant.
  • Het ondersteunt toegangslogformaten, schrijven van bufferlogs, snelle logrotatie en syslog-logging.

Extra Nginx-functies

  • Het maakt herconfiguratie en bijwerken van een uitvoerbaar bestand mogelijk zonder de klantenservice te onderbreken.
  • Ondersteuning voor kqueue (FreeBSD 4.1+), epoll (Linux 2.6+), / dev / poll (Solaris 7 11/99 +), gebeurtenispoorten (Solaris 10), selecteren en pollen.
  • Het ondersteunt verschillende kqueue-functionaliteiten, waaronder EV_CLEAR.
  • Flexibele configuratie.
  • Accepteert filters (FreeBSD 4.1+, NetBSD 5.0+) en ondersteuning voor TCP_DEFER_ACCEPT (Linux 2.4+).
  • Gegevenskopieerbewerkingen worden tot een minimum beperkt om te voorkomen dat de systeemprestaties worden beïnvloed.

1. Update CentOS 7


De eerste stap die u moet uitvoeren, is het bijwerken van de systeempakketten, waarvoor we de volgende regel zullen uitvoeren:
 yum -y update

2. Installeer Nginx op CentOS 7

Stap 1
Zodra CentOS 7 is bijgewerkt, moeten we de EPEL-repositories installeren voor de juiste installatie van Nginx, om deze repositories te installeren, voeren we de volgende regel uit:

 yum installeer epel-release

Stap 2
We voeren de letter in Y om de download en installatie van de EPEL-repository te bevestigen en als we klaar zijn, zien we het volgende:

Stap 3
Hiermee gaan we verder met de installatie van Nginx door het volgende commando uit te voeren. We accepteren het downloaden en installeren van Nginx-pakketten.

 yum installeer nginx

3. Beheer Nginx HTTP-server op CentOS 7

Stap 1
Nadat Nginx is geïnstalleerd, moeten de volgende regels worden uitgevoerd:

 systemctl start nginx (service start) systemctl enable nginx (service inschakelen) systemctl status nginx (servicestatus) 

Zoals we kunnen zien, is Nginx actief en actief.

4. Configureer Firewall voor Nginx Access op CentOS 7

De volgende stap is om Nginx-toegang op firewalld in te schakelen, aangezien de ingebouwde firewall van CentOS 7 is geconfigureerd om Nginx-verkeer te blokkeren. Hiervoor moeten we de regels maken die inkomende pakketten in HTTP en HTTPS in CentOS 7 mogelijk maken met behulp van de volgende regels:

 firewall-cmd --zone = public --permanent --add-service = http firewall-cmd --zone = public --permanent --add-service = https firewall-cmd -reload

5. Toegang tot Nginx op CentOS 7

Stap 1
Zodra de machtigingen zijn ingeschakeld in de CentOS 7-firewall, krijgen we toegang tot een browser en voeren we in de adresbalk de volgende syntaxis in.

 http: // Server_IP

VERGROTEN

Stap 2
Zoals we kunnen zien, is Nginx correct geïnstalleerd en geconfigureerd. Enkele van de belangrijkste Nginx-mappen zijn:

  • Hoofdmap
 / etc / nginx
  • Nginx-configuratiebestand
 /etc/nginx/nginx.conf
  • Configuratie serverblok:
 /etc/nginx/conf.d
  • Documentatiemap
     / usr / delen / nginx / html

Stap 3
Enkele van de parameters die we met Nginx kunnen gebruiken zijn:

  • -? | -H: Geef de Nginx-help weer.
  • -c bestand: Gebruik een alternatief configuratiebestand.
  • -g richtlijnen: Stel wereldwijd beleid in.
  • -p voorvoegsel: Stel het padvoorvoegsel van nginx in, dat wil zeggen een map die de bestanden op de server zal bevatten.
  • -Q: Onderdrukt foutmeldingen tijdens het testen.
  • -s signaal: Stuurt een signaal naar het masterproces, de opties zijn:
    • Hou op: snel uitschakelen.
    • Ontslag nemen: Sluit het proces.
    • Herladen: Laad de configuratie opnieuw.
    • heropenen: Logbestanden opnieuw openen.
  • -t: Test de configuratie van een bestand.
  • -v: Geef de Nginx-versie weer

Zo hebben we Nginx in CentOS 7 geïnstalleerd en geconfigureerd om het maximale uit de server te halen en de beheermogelijkheden te vergroten.

wave wave wave wave wave