Code source wiki de Allgemein - Kommbox- bzw. TCMS Webserver Zertifikat austauschen
Modifié par Nelson Fogang Dzokam le 2025/10/17 08:05
Afficher les derniers auteurs
| author | version | line-number | content |
|---|---|---|---|
| 1 | Le certificat du serveur Web utilisé sur un RangeeOS (avec ou sans TCMS) peut être remplacé si nécessaire. Deux méthodes sont généralement possibles : | ||
| 2 | |||
| 3 | 1. Un fichier de demande de certificat peut être utilisé sur le client et signé en externe | ||
| 4 | 1. Un certificat entièrement généré en externe peut être utilisé | ||
| 5 | |||
| 6 | Dans les deux cas, le certificat doit ensuite être converti dans le format approprié (codage Base64). | ||
| 7 | |||
| 8 | {{info}} | ||
| 9 | Les commandes "openssl" utilisées dans ce guide peuvent généralement être exécutées sur n’importe quel PC disposant d’OpenSSL installé. Elles peuvent, mais n’ont pas besoin d’être exécutées côté Thin Client. Si vous souhaitez exécuter les commandes directement sur RangeeOS, vous aurez besoin des droits root appropriés et des outils pour transférer les fichiers vers et depuis le Thin Client. | ||
| 10 | |||
| 11 | * [[Root-Terminal-Passwort>>doc:Handbuecher.Handbuch11.Kapitel 3 - Administration des Clients.3\.C Benutzereinstellungen.3\.C\.A\. Root-Terminal-Passwort]] | Il est recommandé de définir un mot de passe fixe pour l’utilisateur afin de faciliter la résolution d’éventuelles erreurs. | ||
| 12 | * Par exemple : [[WinSCP >>https://winscp.net/eng/download.php]]pour le transfert de fichiers de Windows vers RangeeOS. | ||
| 13 | |||
| 14 | Dans ce guide, les étapes sont décrites pour exécuter les commandes directement côté RangeeOS. | ||
| 15 | |||
| 16 | |||
| 17 | {{/info}} | ||
| 18 | |||
| 19 | = Créer un fichier de demande de certificat = | ||
| 20 | |||
| 21 | 1. Connectez-vous en tant qu’utilisateur "[[admin>>doc:Handbuecher.Handbuch11.Kapitel 3 - Administration des Clients.3\.C Benutzereinstellungen.3\.C\.A\. Root-Terminal-Passwort]]" sur le client via un terminal ({{status title="STRG"/}} + {{status title="SHIFT"/}} + {{status title="ALT"/}} + {{status title="T"/}}) ou via une connexion SSH sur RangeeOS. | ||
| 22 | 1. Adaptez les paramètres de la commande suivante selon vos besoins et exécutez-la sur l’appareil:{{code language="bash"}}openssl req -newkey rsa:4096 -sha256 -keyout key.pem -out req.pem \ | ||
| 23 | -subj "/C=DE/ST=Bundesland/L=Stadt/O=Einrichtung/OU=Abteilung/OU=Team/CN=<FQDN>" \ | ||
| 24 | -addext "subjectAltName = DNS:<DNS>,IP:<IP>"{{/code}} | ||
| 25 | 1*. **C/ST/L/O/OU** | ||
| 26 | Optionnel et librement sélectionnable | ||
| 27 | 1*. **<FQDN>**: | ||
| 28 | der Hostname unter dem das RangeeOS später angesprochen werden soll | ||
| 29 | 1*. **<DNS>:** | ||
| 30 | Le nom d’hôte sous lequel RangeeOS sera ensuite accessible. | ||
| 31 | 1*. **<IP>:** | ||
| 32 | Optionnel. Adresse IP du TCMS pour laquelle le certificat doit être valide. Si l’adresse IP ne doit pas faire partie du certificat, supprimez la section correspondante. | ||
| 33 | 1*. Exemple d’une commande complète : | ||
| 34 | {{code language="bash"}}openssl req -newkey rsa:4096 -sha256 -keyout key.pem -out req.pem \ | ||
| 35 | -subj "/C=DE/ST=NRW/L=Aachen/O=Rangee/OU=Support/OU=Zertifikatstest/CN=tc-b0416f05c363.rangee.local" \ | ||
| 36 | -addext "subjectAltName = DNS:tc-b0416f05c363.rangee.local,IP:192.168.50.29"{{/code}} | ||
| 37 | 1. {{code language="bash"}}openssl req -newkey rsa:4096 -sha256 -keyout key.pem -out req.pem \ | ||
| 38 | -subj "/C=DE/ST=Bundesland/L=Stadt/O=Einrichtung/OU=Abteilung/OU=Team/CN=<FQDN>" \ | ||
| 39 | -addext "subjectAltName = DNS:<DNS>,IP:<IP>"{{/code}} | ||
| 40 | 1. Après avoir soumis la commande, attribuez un mot de passe à votre clé privée (au moins 4 caractères). | ||
| 41 | 1. Comme la clé privée du certificat serveur est nécessaire sans mot de passe, vous devez ensuite supprimer le mot de passe avec cette commande : | ||
| 42 | {{code language="bash"}}openssl rsa -in key.pem -out key.pem{{/code}} | ||
| 43 | 1. Connectez-vous au client avec "WinSCP" en utilisant les identifiants "admin" et téléchargez les fichiers de demande "///tmp/req.pem//" und "///tmp/key.pem//" herunter. | ||
| 44 | 1. Soumettez le fichier req.pem à une autorité de certification de votre choix. Si l’option est disponible, faites générer directement un certificat codé en Base64. Une fois le certificat obtenu, passez à l’étape suivante. | ||
| 45 | |||
| 46 | = Importation d’un certificat = | ||
| 47 | |||
| 48 | Pour importer le certificat, vous devez disposer à la fois de la Private Key et du certificat serveur émis, tous deux codés en Base64 : | ||
| 49 | |||
| 50 | * Si vous disposez des deux sous la forme d’un fichier PFX combiné, vous devez d’abord séparer les deux composants. Pour cela, vous pouvez par exemple utiliser les commandes suivantes : | ||
| 51 | {{code language="bash"}}sudo openssl pkcs12 -in certname.pfx -nocerts -out key.pem -nodes # Exportiert den Private Key | ||
| 52 | sudo openssl pkcs12 -in certname.pfx -nokeys -out cert.pem # Exportiert das Zertifikat | ||
| 53 | openssl rsa -in key.pem -out key.pem # entfernt das Passwort vom Private Key{{/code}} | ||
| 54 | * Vérifiez que votre certificat est au format Base64. Pour cela, ouvrez-le avec un éditeur de texte quelconque. Le certificat doit être présenté sous cette forme : | ||
| 55 | {{code language="bash"}}-----BEGIN CERTIFICATE----- | ||
| 56 | […] | ||
| 57 | -----END CERTIFICATE-----{{/code}} | ||
| 58 | Si le certificat n’est pas codé de cette manière, vous pouvez le convertir avec cette commande : | ||
| 59 | * {{code language="bash"}}openssl x509 -inform der -in certname.cer -out certname.pem{{/code}} | ||
| 60 | |||
| 61 | Si vous disposez du certificat et de la Private Key sous la forme appropriée, écrivez le contenu des deux certificats l’un sous l’autre dans un fichier "Server.pem" et enregistrez-le : | ||
| 62 | {{code language="bash"}}-----BEGIN RSA PRIVATE KEY----- | ||
| 63 | […] | ||
| 64 | -----END RSA PRIVATE KEY----- | ||
| 65 | -----BEGIN CERTIFICATE----- | ||
| 66 | […] | ||
| 67 | -----END CERTIFICATE-----{{/code}} | ||
| 68 | |||
| 69 | = Téléverser le certificat = | ||
| 70 | |||
| 71 | Vous pouvez téléverser le certificat final via la Kommbox sous {{status title="Remote-Administration"/}} -> "Gerätezertifikat hochladen" . Ensuite, un redémarrage de RangeeOS est nécessaire. | ||
| 72 | |||
| 73 | Après le redémarrage, le certificat sera affiché comme valide dans le navigateur. | ||
| 74 | |||
| 75 | |||
| 76 | [[image:attach:zert01.png||height="321" width="600"]] | ||
| 77 | |||
| 78 | [[image:image-20221128112923-1.png||height="321" width="600"]] | ||
| 79 | |||
| 80 | = Gestion des erreurs = | ||
| 81 | |||
| 82 | Si le certificat a été importé avec succès mais que la Kommbox ne démarre plus par la suite, vous pouvez générer un nouveau certificat auto-signé via le terminal ou SSH. | ||
| 83 | |||
| 84 | == Lire les messages d’erreur == | ||
| 85 | |||
| 86 | Connectez-vous sur le client et exécutez cette commande : | ||
| 87 | |||
| 88 | {{code language="bash"}} | ||
| 89 | sudo /usr/sbin/lighttpd -D -f /etc/lighttpd/lighttpd.conf | ||
| 90 | {{/code}} | ||
| 91 | |||
| 92 | Notez la sortie et envoyez-la à notre support | ||
| 93 | |||
| 94 | == Regénérer le certificat == | ||
| 95 | |||
| 96 | Pour régénérer le certificat, exécutez cette commande : | ||
| 97 | |||
| 98 | |||
| 99 | {{code language="bash"}} | ||
| 100 | sudo rangee system:certificate:generate -f | ||
| 101 | {{/code}} | ||
| 102 | |||
| 103 | Après un nouveau redémarrage, la Kommbox est de nouveau accessible. |