Certificat SSL pour IP

Une commande pour obtenir un certificat HTTPS gratuit et reconnu de Let's Encrypt pour l'adresse IP de votre serveur, sans nom de domaine ; installé et renouvelé automatiquement.

À exécuter en root sur votre serveur

bash <(curl -sL ipk.me/ssl) -l fr 216.73.217.175
-l frLangue du rapport (celle de cette page)
-4 / -6IPv4 ou IPv6 uniquement
-w /var/www/htmlValider via la racine de votre serveur web au lieu d'un serveur temporaire sur le port 80
-r "systemctl reload nginx"Commande exécutée après chaque renouvellement (par défaut : recharger nginx / Apache / Caddy s'il tourne)
-d /etc/ssl/ipkEmplacement des fichiers du certificat
-yNe pas demander avant d'arrêter le serveur web sur le port 80
--alpnValider via le port 443 (TLS-ALPN-01) au lieu du port 80
--stagingUtiliser l'environnement de test de Let's Encrypt (certificat non reconnu, pour essayer)
203.0.113.10 2001:db8::10Adresses IP à inclure. Sans elles, l'IPv4 / IPv6 sortante du serveur est utilisée ; s'il a d'autres IP publiques, on vous demande lesquelles inclure

Fonctionnement

  • Un client ACME léger intégré (seulement bash, openssl et curl ; python3 pour le serveur de validation temporaire) demande le certificat avec le profil courte durée de Let's Encrypt : les certificats IP sont valables environ 6 jours et renouvelés tous les 3 jours.
  • La validation passe par le port 80 (HTTP-01) : le port 80 de l'IP doit être joignable depuis Internet ; avant l'émission, ipk.me le vérifie depuis l'extérieur.
  • Port 80 bloqué ? Le port 443 fonctionne aussi (TLS-ALPN-01) : ajoutez --alpn ; il est aussi choisi automatiquement si seul le port 443 est joignable. Les certificats IP ne peuvent pas être validés par DNS.
  • Après l'émission, les chemins du certificat et de la clé et la validité sont affichés ; une copie du script est gardée dans /etc/ssl/ipk et une tâche de renouvellement quotidienne est ajoutée à la crontab.
  • Si nginx, Apache ou Caddy utilise le port 80 / 443, il est arrêté quelques secondes pendant l'émission et le renouvellement ; -w permet de l'éviter.
  • IPv4 et IPv6 vont dans un seul certificat. Les adresses privées et CGNAT ne peuvent pas en obtenir. En Chine continentale, les fournisseurs cloud bloquent souvent le port 80 des serveurs sans enregistrement ICP.
  • Fonctionne sous Linux. Seules vos adresses IP sont envoyées à ipk.me ; la clé privée ne quitte jamais votre serveur.
Français