Sécurité
Où dans l'administration : System › Admin › Console security (
/account), Admin users (/users) ; System › Settings › Customer logins (/settings/login).
Console d'administration
Authentification à deux facteurs (TOTP)
La console est accessible depuis Internet, activez donc le TOTP.
- Ouvrez System › Admin › Console security.
- Sous Two-factor authentication (TOTP), cliquez sur Start setup.
- Scannez le code QR avec Google Authenticator, Authy, 1Password ou Bitwarden, puis saisissez le code à 6 chiffres.
Plages IP de console autorisées
Sous Allowed console IP ranges, saisissez une adresse IP ou un CIDR (IPv4 ou IPv6) par ligne. Vide signifie n'importe où. En dehors de la plage, la connexion et l'API d'administration sont bloquées.
Ne vous enfermez pas dehors
La page affiche votre IP actuelle et exige que la nouvelle liste l'inclue. Utilisez + Add my IP. Si vous êtes quand même bloqué, utilisez l'emergency access depuis le serveur.
Changer le mot de passe
Remplissez Current password, New password et Confirm new password. Utilisez un mot de passe long et unique (12 caractères ou plus ; l'assistant d'installation impose 12 pour le premier administrateur).
Comptes administrateur et rôles
Ouvrez System › Admin › Admin users et utilisez + Create account.
| Rôle | Accès |
|---|---|
admin | Accès complet à l'API d'administration |
staff | Lecture seule sur l'ensemble du système |
user | Vue en lecture seule des ressources d'un client |
Le compte root est celui créé dans l'setup wizard. Actions sur les lignes : Edit, Reset PW, Key, Delete. Les mots de passe sont stockés sous forme de hachages salés ; modifier ou verrouiller un compte met fin immédiatement à ses sessions.
Connexion client
Ouvrez System › Settings › Customer logins.
| Paramètre | Description |
|---|---|
| Connexion Google | Activez cette option, puis saisissez l'ID client et le secret OAuth. Copiez l'Callback URL affichée sur la page dans Google Cloud Console › APIs & Services › Credentials › OAuth client ID › Authorized redirect URIs. Utilisez Test configuration. |
| GitHub login | De même, avec GitHub › Settings › Developer settings › OAuth Apps › Authorization callback URL |
| Passkey | Connexion par empreinte digitale, code PIN ou clé matérielle ; activé par défaut. Les Passkeys sont liés au domaine ; chaque domaine de revendeur fonctionne de manière autonome. Saisissez un ancien domaine dans Legacy passkey Domain après un changement de marque afin d'afficher un conseil utile aux clients |
| Réauthentification lors de l'ajout de méthodes de connexion | Demander à nouveau le mot de passe avant d'ajouter une clé d'accès ou de lier Google/GitHub (désactivé par défaut) |
| Captcha | Cloudflare Turnstile ou Google reCAPTCHA lors de l'inscription : activez l'option, choisissez le fournisseur, puis saisissez la clé de site et la clé secrète |
| Block e-mail domains | Un domaine par ligne (max 2000). Les adresses correspondantes sont rejetées lors de l'inscription avec email_domain_blocked |

Politiques intégrées
| Politique | Valeur |
|---|---|
| Mot de passe client | Au moins 10 caractères, lettres et chiffres |
| Session client | 30 jours ; les sessions "se connecter en tant que client" durent 1 heure |
| Vérification des e-mails | Requise avant de créer une machine virtuelle si require e-mail verified est activé dans les paramètres de vente |
| Anti-carding | Les comptes disposant d'un solde inférieur au rechargement minimum ne peuvent créer qu'un nombre limité de machines virtuelles |
Durcissement du serveur
- Le port 3000 est fermé après l'installation et le TLS ; voir Installation.
- Le service s'exécute sous l'utilisateur non privilégié
nexcmpavec un bac à sable systemd restreint. - Les clés API, les identifiants de paiement et les mots de passe SMTP sont stockés de manière chiffrée ; la clé principale se trouve dans
/var/lib/nexcmp/secrets— protégez vos backups. - Les versions sont vérifiées à l'aide de SHA-256 et d'une signature Ed25519 avant l'installation.