Sign inSign up

eb33692e0225/ente-auth-cli

By eb33692e0225

Updated about 1 year ago

Image Docker Ente CLI + oathtool pour gérer vos exports 2FA Ente Auth et générer des codes TOTP.

Image
Developer tools
1

1.0K

eb33692e0225/ente-auth-cli repository overview

Ente Auth CLI Docker Image – Guide complet d’utilisation et de publication

Image Docker pour déchiffrer vos exports Ente Auth et générer des codes TOTP en toute sécurité, sans installation complexe. Fonctionne sur Windows, Mac et Linux.

📦 Récupérer l’image

docker pull eb33692e0225/ente-auth-cli:latest

📝 Présentation rapide

Cette image Docker embarque :

  • Ente CLI (compilé depuis les sources officielles)
  • oathtool (génération de codes TOTP)
  • jq (manipulation de JSON)

Elle permet de :

  • Déchiffrer un export Ente Auth (fichier .txt généré par l’application mobile)
  • Générer des codes TOTP pour l’authentification à deux facteurs
  • Travailler dans un environnement isolé, sans dépendances système

🚀 Utilisation rapide

  1. Préparez un dossier local (exemple : data/) et placez-y votre export Ente Auth (ente-auth-codes-YYYY-MM-DD.txt).
  2. Lancez le conteneur en montant ce dossier sur /cli-data :
docker run --rm -v "/chemin/vers/votre/data:/cli-data" -it eb33692e0225/ente-auth-cli --help

🔑 Déchiffrer un export Ente Auth

Dans le conteneur :

ente-cli auth decrypt /cli-data/ente-auth-codes-YYYY-MM-DD.txt /cli-data/secrets.txt
  • Entrez le mot de passe d’export si demandé.
  • Le fichier /cli-data/secrets.txt sera généré avec vos secrets TOTP.

🔐 Générer un code TOTP

Après déchiffrement, récupérez la clé secrète dans secrets.txt puis :

oathtool --totp -b "VOTRE_CLÉ_BASE32"

Remplacez "VOTRE_CLÉ_BASE32" par la valeur extraite.

🛠️ Ouvrir un shell interactif (avancé)

Pour accéder à un shell Bash ou sh dans le conteneur :

docker run --rm -v "/chemin/vers/votre/data:/cli-data" -it --entrypoint /bin/bash eb33692e0225/ente-auth-cli

ou

docker run --rm -v "/chemin/vers/votre/data:/cli-data" -it --entrypoint /bin/sh eb33692e0225/ente-auth-cli

⚠️ Sécurité & bonnes pratiques

  • Ne publiez jamais vos fichiers d’export ou secrets sur Docker Hub ou dans l’image Docker.
  • Montez toujours vos fichiers via un volume local avec l’option -v.
  • Supprimez le fichier secrets.txt après usage pour éviter toute fuite de secrets.

❗ FAQ & erreurs courantes

Erreur rencontréeSolution rapide
go: go.mod requires go >= 1.23Utiliser une image Go 1.23+ pour le build
oathtool (no such package) sur AlpineUtiliser une base Debian/Ubuntu
repository name must be lowercaseChemin volume mal formaté : utiliser un chemin absolu
Please mount a volume to /cli-data/Monter le volume sur /cli-data
Error: unknown command "bash" for "ente"Utiliser --entrypoint /bin/bash
mkdir: impossible de créer le répertoire "data": ...Dossier déjà existant, ignorer

🏗️ Construction de l’image (optionnel, pour contributeurs)

