Vous pouvez installer les mises à jour et redémarrer votre box depuis l’application web Calaos, dans son onglet Admin. Ni terminal ni SSH nécessaires.
Ces actions sont protégées par un mot de passe admin, distinct du mot de passe que vous utilisez pour vous connecter à Calaos. Il n’est demandé que lorsque vous ouvrez l’onglet Admin.
Cette fonction n’existe que sous Calaos OS. Voir Docker et autres installations plus bas.
L’onglet Admin ne fonctionne que sur une connexion sécurisée. Ouvrez l’application web avec une adresse qui commence par https://, par exemple https://192.168.1.50 (l’adresse IP de votre box), et non http://.
Votre navigateur affichera probablement un avertissement du type « Votre connexion n’est pas privée ». C’est normal : la box crée elle-même son certificat de sécurité, qu’aucune autorité publique n’a signé. Les échanges sont chiffrés malgré tout. Acceptez l’avertissement une fois (en général sous « Avancé », puis « Continuer vers … »).
Si vous ouvrez l’onglet Admin sur une adresse qui ne commence pas par https://, l’application web vous demande d’utiliser https:// et propose un bouton Ouvrir en https://.
user / pass ne peut pas recevoir de mot de passe admin : ces valeurs sont connues de tous. C’est le mot de passe de Calaos Server, voir Changer les identifiants de Calaos Server.Une fois le mot de passe de connexion changé, Calaos Installer, les applications mobiles et l’application web ont toutes besoin du nouveau.
Le mot de passe admin n’est stocké nulle part en clair : notez-le dans votre gestionnaire de mots de passe. Si vous le perdez, voir Si vous perdez le mot de passe admin.
Choisissez vous-même le mot de passe admin, peu après l’installation. Tant qu’il n’est pas défini, quiconque connaît votre mot de passe de connexion peut le définir le premier. Si vous constatez que quelqu’un d’autre l’a fait, la récupération ci-dessous remet les choses en ordre.
Quand l’onglet Admin le demande (la première fois, puis toutes les 15 minutes, ou après un rechargement de la page), saisissez le mot de passe admin et appuyez sur Déverrouiller. Après plusieurs mots de passe erronés, l’application web vous fait attendre un peu (jusqu’à une minute) et indique combien de temps.
La box reste utilisable pendant la mise à jour. L’application web peut perdre la connexion un instant pendant le redémarrage du serveur, et se reconnecte d’elle-même.
Quand c’est fini, l’application web affiche Mise à jour terminée. Si elle affiche Mise à jour terminée — redémarrez la box, une partie de ce qui a été installé ne prend effet qu’après un redémarrage : cliquez sur Redémarrer la box dans la section Box de l’onglet, puis sur Redémarrer pour confirmer. Comptez environ une minute ; l’application web se reconnecte quand la box est revenue.
Mettre à jour est aussi sûr qu’avec le terminal : un point de restauration est créé avant chaque installation. Voir Revenir en arrière.
Une box qui n’a pas encore l’onglet Admin se met à jour avec les outils habituels : calaos-os upgrade, apt upgrade (voir Mise à jour), ou le bouton de mise à jour de l’écran tactile. Il n’y a rien d’autre à faire : une fois cette mise à jour terminée, l’onglet Admin fonctionne. Pendant un court moment, l’application web peut afficher Activation de l’administration en cours le temps que la box termine : elle réessaie toute seule. Si elle affiche encore Redémarrez la box au bout de quelques minutes, redémarrez la box vous-même, car l’onglet Admin ne peut pas le faire dans cet état : débranchez-la puis rebranchez-la, ou tapez reboot en SSH (voir Services).
Dans l’onglet Admin déverrouillé, section Box, Mot de passe admin, cliquez sur Changer. Vous restez déverrouillé avec le nouveau mot de passe.
Ce changement demande aussi un code envoyé à votre téléphone approbateur : enrôlez-en un d’abord, voir Téléphone approbateur et console web. Cette page couvre aussi la console web. Sans téléphone approbateur, utilisez calaos-os admin set en SSH (ci-dessous).
Connectez-vous à la box en SSH (voir Accès SSH) en root, et tapez :
calaos-os admin set
La commande demande le nouveau mot de passe admin, deux fois. Il remplace l’ancien, que vous vous en souveniez ou non. Toute personne connectée à l’onglet Admin doit se déverrouiller à nouveau.
calaos-os admin set garde les téléphones approbateurs. Pour supprimer complètement le mot de passe admin, et les téléphones approbateurs, afin que l’application web propose d’en choisir un nouveau :
calaos-os admin reset
Après calaos-os admin reset, quiconque connaît votre mot de passe de connexion pourrait choisir le nouveau mot de passe admin avant vous. Changez d’abord le mot de passe de Calaos Server, puis choisissez le nouveau mot de passe admin dans l’application web.
Ces deux commandes exigent l’accès root à la box, c’est pourquoi aucun écran web ne peut faire la même chose.
Un retour en arrière restaure aussi le mot de passe admin (et le mot de passe de connexion) qui existaient à la date choisie.
api_allowed_hostsTant que le mot de passe admin n’est pas défini, rien n’est vérifié. Une fois défini, l’application web n’est acceptée que si vous l’ouvrez avec l’une des adresses IP de la box (y compris sur le port 5454), ou avec n’importe quel nom en https://. Sans https, par exemple http://calaos.local:5454, tout autre nom, y compris calaos.local ou le nom d’hôte de la box, est refusé tant que vous ne l’ajoutez pas à l’option api_allowed_hosts : une liste de noms séparés par des virgules. Une entrée peut se terminer par un port, par exemple calaos.example.net:8080 ; sans port, tous les ports sont acceptés.
calaos_config set api_allowed_hosts "calaos.example.net,box.local"
(voir calaos_config.) Si possible, faites-le avant de choisir le mot de passe admin : l’écran de choix du mot de passe affiche la liste en vigueur pour que vous puissiez la vérifier.
Si vous avez modifié le fichier haproxy.cfg à la main, conservez la ligne http-request set-header X-Forwarded-Proto dans chaque frontend. Sans elle, la box ne peut pas savoir que la connexion est sécurisée.
Pour utilisateurs avancés. Si une autre machine de votre réseau se place devant la box (HAProxy, nginx…), elle doit rediriger vers le HAProxy de la box sur le port 443 en TLS, et non vers le port 5454 en http simple : avec 5454, l’application web affiche « Use https:// », car le mot de passe admin circulerait sinon en clair sur votre réseau. Votre navigateur ne voit que le certificat du proxy externe ; le certificat de la box n’est vérifié que par ce proxy. La raison : calaos_server n’accepte les actions d’administration que depuis une connexion loopback portant X-Forwarded-Proto: https, que seul le HAProxy de la box positionne ; les en-têtes X-Forwarded-* de votre proxy externe sont donc facultatifs. L’en-tête Host d’origine doit être transmis tel quel : il permet à la vérification de l’Origin de fonctionner, donc api_allowed_hosts n’est pas nécessaire.
Si la box a un certificat Let’s Encrypt valide via calaos_ddns (par exemple mabox.calaos.fr), vérifiez-le avec les certificats du système et le nom DDNS de la box. Exemple HAProxy :
backend calaos
server calaos-server <ip-box>:443 ssl sni str(mabox.calaos.fr) verify required ca-file ca-certificates.crt verifyhost mabox.calaos.fr check check-sni mabox.calaos.fr
Ici ca-file ca-certificates.crt suppose ca-base /etc/ssl/certs dans la section global ; @system-ca ne fonctionne pas dans ce cas. Sans DDNS, la box a un certificat auto-signé : remplacez les options ssl ... par ssl verify none (ou donnez le certificat de la box à ca-file pour l’épingler).
L’équivalent nginx (le map va dans le bloc http) :
map $http_upgrade $connection_upgrade {
default upgrade;
'' close;
}
location / {
proxy_pass https://<ip-box>:443;
proxy_ssl_server_name on;
proxy_ssl_name mabox.calaos.fr;
proxy_ssl_verify on;
proxy_ssl_verify_depth 2;
proxy_ssl_trusted_certificate /etc/ssl/certs/ca-certificates.crt;
proxy_set_header Host $host;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection $connection_upgrade;
proxy_read_timeout 1h;
}
(avec un certificat auto-signé, utilisez proxy_ssl_verify off; et supprimez les deux autres lignes proxy_ssl_ du nom et de l’AC.)
Si la box n’arrive pas à renouveler son certificat Let’s Encrypt, elle retombe sur un certificat auto-signé et le proxy refuse la connexion. C’est voulu : pas de dégradation silencieuse de la vérification.
Il n’y a pas d’administration web sur les installations Docker ni sur les systèmes autres que Calaos OS. L’onglet Admin affiche Administration indisponible, et rien d’autre ne change : tout le reste fonctionne comme avant. Mettez ces installations à jour avec leurs outils habituels (pour Docker, récupérez les nouvelles images).
Si votre box a un mot de passe admin, Charger le projet et Envoyer le projet (menu Calaos Server) dans Calaos Installer le demandent aussi : un champ facultatif Mot de passe admin apparaît dans les deux fenêtres. Laissez-le vide si la box n’en a pas. Il n’est jamais enregistré : saisissez-le à chaque ouverture de la fenêtre. Voir Calaos Installer.