Installer son propre certificat sur un contrôleur UniFi sous Linux

Si vous avez un contrôleur UniFi vous avez peut être envie d’utiliser votre propre certificat SSL dessus plutôt que d’utiliser celui généré automatiquement. C’est par chance assez simple grâce à un développeur qui a créé un script aidant à la tâche.

Commencez déjà par commander votre certificat évidemment.. pourquoi pas un certificat Wildcard pour gérer plus facilement les sous domaines.

De là vous allez obtenir des fichiers et dont notamment un fichier .CRT qui est votre certificat, une clef de certificat (que vous aurez généré .. et enregistré en .KEY) ainsi que la chaine de certificats fournie par la société signant votre certificat. Si vous n’avez pas de chaine de certificats mais trois fichiers séparés, il suffit de mettre le contenu de chacun de ces fichiers dans un .CRT que vous créerez.

But du jeu , finir avec 2 fichiers .CRT (la chaine de certificats, le votre) et un fichier .KEY. Placez ces fichiers sur le serveur contenant votre contrôleur UniFi

Ensuite vous allez télécharger sur votre machine Linux ce fichier et lui donner les permissions d’exécution. La commande pourrait donc être :

wget https://github.com/stevejenkins/unifi-linux-utils/raw/master/unifi_ssl_import.sh
chmod +x unifi_ssl_import.sh

Modifiez ce script pour que les réglages qui figurent au début correspondent à votre façon de l’utiliser :

# CONFIGURATION OPTIONS
UNIFI_HOSTNAME=unifi.mondomaine.zzzzz
UNIFI_SERVICE=unifi

# Uncomment following three lines for Fedora/RedHat/CentOS
#UNIFI_DIR=/opt/UniFi
#JAVA_DIR=${UNIFI_DIR}
#KEYSTORE=${UNIFI_DIR}/data/keystore

# Uncomment following three lines for Debian/Ubuntu
UNIFI_DIR=/var/lib/unifi
JAVA_DIR=/usr/lib/unifi
KEYSTORE=${UNIFI_DIR}/keystore

# FOR LET'S ENCRYPT SSL CERTIFICATES ONLY
# Generate your Let's Encrtypt key & cert with certbot before running this script
LE_MODE=no
LE_LIVE_DIR=/etc/letsencrypt/live

# THE FOLLOWING OPTIONS NOT REQUIRED IF LE_MODE IS ENABLED
PRIV_KEY=/root/votreclef.key
SIGNED_CRT=/root/votrecertificat.crt
CHAIN_FILE=/root/chainedeconfiance.crt

Il ne vous reste plus qu’à exécuter le script :

./unifi_ssl_import.sh

Ce script va importer les trois fichiers fournis et redémarrera votre contrôleur. Il est aussi utilisable avec Let’s Encrypt , dans ce cas je vous conseille d’aller lire le mode d’emploi de l’auteur, en anglais ici.

Tags: ,