Repository navigation
FR Security
🌐 Langue : EN · DE · FR · ES · TR · EL
Tesla Carview gère des données sensibles : localisation du véhicule, historique de recharge et commandes de contrôle de votre voiture. Cette page explique comment tout est sécurisé et ce que vous devez faire pour protéger votre installation.
- Le mot de passe est haché avec bcrypt (facteur de coût 12)
- Les tentatives de connexion échouées sont limitées : après 5 tentatives, le compte est verrouillé 15 minutes
- Tous les événements de connexion sont enregistrés dans le journal d'audit
Bonnes pratiques pour les mots de passe :
- Utilisez une phrase de passe :
Soleil-Montagne-Voiture-Café(4+ mots, facile à retenir, difficile à craquer) - Minimum 12 caractères — plus c'est long, mieux c'est
- Ne réutilisez pas les mots de passe d'autres services
- Utilisez un gestionnaire de mots de passe (Bitwarden, 1Password, KeePass)
Les passkeys utilisent la biométrie de votre appareil (empreinte digitale, Face ID) à la place d'un mot de passe. Ils résistent au phishing et sont bien plus sécurisés.
Configuration :
- Paramètres → Sécurité → Ajouter une Passkey
- Votre navigateur ouvre une invite biométrique — confirmez avec votre doigt ou visage
- Terminé — vous pouvez maintenant vous connecter uniquement avec votre biométrie
Les passkeys fonctionnent sur :
- Mac (Touch ID)
- iPhone/iPad (Face ID / Touch ID)
- Android (empreinte digitale)
- Windows (Windows Hello)
- Clés matérielles (YubiKey)
⚠️ Le navigateur du véhicule Tesla ne prend pas en charge les passkeys. Utilisez nom d'utilisateur + mot de passe avec "Rester connecté" dans la voiture.
Ajoutez une couche supplémentaire avec une application d'authentification :
- Paramètres → Sécurité → Activer le MFA
- Scannez le QR code avec Google Authenticator, Authy, Bitwarden ou similaire
- Entrez le code à 6 chiffres pour confirmer
Après configuration : chaque connexion nécessite votre mot de passe + le code à 6 chiffres.
Les admins peuvent exiger le MFA pour tous les utilisateurs :
# .env — force le MFA pour tous les nouveaux utilisateurs :
MFA_REQUIRED_FOR_NEW_USERS=true| Paramètre | Valeur |
|---|---|
| Durée de vie du token d'accès | 15 minutes (courte durée) |
| Token de rafraîchissement — standard | 7 jours |
| Token de rafraîchissement — "Rester connecté" | 90 jours |
| Stockage du token de rafraîchissement | Cookie httpOnly, Secure, SameSite=Lax
|
| Rotation des tokens | Nouveau token de rafraîchissement à chaque utilisation |
Les tokens sont stockés sous forme de hachages SHA-256 — le texte en clair ne touche jamais la base de données.
Au-delà de la sécurité intégrée de Tesla Carview, votre serveur a également besoin de protection.
Désactivez l'authentification par mot de passe — utilisez uniquement les clés :
# Générez une paire de clés sur votre ordinateur LOCAL :
ssh-keygen -t ed25519 -C "tesla-server"
# Copiez la clé publique sur le serveur :
ssh-copy-id -i ~/.ssh/id_ed25519.pub root@YOUR-SERVER-IP
# Sur le serveur, désactivez l'auth par mot de passe :
nano /etc/ssh/sshd_configModifiez ces lignes :
PasswordAuthentication no
PermitRootLogin prohibit-password
PubkeyAuthentication yes
systemctl restart sshd
⚠️ Vérifiez que la connexion par clé fonctionne avant de fermer votre session SSH actuelle.
Changer le port SSH par défaut (optionnel, réduit le bruit dans les logs) :
# Dans /etc/ssh/sshd_config :
Port 2222 # N'importe quel port non standard
# Mettre à jour le pare-feu :
ufw allow 2222/tcp
ufw delete allow 22/tcp
systemctl restart sshdLe script d'installation configure UFW automatiquement. Vérifiez qu'il est correct :
ufw status verboseDoit afficher :
Status: active
To Action From
-- ------ ----
22/tcp (ou votre port SSH) ALLOW Anywhere
80/tcp ALLOW Anywhere
443/tcp ALLOW Anywhere
Bloquez tout le reste — aucun autre port ne doit être exposé publiquement.
Fail2ban bannit automatiquement les IP qui échouent répétitivement à la connexion SSH ou web. Le script d'installation l'installe et le configure.
Vérifier le statut :
fail2ban-client status
fail2ban-client status sshd
fail2ban-client status nginx-http-authDébannir une IP (si vous vous êtes bloqué vous-même) :
fail2ban-client set sshd unbanip YOUR-IPMises à jour automatiques pour l'OS :
apt install unattended-upgrades -y
dpkg-reconfigure unattended-upgrades # Sélectionnez ouiMises à jour automatiques pour Tesla Carview :
# Dans /opt/tesla-carview/backend/.env :
AUTO_UPDATE_ENABLED=trueLes mises à jour s'exécutent chaque nuit à 03h30 (Europe/Berlin) si activées.
Mises à jour des images Docker :
docker compose -f /opt/tesla-carview/docker-compose.prod.yml pull
docker compose -f /opt/tesla-carview/docker-compose.prod.yml up -dLes certificats Let's Encrypt expirent tous les 90 jours et se renouvellent automatiquement via une tâche cron (configurée par le script d'installation).
Vérifier le statut du certificat :
certbot certificatesTester le renouvellement (simulation, aucun changement) :
certbot renew --dry-runForcer le renouvellement si nécessaire :
certbot renew --force-renewal
systemctl restart nginxVotre fichier .env contient le Client ID Tesla, le Client Secret et le secret JWT. Il ne doit jamais être :
- Commité dans git (il est dans
.gitignore— ne le contournez pas) - Rendu accessible publiquement
- Partagé dans des captures d'écran ou des demandes de support
# Vérifiez les permissions — doit être 600 (lecture/écriture propriétaire uniquement) :
ls -la /opt/tesla-carview/backend/.env
# Corriger si incorrect :
chmod 600 /opt/tesla-carview/backend/.envTesla Carview enregistre toutes les actions sensibles :
- Tentatives de connexion (succès et échec)
- Verrouillages de compte
- Changements de mot de passe
- Exécutions de commandes véhicule
- Suppressions de données
- Actions admin
Consultez sur : Admin → Journal d'audit
Exportez pour analyse : Admin → Journal d'audit → Exporter CSV
La configuration nginx de Tesla Carview inclut des en-têtes de sécurité modernes :
-
Content-Security-Policy(CSP) — prévient les XSS -
Strict-Transport-Security(HSTS) — force HTTPS -
X-Frame-Options: DENY— prévient le clickjacking X-Content-Type-Options: nosniff-
Permissions-Policy— restreint les fonctionnalités du navigateur
Vérifiez vos en-têtes : securityheaders.com
Vous avez trouvé un problème de sécurité ? Signalez-le de manière responsable :
- N'ouvrez pas une issue publique sur GitHub
- E-mail : consultez le fichier SECURITY.md dans le dépôt
- Nous visons à répondre dans les 48 heures
- Authentification SSH par clé activée, authentification par mot de passe désactivée
- Pare-feu actif (UFW), seuls les ports 22/80/443 ouverts
- Fail2ban en cours d'exécution
- Mot de passe admin fort (16+ caractères ou phrase de passe)
- MFA activé pour le compte admin
- Permissions du fichier
.envdéfinies à 600 - Mises à jour automatiques activées (OS + Tesla Carview)
- Sauvegardes régulières configurées (voir Sauvegarde et restauration)
- Journal d'audit examiné périodiquement
🇬🇧 Home · Installation · Troubleshooting · License | 🇩🇪 Startseite · Installation · Fehlerbehebung | 🇫🇷 Accueil | 🇪🇸 Inicio | 🇹🇷 Ana Sayfa | 🇬🇷 Αρχική
GitHub Repository · Report an Issue
Tesla Carview — non-commercial, self-hosted Tesla data logger · © Sven Krische
🇬🇧 English
🚀 Getting Started
🌐 Network & Infrastructure
⚙️ Configuration
🔐 Security
📱 Reference
🇩🇪 Deutsch
🚀 Einstieg
🌐 Netzwerk & Infrastruktur
⚙️ Konfiguration
🔐 Sicherheit
📱 Referenz
🇫🇷 Français
🚀 Démarrage
🌐 Réseau & Infrastructure
⚙️ Configuration
🔐 Sécurité
📱 Référence
🇪🇸 Español
🚀 Primeros pasos
🌐 Red & Infraestructura
⚙️ Configuración
🔐 Seguridad
📱 Referencia
🇹🇷 Türkçe
🚀 Başlarken
🌐 Ağ & Altyapı
⚙️ Yapılandırma
🔐 Güvenlik
📱 Başvuru