Ce document explique comment obtenir un certificat Cryptons, l'installer sur le tableau de bord Cisco Business et configurer le renouvellement automatique à l'aide de l'interface de ligne de commande (CLI). Pour obtenir des informations générales sur la gestion des certificats, consultez l'article Gérer les certificats sur le tableau de bord Cisco Business.
Let’s Encrypt est une autorité de certification qui fournit gratuitement des certificats SSL (Secure Sockets Layer) de validation de domaine (DV) au public à l’aide d’un processus automatisé. Encrypt fournit un mécanisme facilement accessible pour obtenir des certificats signés pour les serveurs Web, donnant à l'utilisateur final la certitude qu'il accède au service approprié. Pour plus d’informations, visitez le site Web Let’s Encrypt.
L'utilisation des certificats Encrypt avec Cisco Business Dashboard est relativement simple. Bien que le tableau de bord Cisco Business présente certaines exigences spécifiques pour l'installation des certificats, au-delà de la simple mise à disposition du certificat au serveur Web, il est toujours possible d'automatiser l'émission et l'installation du certificat à l'aide des outils de ligne de commande fournis. Le reste de ce document passe en revue le processus de délivrance d'un certificat et d'automatisation du renouvellement du certificat.
Ce document utilise les défis HTTP pour valider la propriété de domaine. Cela nécessite que le serveur Web du tableau de bord soit accessible depuis Internet sur les ports standard TCP/80 et TCP/443. Si le serveur Web n'est pas accessible depuis Internet, envisagez plutôt d'utiliser les défis DNS. Pour plus d'informations, reportez-vous à la rubrique Encrypt for Cisco Business Dashboard with DNS.
La première étape consiste à obtenir un logiciel qui utilise le certificat de protocole ACME. Dans cet exemple, nous utilisons le client certbot, mais il existe de nombreuses autres options disponibles.
Pour permettre l'automatisation du renouvellement de certificat, le client certbot doit être installé sur le tableau de bord. Pour installer le client certbot sur le serveur de tableau de bord, utilisez les commandes suivantes :
Il est important de noter que dans cet article, les sections bleues sont des invites et des sorties de CLI. Le texte blanc répertorie les commandes. Les commandes de couleur verte, notamment dashboard.example.com, pnpserver.example.com et user@example.com doivent être remplacées par des noms DNS appropriés à votre environnement.
Ensuite, le serveur Web Dashboard doit être configuré pour héberger les fichiers de vérification requis pour vérifier la propriété du nom d'hôte. Pour ce faire, nous créons un répertoire pour ces fichiers et mettons à jour le fichier de configuration du serveur Web. Ensuite, nous redémarrons l'application Tableau de bord pour que les modifications prennent effet. Utilisez les commandes suivantes :
cbd :~$sudo mkdir /usr/lib/ciscobusiness/dashboard/www/letsencrypt cbd :~$ sudo chmod 755 /usr/lib/ciscobusiness/dashboard/www/letsencrypt cbd :~$sudo bash -c 'cat > /var/lib/ciscobusiness/dashboard/nginx/nginx-loc-letsencrypt.conf' « EOFDemandez un certificat à l'aide de la commande suivante :
cbd :~$sudo certbot certonly —webroot -w /usr/lib/ciscobusiness/dashboard/www/letsencrypt/ -d dashboard.example.com -d pnpserver.example.com —Deployment-hook « cat /etc/letsencrypt/live/dashboard.example.com /fullchain.pem /etc/ssl/certs/DST_Root_CA_X3.pem > /tmp/cbdchain.pem; /usr/bin/cisco-business-dashboard importcert -t pem -k /etc/letsencrypt/live/dashboard.example.com /privkey.pem -c /tmp/cbdchain.pemCette commande indique au service Chiffrer de valider la propriété des noms d'hôte fournis en se connectant au service Web hébergé sur chacun des noms. Cela signifie que le service Web du tableau de bord doit être accessible depuis Internet et hébergé sur les ports 80 et 443. L'accès à l'application de tableau de bord peut être restreint à l'aide des paramètres de contrôle d'accès de la page System > Platform Settings > Web Server de l'interface utilisateur de l'administration du tableau de bord. Pour plus d'informations, reportez-vous au Guide d'administration du tableau de bord Cisco Business Dashboard.
Les paramètres de la commande sont requis pour les raisons suivantes :
certonly | Demandez un certificat et téléchargez les fichiers. N'essayez pas de les installer. Dans le cas de Cisco Business Dashboard, le certificat n'est pas seulement utilisé par le serveur Web, mais également par le service PnP et d'autres fonctions. Par conséquent, le client certbot ne peut pas installer le certificat automatiquement. |
—webroot -w ... | Installez les fichiers de confirmation dans le répertoire créé ci-dessus afin qu'ils puissent être accessibles via le serveur Web du tableau de bord. |
-d tableau de bord.exemple.com -d pnpserver.exemple.com |
Les noms de domaine complet qui doivent être inclus dans le certificat. Le prénom répertorié sera inclus dans le champ Common Name du certificat et tous les noms seront répertoriés dans le champ Subject-Alt-Name. Le nom pnpserver.<domaine> est un nom spécial utilisé par la fonctionnalité Plug-and-Play réseau lors de la détection DNS. Pour plus d'informations, reportez-vous au Guide d'administration du tableau de bord Cisco Business Dashboard. |
—“ de combiné de déploiement... ” | Utilisez l'utilitaire de ligne de commande cisco-business-dashboard pour prendre la clé privée et la chaîne de certificats reçus du service Chiffrer et les charger dans l'application de tableau de bord de la même manière que si les fichiers étaient téléchargés via l'interface utilisateur du tableau de bord. Le certificat racine qui ancre la chaîne de certificats est également ajouté au fichier de certificat ici. Cela est nécessaire pour certaines plates-formes déployées à l'aide de Network Plug and Play. |
Passez en revue le processus de création du certificat en suivant les instructions générées par le client certbot :
cbd :~$sudo certbot certonly —webroot -w /usr/lib/ciscobusiness/dashboard/www/letsencrypt/ -d dashboard.example.com -d pnpserver.example.com —Deployment-hook « cat /etc/letsencrypt/live/dashboard.example.com /fullchain.pem /etc/ssl/certs/DST_Root_CA_X3.pem > /tmp/cbdchain.pem; /usr/bin/cisco-business-dashboard importcert -t pem -k /etc/letsencrypt/live/dashboard.example.com /privkey.pem -c /tmp/cbdchain.pem"Entrez l'adresse e-mail ou C pour annuler.
Saisissez l'adresse e-mail (utilisée pour les avis de renouvellement et de sécurité urgents) (saisissez 'c' pourEntrez A pour accepter ou C pour annuler.
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -Entrez Y pour Oui ou N pour Non.
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -Le certificat a été émis et se trouve dans le sous-répertoire /etc/letsencrypt/live du système de fichiers :
Obtention d'un nouveau certificatLe répertoire contenant les certificats a des autorisations restreintes, de sorte que seul l'utilisateur racine peut afficher les fichiers. Le fichier privkey.pem, en particulier, est sensible et l'accès à ce fichier doit être limité au personnel autorisé uniquement.
Le tableau de bord doit maintenant être exécuté avec le nouveau certificat. Si vous ouvrez l'interface utilisateur du tableau de bord dans un navigateur Web en entrant l'un des noms spécifiés lors de la création du certificat dans la barre d'adresses, le navigateur Web doit indiquer que la connexion est sécurisée et fiable.
Notez que les certificats émis par Let’s Encrypt ont des durées de vie relativement courtes - actuellement 90 jours. Le paquet certbot pour Ubuntu Linux est configuré pour vérifier la validité du certificat deux fois par jour et renouveler le certificat s'il arrive à expiration, donc aucune action ne devrait être requise pour maintenir le certificat à jour. Pour vérifier que les vérifications périodiques se produisent correctement, attendez au moins douze heures après avoir créé le certificat initialement, puis vérifiez dans le fichier journal de certbot les messages similaires aux suivants : cbd :~$ sudo tail /var/log/letsencrypt/letsencrypt.log
2020-07-31 16:50:52,783:DEBUG:certbot.main:certbot version : 0.31.0
2020-07-31 16:50:52,784:DEBUG:certbot.main:Arguments : ['-q']
2020-07-31 16:50:52,785:DEBUG:certbot.main:Plugins découverts :
(PluginEntryPoint#Manual,
PluginEntryPoint#null,PluginEntryPoint#standalone,PluginEntryPoint#webroot)
2020-07-31 16:50:52,793:DEBUG:certbot.log:Niveau de journalisation racine défini à 30
2020-07-31 16:50:52,793:INFO:certbot.log:enregistrement du journal de débogage dans
/var/log/letsencrypt/letsencrypt.log
2020-07-31 16:50:52,802:DEBUG:certbot.plugins.selection :
Authentificateur demandé <certbot.cli.
_Objet par défaut à 0x7f1152969240> et programme d'installation <certbot.cli.
_Objet par défaut à 0x7f1152969240>
2020-07-31 16:50:52,811:INFO:certbot.renew:Le certificat n'est pas encore en cours de renouvellement
2020-07-31 16:50:52,812:DEBUG:certbot.plugins.selection:Authentificateur demandé
webroot et installateur Aucun
2020-07-31 16:50:52,812:DEBUG:certbot.renew:aucun échec de renouvellement
Une fois que le délai d'expiration du certificat est suffisant pour être dans les trente jours, le client certbot renouvelle le certificat et applique automatiquement le certificat mis à jour à l'application de tableau de bord.
Pour plus d'informations sur l'utilisation du client certbot, consultez la page de documentation certbot.