lnmpv1.8
Nginx · MariaDB · PHP · SSL

Votre pile web,
en une commande.

LNMP installe et administre une pile web complète sur Ubuntu : vhosts Nginx, domaines multiples, HTTPS et bases de données — en ligne de commande ou depuis un panneau web à l'adresse admin.lnmp.

7étapes idempotentes
1 clicSSL Let's Encrypt
0coupure au reload
Installation

Documentation d'installation

Trois commandes : ajouter la clé publique du dépôt, ajouter le dépôt APT signé, puis installer. apt install lnmp installe et configure toute la pile (Nginx, MariaDB, PHP, Certbot), déploie le panneau web et démarre le démon — automatiquement.

1 Ajouter la clé publique du dépôt

$ sudo mkdir -p /etc/apt/keyrings && curl -fsSL https://mawena.cloud/repo/public.key | sudo gpg --dearmor -o /etc/apt/keyrings/mawena.gpg

2 Ajouter le dépôt APT

$ echo "deb [signed-by=/etc/apt/keyrings/mawena.gpg] https://mawena.cloud/repo stable main" | sudo tee /etc/apt/sources.list.d/mawena.list

3 Installer le paquet (et toute la pile)

$ sudo apt update && sudo apt install lnmp

Il ne reste qu'à définir le mot de passe du panneau web (non fixé par défaut, pour des raisons de sécurité) avec sudo lnmp set-password. Le panneau est alors accessible sur http://admin.lnmp. La commande sudo lnmp install reste disponible pour une (re)configuration interactive idempotente (domaine par défaut, interface du panneau…).

Prérequis : Ubuntu 22.04+ avec accès sudo. Pour le HTTPS, le domaine doit pointer vers le serveur.

Capacités

Tout ce qu'il faut pour mettre un site en ligne

Un menu interactif pour l'administration ponctuelle, des commandes directes pour l'automatisation.

Installation idempotente

Déploie Nginx, MariaDB, PHP et Certbot. Reprend à la dernière étape réussie en cas d'incident.

Gestion des vhosts

Ajout, activation, désactivation et suppression d'applications web avec validation des entrées.

🔒

SSL en un clic

Certificats Let's Encrypt avec redirection HTTPS et alertes d'expiration par email.

Bases de données

Création d'une base MariaDB et d'un utilisateur dédié, mot de passe généré, en une commande.

Diagnostic intégré

lnmp doctor vérifie services, config Nginx et certificats d'un coup d'œil.

Reload sans coupure

Chaque changement passe par nginx -t avant un rechargement à chaud. Jamais de config cassée en prod.

Démarrage rapide

De zéro à en ligne, dans l'ordre

Cinq commandes suffisent pour installer la pile et publier une application sécurisée.

1

Installer la pile

sudo lnmp install

Nginx, MariaDB, PHP et Certbot, plus le groupe de travail webdev.

2

Ajouter une application

sudo lnmp add

Renseignez un identifiant, un domaine et le chemin du dossier public : le vhost est créé et activé.

3

Provisionner la base

sudo lnmp db-create monapp

Base, utilisateur dédié et mot de passe généré, affiché une seule fois.

4

Activer le HTTPS

sudo lnmp add-ssl monapp

Certificat Let's Encrypt et redirection automatique vers HTTPS.

5

Vérifier

sudo lnmp doctor

Un état complet de la pile : ● actif pour chaque service en bonne santé.

Utilisation

Documentation d'utilisation

Toutes les actions sont accessibles de trois façons équivalentes : le menu interactif, la ligne de commande, et le panneau web.

Menu interactif ou commandes directes

Lancez sudo lnmp sans argument pour le menu numéroté, ou utilisez les commandes directement pour scripter.

$sudo lnmp add --id blog --domain test

Domaines multiples (local façon Laragon)

Déclarez un domaine local : LNMP gère alors /etc/hosts automatiquement pour chaque application.

$sudo lnmp domain add test --local

Ajouter une application

Choisissez le domaine de base : l'URL devient <id>.<domaine> (ou le domaine racine avec --apex). Pour un domaine local, l'entrée hosts est créée toute seule.

$sudo lnmp add --id shop --domain mawena.cloud

Bases de données

Une commande crée la base, l'utilisateur dédié et un mot de passe (affiché une seule fois).

$sudo lnmp db-create shop
Interface web

Piloter LNMP depuis le navigateur

L'installation déploie un panneau d'administration : applications, SSL, domaines, bases de données et opérations système, dans une interface conviviale.

http://admin.lnmp Lié à 127.0.0.1 et protégé par mot de passe. En local, ajoutez 127.0.0.1 admin.lnmp à votre poste ; sur un VPS, passez par un tunnel SSH.

Accès distant à un VPS (tunnel SSH)

$ ssh -L 8080:127.0.0.1:80 utilisateur@mon-vps # puis ouvrez http://localhost:8080

Le panneau exige une authentification. Réinitialisez le mot de passe à tout moment avec sudo lnmp set-password.

Référence

Toutes les commandes

Chaque action est disponible en commande directe (scriptable) comme dans le menu interactif.

Commande Description
Global
lnmp install Installer ou reprendre l'installation de la pile.
lnmp uninstall Désinstaller complètement la pile.
lnmp doctor Diagnostiquer services, config Nginx et certificats.
lnmp -v Afficher la version.
Applications
lnmp list Lister les applications et leur statut.
lnmp add Ajouter une application (vhost + activation).
lnmp enable <id> Activer une application.
lnmp disable <id> Désactiver une application.
lnmp delete <id> Supprimer une application.
lnmp reload-app Reconstruire le registre depuis Nginx.
Domaines
lnmp domain list Lister les domaines de base.
lnmp domain add <nom> Ajouter un domaine (--local pour du local).
lnmp domain remove <nom> Retirer un domaine de base.
SSL — Let's Encrypt
lnmp add-ssl <id> Générer un certificat SSL + redirection HTTPS.
lnmp remove-ssl <id> Retirer un certificat SSL.
Bases de données — MariaDB
lnmp db-create <nom> Créer une base + utilisateur dédié.
lnmp db-list Lister les bases de données.
lnmp db-drop <nom> Supprimer une base de données.
Interface web
lnmp set-password Définir le mot de passe du panneau (admin.lnmp).