installer et configurer un serveur avec Nginx, PHP 7, MariaDB et Let’s Encrypt

Pour installer et configurer un serveur avec Nginx, PHP 7, MariaDB, Let’s Encrypt et le domaine ninjalinux.com sous Debian 12, suivez ces étapes :

Étape 1: Mettre à jour le système

Tout d’abord, assurez-vous que votre système est à jour.

sudo apt update && sudo apt upgrade -y

Étape 2: Installer Nginx

Installez le serveur web Nginx.

sudo apt install nginx -y

Étape 3: Installer PHP 7

Installez PHP 7 et les extensions nécessaires.

sudo apt install php7.4 php7.4-fpm php7.4-mysql -y

Étape 4: Installer MariaDB

Installez le serveur de base de données MariaDB.

sudo apt install mariadb-server mariadb-client -y

Étape 5: Sécuriser MariaDB

Sécurisez l’installation de MariaDB en exécutant le script de sécurité.

sudo mysql_secure_installation

Suivez les instructions pour définir le mot de passe root et sécuriser votre installation.

Étape 6: Configurer Nginx pour utiliser PHP

Créez un fichier de configuration Nginx pour votre site web.

sudo nano /etc/nginx/sites-available/ninjalinux.com

Ajoutez-y les lignes suivantes :

server {
    listen 80;
    server_name ninjalinux.com www.ninjalinux.com;

    root /var/www/ninjalinux.com;
    index index.php index.html index.htm;

    location / {
        try_files $uri $uri/ =404;
    }

    location ~ \.php$ {
        include snippets/fastcgi-php.conf;
        fastcgi_pass unix:/var/run/php/php7.4-fpm.sock;
    }

    location ~ /\.ht {
        deny all;
    }
}

Enregistrez et quittez le fichier.

Activez la configuration en créant un lien symbolique vers le dossier sites-enabled.

sudo ln -s /etc/nginx/sites-available/ninjalinux.com /etc/nginx/sites-enabled/

Vérifiez la configuration de Nginx et redémarrez le service.

sudo nginx -t
sudo systemctl restart nginx

Étape 7: Installer Let’s Encrypt

Installez Certbot, l’outil de Let’s Encrypt pour obtenir des certificats SSL.

sudo apt install certbot python3-certbot-nginx -y

Étape 8: Obtenir un certificat SSL

Obtenez et installez un certificat SSL pour votre domaine.

sudo certbot --nginx -d ninjalinux.com -d www.ninjalinux.com

Suivez les instructions à l’écran pour compléter le processus. Certbot configurera automatiquement Nginx pour utiliser le certificat SSL.

Étape 9: Configurer le nom de domaine

Assurez-vous que votre nom de domaine ninjalinux.com pointe vers l’adresse IP de votre serveur. Cela peut être configuré dans le panneau de gestion DNS de votre fournisseur de nom de domaine.

Étape 10: Créer le répertoire du site web

Créez le répertoire racine pour votre site web et définissez les permissions appropriées.

sudo mkdir -p /var/www/ninjalinux.com
sudo chown -R www-data:www-data /var/www/ninjalinux.com
sudo chmod -R 755 /var/www/ninjalinux.com

Vous avez maintenant configuré un serveur web avec Nginx, PHP 7, MariaDB et Let’s Encrypt sur Debian 12 avec le domaine ninjalinux.com. Vous pouvez maintenant ajouter votre contenu et configurer vos bases de données selon vos besoins.