GNU/Linux >> Tutoriels Linux >  >> Ubuntu

Comment installer et configurer Nginx sur Ubuntu 18.04 / Debian 9

Nginx est un serveur Web gratuit et open source, il peut également être utilisé comme reverse proxy , équilibreur de charge HTTP , Cache HTTP et proxy de messagerie . Nginx est disponible pour tous les systèmes d'exploitation de type Unix et publié sous une licence de type BSD.

Dans le didacticiel, nous apprendrons comment installer la dernière version de Ngnix sur Ubuntu 18.04 LTS et Debian 9 Server,

Installation de Nginx sur Ubuntu 18.04 LTS / Debian 9

Les étapes d'installation de Nginx sur les OS Ubuntu 18.04 et Debian 9 sont identiques, exécutez les commandes ci-dessous l'une après l'autre depuis le terminal,

[email protected]:~$ sudo apt update
[email protected]:~$ sudo apt install nginx -y

Démarrer et activer le service Nginx

Exécutez les commandes ci-dessous pour démarrer et activer le service nginx,

[email protected]:~$ sudo systemctl start nginx
[email protected]:~$ sudo systemctl enable nginx
Synchronizing state of nginx.service with SysV service script with /lib/systemd/systemd-sysv-install.
Executing: /lib/systemd/systemd-sysv-install enable nginx
[email protected]:~$

Utilisez les commandes ci-dessous pour vérifier l'état du service ngnix,

[email protected]:~$ sudo systemctl status nginx
[email protected]:~$ sudo systemctl is-active nginx

La sortie des commandes ci-dessus serait quelque chose comme ci-dessous,

Autoriser les ports Nginx (80 et 443) dans le pare-feu du système d'exploitation

Si le pare-feu du système d'exploitation est activé et configuré sur votre serveur Ubuntu 18.04 et Debian 9, exécutez les commandes ufw ci-dessous pour autoriser les ports 80 et 443,

[email protected]:~$ sudo ufw allow 80/tcp
Rules updated
Rules updated (v6)
[email protected]:~$ sudo ufw allow 443/tcp
Rules updated
Rules updated (v6)
[email protected]:~$

Maintenant, vérifiez les règles à l'aide de la commande ci-dessous,

[email protected]:~$ sudo ufw status numbered
Status: active
     To                         Action      From
     --                         ------      ----
[ 1] 80/tcp                     ALLOW IN    Anywhere
[ 2] 443/tcp                    ALLOW IN    Anywhere
[ 3] 22/tcp                     ALLOW IN    Anywhere
[ 4] 80/tcp (v6)                ALLOW IN    Anywhere (v6)
[ 5] 443/tcp (v6)               ALLOW IN    Anywhere (v6)
[ 6] 22/tcp (v6)                ALLOW IN    Anywhere (v6)
[email protected]:~$

Une fois que vous avez terminé avec les modifications ci-dessus, vérifions la page d'accueil de Nginx !!!

Ouvrez votre navigateur Web, tapez :http://{Your-Server-IP-Address}

Bloquer le serveur/Hôte virtuel dans Nginx

Dans Apache Web Server, nous avons un concept d'hôtes virtuels où nous pouvons définir les détails de plusieurs sites Web, de même dans Nginx, nous avons des blocs de serveur signifie bloc pour chaque site Web, examinons le bloc de serveur par défaut (/etc/nginx/sites -disponible/par défaut ) puis nous créerons le bloc serveur de notre propre site,

[email protected]:~$ sudo vi /etc/nginx/sites-available/default

Définissez votre bloc de serveur personnalisé

Supposons que je veuille créer un bloc de serveur personnalisé pour le serveur Web www.linuxtechi.lan,

Créez une racine de document en utilisant la commande ci-dessous,

[email protected]:~$ sudo mkdir  /var/www/linuxtechi

Créez un index.html sous la racine du document du serveur Web,

[email protected]:~$ sudo vi /var/www/linuxtechi/index.html
<!DOCTYPE html>
<html>
<head>
<title>Welcome to LinuxTechi</title>
</head>
<body>
<h1>Welcome to LinuxTechi</h1>
<p>LinuxTechi Test Page running on NGINX Web Server - Ubuntu 18.04</p>
</body>
</html>

Créez maintenant votre bloc serveur en créant un fichier « linuxtechi.lan ” avec le contenu suivant sous le dossier /etc/nginx/sites-available

[email protected]:~$ sudo vi /etc/nginx/sites-available/linuxtechi.lan
server {
    listen 80;
    root /var/www/linuxtechi;
    index index.html;
    server_name www.linuxtechi.lan;
}