Si vous souhaitez construire l’image vous-même :

  1. Créez le fichier Dockerfile suivant dans votre dossier de projet :

    FROM golang:1.24-bookworm AS builder
    
    WORKDIR /app
    RUN apt-get update && apt-get install -y git
    RUN git clone https://github.com/ente-io/ente.git .
    WORKDIR /app/cli
    RUN go build -o ente-cli
    
    FROM debian:bookworm-slim
    WORKDIR /cli
    COPY --from=builder /app/cli/ente-cli /usr/local/bin/ente-cli
    RUN apt-get update && apt-get install -y oathtool jq && rm -rf /var/lib/apt/lists/*
    ENTRYPOINT ["/usr/local/bin/ente-cli"]
    
  2. Construisez l’image :

    docker build -t eb33692e0225/ente-auth-cli:latest .
    

🧪 Exemple d’utilisation automatisée

Déchiffrer un export et générer le premier code TOTP en une seule commande :

docker run --rm -v "/chemin/vers/votre/data:/cli-data" eb33692e0225/ente-auth-cli auth decrypt /cli-data/ente-auth-codes-YYYY-MM-DD.txt /cli-data/secrets.txt && \
docker run --rm -v "/chemin/vers/votre/data:/cli-data" eb33692e0225/ente-auth-cli oathtool --totp -b "$(grep -oP 'secret=\K[^&]+' /cli-data/secrets.txt | head -n1)"
Question :

Donc, les deux commandes, ou une seule réécrite, parmi les deux, donnent quoi si je veux filtrer 'GitHub' ?

Commande adaptée pour filtrer le service "GitHub"

Pour cibler le secret associé à GitHub dans son fichier secrets.txt, il suffit de modifier la commande d’extraction du secret. Voici comment adapter la séquence :

1. Déchiffrement (inchangé)
docker run --rm -v "/chemin/vers/votre/data:/cli-data" eb33692e0225/ente-auth-cli auth decrypt /cli-data/ente-auth-codes-YYYY-MM-DD.txt /cli-data/secrets.txt
2. Extraction et génération du TOTP pour "GitHub"
docker run --rm -v "/chemin/vers/votre/data:/cli-data" eb33692e0225/ente-auth-cli oathtool --totp -b "$(grep -i github /cli-data/secrets.txt | grep -oP 'secret=\K[^&]+')"
  • grep -i github /cli-data/secrets.txt : sélectionne uniquement la ou les lignes contenant "GitHub" (insensible à la casse).
  • grep -oP 'secret=\K[^&]+' : extrait la valeur du secret sur la ligne filtrée.
Exemple concret

Si les fichiers sont dans /home/user/ente-data :

docker run --rm -v "/home/user/ente-data:/cli-data" eb33692e0225/ente-auth-cli auth decrypt /cli-data/ente-auth-codes-2025-07-07.txt /cli-data/secrets.txt && \
docker run --rm -v "/home/user/ente-data:/cli-data" eb33692e0225/ente-auth-cli oathtool --totp -b "$(grep -i github /cli-data/secrets.txt | grep -oP 'secret=\K[^&]+')"
Points importants
  • On peut utiliser cette adaptation uniquement sur la deuxième commande : la première reste identique, car elle ne fait que déchiffrer.

  • Si plusieurs comptes GitHub sont présents, la commande retournera tous les secrets correspondants ; on peut ajouter head -n1 à la fin pour ne prendre que le premier :

    "$(grep -i github /cli-data/secrets.txt | grep -oP 'secret=\K[^&]+' | head -n1)"
    
  • Cette méthode fonctionne pour n’importe quel service : il suffit de remplacer github par le nom du service voulu.

Résumé :
Il suffit d’ajouter un filtrage par nom de service dans la commande d’extraction du secret pour cibler celui de GitHub, sans toucher à la première commande de déchiffrement.

📚 Liens utiles

Cette image Docker vous permet de gérer vos exports 2FA Ente Auth et de générer des codes TOTP de façon sécurisée, portable et reproductible, sans dépendances systémiques sur votre machine hôte.

Tag summary

Content type

Image

Digest

sha256:f9fa8ad18

Size

36.3 MB

Last updated

about 1 year ago

docker pull eb33692e0225/ente-auth-cli