Terug naar blog

Basis HTTP-authenticatie configureren met Nginx op Ubuntu 20.04

Basis HTTP-authenticatie configureren met Nginx op Ubuntu 20.04

Nginx is een gratis, open-source webserver die wordt gebruikt voor load balancing, buffering en caching. Sinds de oprichting in 2004 is Nginx populair geworden voor het schalen van webservers en reverse proxying. Vanwege de hoge prestaties en uitstekende mogelijkheden om een groot aantal verbindingen te verwerken, wordt het gebruikt om inkomend verkeer te beheren en te controleren.

Hoe werkt HTTP-authenticatie?

In basis-HTTP-authenticatie, zijn alle routes op de server geblokkeerd en zijn de juiste inloggegevens vereist om te authenticeren. Telkens wanneer een gebruiker toegang probeert te krijgen tot een beveiligde bron, stuurt de server de gebruiker een WWW-Authenticate-header en een 401 Unauthorized respons. Als de gebruikersnaam en het wachtwoord die door de gebruiker worden gebruikt correct zijn en overeenkomen met het sleutelbestand, wordt de verbinding tot stand gebracht, anders wordt deze geweigerd.

In deze handleiding leiden we je door de stappen voor het instellen van basis-HTTP-authenticatie met Nginx op Ubuntu 20.04.

Vereisten

Om deze handleiding te volgen, heb je het volgende nodig:

Stap 1: Software-repositories bijwerken

Voordat je nieuwe software of een API-pakket op je systeem installeert, moet je de repositories vernieuwen om fouten of pakketconflicten te voorkomen. Eerst zullen we de software bijwerken met het sudo-commando:

Nu we de software-repositories hebben bijgewerkt, gaan we de benodigde apache2-pakketten installeren.

Stap 2: Benodigde pakketten installeren

Omdat we HTTP-authenticatie instellen voor een map, gebruiken we het htpasswd-commando om een versleuteld wachtwoord aan te maken. Installeer het apache2-utils-pakket met het volgende commando:

Stap 3: Gebruiker en wachtwoord aanmaken

In deze stap stellen we de inloggegevens voor de basis-HTTP-authenticatie in. Maak onder de hoofdmap een .htpasswd-bestand aan dat gekoppeld is aan de gebruiker. Het wachtwoord wordt versleuteld en de bestandsnaam mag je zelf kiezen. Gebruik het volgende commando om het bestand aan te maken en de gebruiker toe te voegen met een versleuteld wachtwoord:

User and Password

Controleer vervolgens het nieuw aangemaakte bestand met het volgende commando:

newly-created file

Step 4: De Nginx-configuratie bijwerken

Zondra we onze inloggegevens voor HTTP-basisauthenticatie hebben, gaan we Nginx instellen en gebruiken op onze doelwebsite. We hebben de auth_basic en auth_basic_user_file-richtlijnen nodig om de HTTP-basisauthenticatie tot stand te brengen. De waarde van de auth_basic-richtlijn is een string-indeling, terwijl de waarde van auth_basic_user_file het pad is naar het wachtwoordbestand dat is aangemaakt in Stap 3.

Het is belangrijk om de twee richtlijnen op te nemen in het configuratiebestand van de doelwebsite. Je vindt de locatie van de doelwebsite in de map /etc/nginx/sites-available directory. Open het configuratiebestand met de nano-editor:

Voeg vervolgens beide richtlijnen toe onder de sectie location:

Sla na het toevoegen van de richtlijn het configuratiebestand op en sluit het.

Stap 5: Nginx opnieuw opstarten

Laad of herstart vervolgens de Nginx-services om de wijzigingen op onze virtuele host toe te passen. Daarna proberen we toegang te krijgen tot het beveiligde domein met behulp van onze basis HTTP-authenticatie. Gebruik de volgende opdracht om de Nginx-services te activeren:

Stap 6: Beveiligde webtoegang

Zodra u Nginx hebt herstart, is de volgende stap om te proberen toegang te krijgen tot het IP-adres of de domeinnaam in uw favoriete browser. Bij het klikken op het IP-adres http://your_domain_name/ in uw browser, wordt er een prompt geopend waarin u wordt gevraagd de inloggegevens in te voeren om te authenticeren. Zodra u de juiste gebruikersnaam en het juiste wachtwoord invoert, ziet u een standaard Nginx-startpagina.

Conclusie

In deze handleiding hebben we geleerd hoe we basis HTTP-authenticatie met Nginx kunnen configureren. De basis gebruikersnaam/wachtwoord-authenticatie is slechts een van de vele authenticatie-opties om een veilige verbinding tot stand te brengen in Nginx.

Er zijn andere krachtige opties die worden gebruikt voor serverauthenticatie. Enkele populaire methoden die u kunt gebruiken zijn bijvoorbeeld API-integraties, JSON Web Tokens, op SSH-sleutels gebaseerde authenticaties. Hoewel het verkrijgen van robuuste beveiligingsmechanismen in eerste instantie misschien lastig lijkt, zijn ze zeer effectief om uw privacy te beschermen.

Daarnaast zijn er nog veel andere leermaterialen en handleidingen over Nginx die u kunt openen via onze blogs:

Veel computerplezier!

author

Shreyas Patil

Auteur · CloudSigma

Preslav Dobrev is een creatief ontwerper bij CloudSigma, met de nadruk op een consistente bedrijfsidentiteit door middel van traditionele en innovatieve marketingkanalen. Hij is bedreven in het samenvoegen van artistieke visie met strategische marketing om impactvolle merkverhalen te creëren.

Reacties

Nog geen reacties. Wees de eerste.