Pour activer le bloc de serveur créé ci-dessus, créez un lien symbolique à partir de "/etc/nginx/sites-available/linuxtechi.lan " à " /etc/nginx/sites-enabled

[email protected]:~$ sudo ln -s /etc/nginx/sites-available/linuxtechi.lan /etc/nginx/sites-enabled

Maintenant, redémarrez votre service nginx en utilisant la commande ci-dessous,

[email protected]:~$ sudo systemctl restart nginx

Remarque : Si vous n'avez pas de serveur DNS, vous devez ajouter ci-dessous les entrées dans le fichier hosts de votre ordinateur client,

192.168.0.107 www.linuxtechi.lan

Accédez maintenant à votre serveur web via l'url :http://{Web-Server-Name}

Dans mon cas, l'url est http://www.linuxtechi.lan

Activer les certificats SSL pour votre serveur NGINX

À partir de maintenant, notre serveur Web nginx fonctionne sur le port 80 non sécurisé. Pour sécuriser le serveur Web, nous devons installer des certificats SSL. Vous pouvez obtenir les certificats SSL à partir de sources fiables ou vous pouvez également utiliser des certificats auto-signés générés via la commande openssl.

Dans ce tutoriel, je génère les certificats pour mon serveur Web à l'aide de la commande openssl,

[email protected]:~$ sudo openssl req -x509 -days 703 -sha256 -newkey rsa:2048 -nodes -keyout /etc/ssl/private/linuxtechi.key -out /etc/ssl/certs/linuxtechi-cert.pem
[sudo] password for pkumar:
Generating a 2048 bit RSA private key
........................................................................
writing new private key to '/etc/ssl/private/linuxtechi.key'
-----
You are about to be asked to enter information that will be incorporated
into your certificate request.
What you are about to enter is what is called a Distinguished Name or a DN.
There are quite a few fields but you can leave some blank
For some fields there will be a default value,
If you enter '.', the field will be left blank.
-----
Country Name (2 letter code) [AU]:IN
State or Province Name (full name) [Some-State]:Delhi
Locality Name (eg, city) []:Delhi
Organization Name (eg, company) [Internet Widgits Pty Ltd]:LinuxTechi
Organizational Unit Name (eg, section) []:IT
Common Name (e.g. server FQDN or YOUR name) []:www.linuxtechi.lan
Email Address []:[email protected]
[email protected]:~$

La commande ci-dessus a généré la clé privée avec "linuxtechi.key " et les certificats avec le nom "linuxtechi-cert.pem ", ces certificats seront applicables pour les deux prochaines années.

Maintenant, mettez à jour votre bloc de serveur, ajoutez la clé et l'emplacement du certificat et changez le port du serveur Web de 80 à 443,

[email protected]:~$ sudo vi /etc/nginx/sites-available/linuxtechi.lan
server {
    listen 443 ssl;
    root /var/www/linuxtechi;
    index index.html;
    server_name www.linuxtechi.lan;
    ssl_certificate /etc/ssl/certs/linuxtechi-cert.pem;
    ssl_certificate_key /etc/ssl/private/linuxtechi.key;
}

Redémarrez le service nginx en utilisant la commande suivante,

[email protected]:~$ sudo systemctl restart nginx
[email protected]:~$

Accédez à votre serveur Web sur le protocole https comme,

https://www.linuxtechi.lan

Remarque : Comme nous avons installé nos certificats auto-signés, nous devons d'abord vérifier/cliquer sur "Ajouter une exception", puis sur "Confirmer l'exception de sécurité" lors de l'accès au serveur Web sur https.

Cela confirme que nous avons activé avec succès les certificats auto-signés sur notre serveur Web Nginx et conclut l'article, si vous aimez l'article, veuillez partager vos commentaires et commentaires dans la section des commentaires ci-dessous.


Ubuntu
  1. Comment installer et configurer Nginx sur Ubuntu 20.04

  2. Comment installer et configurer un serveur NFS sur Ubuntu 20.04

  3. Comment installer et configurer Algo VPN Server sur Ubuntu 20.04

  4. Comment installer et configurer le serveur DHCP sur Ubuntu 20.04

  5. Comment installer et configurer le serveur Redis dans Ubuntu

Comment installer et configurer le serveur LAMP sur Ubuntu

Comment installer et configurer le serveur OpenLDAP sur Ubuntu 16.04

Comment installer et configurer VNC sur Ubuntu Server 20.04

Installer et configurer Virtualmin sur le serveur Ubuntu 20.04 / Debian 10

Comment installer et configurer Nginx dans Ubuntu 20.04 et Ubuntu 21.04

Comment installer Nginx sur Ubuntu