Ci-dessous, les différences entre deux révisions de la page.
| Les deux révisions précédentesRévision précédenteProchaine révision | Révision précédente | ||
| linux:nginx [11-05-2026 21:06] – edmc73 | linux:nginx [10-07-2026 19:42] (Version actuelle) – [Convertir pour le smartphone (.p12)] edmc73 | ||
|---|---|---|---|
| Ligne 74: | Ligne 74: | ||
| dpkg -i geoipupdate_7.1.0_linux_amd64.deb | dpkg -i geoipupdate_7.1.0_linux_amd64.deb | ||
| - | < | + | < |
| # configuration | # configuration | ||
| vi / | vi / | ||
| Ligne 105: | Ligne 105: | ||
| Pour Nginx | Pour Nginx | ||
| - | < | + | < |
| #Fichier de config pour spécifier l' | #Fichier de config pour spécifier l' | ||
| vi / | vi / | ||
| Ligne 125: | Ligne 125: | ||
| apt install mmdb-bin | apt install mmdb-bin | ||
| - | < | + | < |
| mmdblookup --file / | mmdblookup --file / | ||
| Ligne 213: | Ligne 213: | ||
| Config pour restreindre par pays | Config pour restreindre par pays | ||
| - | < | + | < |
| server{ | server{ | ||
| server_name toto.com; # managed by Certbot | server_name toto.com; # managed by Certbot | ||
| Ligne 267: | Ligne 267: | ||
| </ | </ | ||
| + | Quand la commande vous demande les informations, | ||
| + | * Country Name : FR | ||
| + | * Organization Name : Ma Maison | ||
| + | * Common Name : Mon-Autorite-CA (Utilisez un nom qui indique clairement que c'est le " | ||
| ==== Création du certification pour le client ==== | ==== Création du certification pour le client ==== | ||
| On génère une clé spécifiquer pour le client, signée par le CA. | On génère une clé spécifiquer pour le client, signée par le CA. | ||
| Ligne 274: | Ligne 278: | ||
| # Générer la clé du smartphone | # Générer la clé du smartphone | ||
| openssl genrsa -out smartphone.key 4096 | openssl genrsa -out smartphone.key 4096 | ||
| + | |||
| # Créer la demande de signature | # Créer la demande de signature | ||
| openssl req -new -key smartphone.key -out smartphone.csr | openssl req -new -key smartphone.key -out smartphone.csr | ||
| + | |||
| # Signer le certificat avec votre CA | # Signer le certificat avec votre CA | ||
| - | openssl x509 -req -days 365 days -in smartphone.csr -CA ca.crt -CAkey ca.key -set_serial 01 -out smartphone.crt | + | # Notez qu'on défini ici un numéro de série 01 |
| + | openssl x509 -req -days 365 -in smartphone.csr -CA ca.crt -CAkey ca.key -set_serial 01 -out smartphone.crt | ||
| </ | </ | ||
| + | C'est ici qu'il faut être vigilant : | ||
| + | * Country Name : FR | ||
| + | * Organization Name : Ma Maison (Le même que le CA, c'est mieux). | ||
| + | * Common Name : Smartphone-Jean (Il doit être différent du CN de l' | ||
| ==== Convertir pour le smartphone (.p12) ==== | ==== Convertir pour le smartphone (.p12) ==== | ||
| < | < | ||
| openssl pkcs12 -export -out smartphone.p12 -inkey smartphone.key -in smartphone.crt -certfile ca.crt | openssl pkcs12 -export -out smartphone.p12 -inkey smartphone.key -in smartphone.crt -certfile ca.crt | ||
| </ | </ | ||
| + | Un mot de passe sera demandé, il permet de sécuriser le fichier car il contient à la fois le certificat et sa clé privée. | ||
| - | Envoyez | + | Pour lire le contenu de ce fichier |
| + | openssl pkcs12 -in smartphone.p12 -info -nodes | ||
| + | |||
| + | Envoyez ce fichier .p12 à votre téléphone et installez-le dans les '' | ||
| + | |||
| + | Le mot de passe sera demandé lors de l' | ||
| + | |||
| + | Sur Chrome, il faut aller ici -> '' | ||
| + | |||
| + | Sur Zen browser, '' | ||
| ==== Configuration Nginx ==== | ==== Configuration Nginx ==== | ||
| - | < | + | < |
| server { | server { | ||
| listen 443 ssl; | listen 443 ssl; | ||
| Ligne 307: | Ligne 328: | ||
| } | } | ||
| </ | </ | ||
| + | |||
| + | ==== Révocation de certificat ==== | ||
| + | |||
| + | Générer et gérer une CRL (Certificate Revocation List) demande un peu d' | ||
| + | |||
| + | Voici la procédure étape par étape pour révoquer un certificat et générer ce fichier. | ||
| + | |||
| + | === 1. Préparer l' | ||
| + | Pour qu' | ||
| + | |||
| + | Exécutez ces commandes dans le dossier où se trouvent vos clés : | ||
| + | |||
| + | <code bash> | ||
| + | touch index.txt | ||
| + | echo 1000 > crl_number | ||
| + | </ | ||
| + | |||
| + | === 2. Créer un fichier de configuration minimal (crl.conf) === | ||
| + | OpenSSL a besoin de savoir où chercher les informations. Créez un fichier nommé crl.conf et collez ceci dedans : | ||
| + | |||
| + | <code ini> | ||
| + | [ ca ] | ||
| + | default_ca = CA_default | ||
| + | |||
| + | [ CA_default ] | ||
| + | database = ./index.txt | ||
| + | crlnumber = ./ | ||
| + | certificate = ./ca.crt | ||
| + | private_key = ./ca.key | ||
| + | default_md = sha256 | ||
| + | </ | ||
| + | |||
| + | === 3. Révoquer le certificat compromis === | ||
| + | Imaginons que le certificat à bannir soit smartphone.crt. | ||
| + | |||
| + | openssl ca -config crl.conf -revoke smartphone.crt | ||
| + | |||
| + | Cette commande va mettre à jour le fichier '' | ||
| + | |||
| + | === 4. Générer le fichier .crl pour Nginx === | ||
| + | Maintenant, créez le fichier que Nginx pourra lire : | ||
| + | |||
| + | openssl ca -config crl.conf -gencrl -out liste_noire.crl | ||
| + | |||
| + | === 5. Configurer Nginx Proxy Manager === | ||
| + | Dans l' | ||
| + | |||
| + | ssl_crl / | ||
| + | |||
| + | (Assurez-vous que le fichier est bien présent dans le volume Docker de NPM, comme pour le ca.crt). | ||