Password ManagerOutils de DéveloppementSSH

Agent SSH

L'application de bureau Bitwarden Password Manager peut agir en tant qu'agent SSH pour crypter et stocker en toute sécurité vos clés SSH (Secure Shell) à utiliser avec :

  • Authentification auprès des serveurs

  • Signer les commits Git

  • Interagir avec les services basés sur SSH

L'agent SSH Bitwarden organise et protège vos clés dans un emplacement sécurisé. Les clés SSH sont accessibles via l'application de bureau, l'application web, l'extension de navigateur et l'application mobile. Les clés SSH peuvent être générées à l'aide de l'application de bureau, de l'application web et de l'extension de navigateur.

note

The SSH Agent requires release version 2025.1.2 or newer.

Stocker une clé SSH

De nouvelles clés SSH peuvent être créées et sauvegardées dans l'application de bureau Bitwarden. Les clés SSH Bitwarden seront stockées :

Les clés SSH stockées dans le gestionnaire de mots de passe Bitwarden auront accès aux fonctionnalités de Bitwarden telles que les dossiers, les favoris, le rappel du mot de passe principal, les notes, le clonage d'éléments, les pièces jointes et les champs personnalisés.

Créer une nouvelle clé SSH

Créez une nouvelle clé SSH à l'aide de l'application de bureau Bitwarden, de l'application web ou de l'extension de navigateur. Une fois créées, les clés SSH stockées dans Bitwarden sont accessibles depuis l'application de bureau, l'application web, l'extension de navigateur et les applications mobiles.

  1. Sélectionnez le bouton Nouveau et choisissez Clé SSH comme type d'élément :

    Créer une nouvelle clé SSH sur le bureau
    note

    At this time, Bitwarden can only generate ED25519 type SSH keys.

  2. Remplissez les détails restants tels que le nom et sélectionnez l'icône Enregistrer une fois que vous avez terminé.

Clés SSH d'organisation

Les clés SSH peuvent être créées et stockées dans une collection d'organisation. Les membres de l'organisation disposant des autorisations appropriées peuvent créer, gérer et accéder aux clés SSH appartenant à l'organisation. Pour en savoir plus sur les autorisations de collection, cliquez ici.

Pour ajouter une nouvelle clé SSH partagée au coffre-fort de l'organisation :

  1. Dans la vue Coffre-fort du bureau ou de l'application Web, cliquez sur le bouton Nouveau et sélectionnez Clé SSH.

    tip

    Les propriétaires d’organisation, les administrateurs et certains utilisateurs personnalisés peuvent également effectuer cette étape directement depuis la console d’administration pour ignorer certaines étapes de ce processus.

  2. Dans le menu déroulant Propriétaire, choisissez l'organisation à laquelle cet élément doit appartenir.

  3. Dans la liste déroulante Collections, choisissez la ou les collections avec lesquelles vous souhaitez partager cet élément.

    Partager une clé SSH

note

In general, resources that use SSH keys can support per-user keys. We recommend reviewing SSH key best practices before sharing SSH keys to an organization.

Modifier les clés existantes

Une fois qu'une clé SSH a été enregistrée dans votre coffre-fort Bitwarden, vous pouvez modifier certains champs de la clé tels que le nom, le propriétaire, le dossier et les champs personnalisés :

Pour éditer les clés SSH sur l'application de bureau Bitwarden :

  1. Ouvrez l'application de bureau Bitwarden et naviguez vers les clés SSH.

  2. Localisez la clé SSH que vous souhaitez modifier et sélectionnez Modifier.

  3. Une fois que vous avez effectué les modifications souhaitées, sélectionnez Enregistrer.

Importer une clé dans Bitwarden

La fonction d'importation des clés SSH est disponible dans l'application de bureau Bitwarden. En utilisant l'application de bureau Bitwarden :

  1. Sélectionnez le bouton Nouveau et choisissez Clé SSH comme type d'élément.

  2. Copiez la clé SSH existante que vous souhaitez importer dans Bitwarden.

  3. Utilisez l'icône Importer une clé depuis le presse-papiers. Cela collera automatiquement la clé SSH dans Bitwarden.

    • Pour l'instant, les clés importées doivent être au format OpenSSH ou PKCS#8.

      Importer une clé SSH

note

At this time, imported SSH keys from Putty are not compatible.

Configurer l'agent SSH Bitwarden

Afin d'utiliser Bitwarden comme agent SSH principal, vous devrez configurer votre client SSH pour qu'il communique avec Bitwarden pour l'authentification.

To enable the Bitwarden SSH Agent on Windows, you must disable the OpenSSH service on your Windows machine. To disable OpenSSH:

  1. On your Windows machine, navigate to Services → OpenSSH Authentication Agent. Services can be located with the Windows search bar.

    Windows Services panel
  2. Once you have opened the OpenSSH Authentication Agent Properties window, set the Startup type setting to Disabled.

    Disable OpenSSH Windows
  3. Once the settings have been adjusted, select Apply and then OK.

Activer l'agent SSH

Pour activer l'agent SSH sur votre application de bureau Bitwarden, naviguez vers Paramètres et Activer l'agent SSH.

Enable SSH storage on desktop client

Après avoir activé l'agent SSH, vous pouvez également ajuster le paramètre Demander une autorisation lors de l'utilisation de l'agent SSH. Ce paramètre déterminera quand Bitwarden vous demandera d'autoriser l'accès à une clé SSH :

Authorize SSH key usage
  • Toujours

  • Jamais

  • Se souvenir jusqu'à ce que le coffre-fort soit verrouillé

Toujours sera sélectionné par défaut.

Test des clés SSH

Une fois que l'agent SSH a été configuré pour Bitwarden, nous pouvons tester la configuration en demandant une liste SSH :

Plain Text
ssh-add -L

Cela renverra une liste des clés SSH enregistrées dans votre client de bureau Bitwarden.

note

When accessing an SSH key, the behavior of Bitwarden will differ depending on the locked or unlocked status of the client.

  • Locked vault: If your Bitwarden vault is locked, Bitwarden will automatically prompt you to unlock your vault in order to gain access to the SSH key.

  • Unlocked vault: If the desktop vault is unlocked, you will be prompted to confirm the SSH key usage.

Utiliser une clé SSH pour s'authentifier avec Git

SSH peut être utilisé pour s'authentifier avec Git. L'agent SSH Bitwarden peut ajouter de la sécurité et de la facilité d'utilisation à vos flux de travail Git. Dans cet exemple, l'agent SSH Bitwarden s'authentifiera auprès de GitHub.

  1. Sur votre compte GitHub, configurez une clé SSH en naviguant vers Paramètres, Clés SSH et GPG, puis sélectionnez Nouvelle clé SSH.

  2. Sur l'écran d'ajout d'une nouvelle clé SSH, ajoutez un nom et sélectionnez un type de clé. Choisissez Authentication Key (Clé d'authentification). Copiez et collez la clé publique de votre coffre-fort Bitwarden dans le champ Clé sur GitHub.

    Create new GitHub key
  3. Une fois que vous avez rempli tous les champs, sélectionnez Ajouter une clé SSH pour enregistrer la clé. GitHub vous demandera de vérifier votre compte GitHub avant d'enregistrer la clé.

  4. Testez la clé SSH de GitHub dans votre terminal, par exemple si vous utilisez macOS :

    Plain Text
    ssh -T git@github.com
  5. En cas de succès, Bitwarden vous demandera de vérifier la demande d'accès. Sélectionnez Autoriser pour confirmer. En cas de succès, vous recevrez un message confirmant la tentative d'authentification :

    Plain Text
    Hi <USER>! You've successfully authenticated, but GitHub does not provide shell access.

S'authentifier avec les dépôts git

Utilisez l'agent SSH Bitwarden pour signer les commits SSH Git. Avant d'utiliser l'agent SSH Bitwarden pour signer des commits Git, votre système doit être configuré de la manière suivante :

  • Git version 2.34 ou plus récente. Vérifiez votre version de Git avec :

    Plain Text
    git --version
  • OpenSSH version 8.8 ou plus récente. Vérifier la version avec :

    Plain Text
    ssh -V
  • Client de bureau Bitwarden avec l'agent SSH activé.

Configurer Git pour la signature SSH

Configurez votre environnement Git pour qu'il pointe vers votre clé SSH pour la signature. Pour ce faire, vous pouvez définir des variables globales ou établir les instructions dans votre fichier .gitconfig.

Définir des variables globales

Pour configurer les paramètres de Git à l'aide de variables --globales :

  1. Configurer Git pour qu'il utilise SSH pour la signature :

    Plain Text
    git config --global gpg.format ssh
  2. Indiquez la clé SSH à utiliser comme clé de signature. Pour utiliser l'agent SSH Bitwarden, remplacez <Votre_clé_publique> par la clé publique copiée à partir de la clé SSH enregistrée dans votre coffre-fort Bitwarden.

    Plain Text
    git config --global user.signingkey "<YOUR_PUBLIC_KEY>"
  3. Activer la signature automatique des livraisons.

    Plain Text
    git config --global commit.gpgsign true

Définir le fichier .gitconfig

Pour configurer Git à l'aide d'un fichier .gitconfig :

  1. Accédez à .gitconfig avec votre éditeur de texte préféré :

    Plain Text
    nano ~/.gitconfig
  2. Ajoutez les configurations suivantes :

    Bash
    [gpg] format = ssh [user] signingkey = "<YOUR_PUBLIC_KEY>" name = <USER_NAME> email = <USER_EMAIL> [commit] gpgsign = true
note

For Windows users:

  1. Add the core.sshCommand variable to your Git config to use Microsoft OpenSSH:

    Plain Text
    git config --global core.sshCommand "C:/Windows/System32/OpenSSH/ssh.exe"

    Alternatively, set variable in your .gitconfig file:

    Plain Text
    [core] sshCommand = C:/Windows/System32/OpenSSH/ssh.exe
  2. Next, you may be required to set the gpg.ssh.program parameter:

    Plain Text
    git config --global gpg.ssh.program "C:/Windows/System32/OpenSSH/ssh-keygen.exe"



Signer des commits Git

L'utilisation de SSH pour s'authentifier avec Git peut ajouter de la sécurité et de la facilité d'utilisation à votre flux de travail. De même, les clés SSH stockées dans Bitwarden peuvent être utilisées pour signer et vérifier les commits Git à l'aide du protocole SSH. Dans cet exemple, l'agent SSH Bitwarden sera utilisé pour signer les commits Git sur GitHub.

  1. Sur votre compte GitHub, configurez une clé de signature SSH en naviguant vers Paramètres, Clés SSH et GPG, puis sélectionnez Nouvelle clé SSH.

  2. Sur l'écran d'ajout d'une nouvelle clé SSH, ajoutez un nom et sélectionnez un type de clé, choisissez Signing Key (Clé de signature). Copiez et collez la clé publique de votre coffre-fort Bitwarden dans le champ Clé sur GitHub.

  3. Configurez git pour utiliser le fichier allowedSignersFile avec la commande suivante :

    Plain Text
    git config --global gpg.ssh.allowedSignersFile "$HOME/.ssh/allowed_signers"
  4. Ajoutez votre clé publique au fichier allowedSignersFile :

    Bash
    # Create allowed_signers file touch ~/.ssh/allowed_signers # Edit the allowed_signers file and add a line for your public key pair you wish to trust, for example: User1@Bitwarden.com ssh-ed25519 <Your_Public_Key>

  5. Utilisez la clé SSH pour cloner votre dépôt avec la méthode SSH :

    SSH clone
    Plain Text
    git clone git@github.com:<USER>/<repository>.git
  6. Créez le commit Git à l'aide du terminal ou de votre éditeur de texte préféré :

    Plain Text
    git commit -m "This commit is signed using SSH"
  7. Bitwarden vous demandera d'autoriser l'utilisation de la clé :


  8. Une fois l'autorisation obtenue, la clé SSH sera initiée pour approuver le commit. Vous pouvez maintenant pousser le commit :

    Plain Text
    git push
  9. Vous pouvez vérifier votre livraison sur Github en naviguant vers GitHub commits :

    Verify your commit in GitHub

SSH Agent forwarding

SSH agent forwarding permet à un serveur distant auquel vous accédez de s'authentifier auprès d'autres serveurs à l'aide de vos clés, sans exposer vos clés privées en dehors de votre coffre-fort. Le serveur auquel vous êtes connecté peut demander à votre instance Bitwarden locale de s'authentifier auprès du serveur distant. Dans cet exemple, nous allons démontrer le transfert de fichiers entre serveurs :

  1. Pour commencer, assurez-vous que l'agent SSH a été activé sur votre application de bureau Bitwarden en naviguant vers Paramètres et Activer l'agent SSH :

    Enable SSH storage on desktop client
  2. Créez une nouvelle clé SSH ou importez une clé SSH existante dans votre application de bureau Bitwarden.

  3. Activez la redirection de l'agent en ouvrant une connexion avec le serveur vers lequel vous souhaitez envoyer des fichiers :

    Plain Text
    ssh -A <HostnameA>
  4. Envoyez un fichier au serveur :

    Plain Text
    rsync -avzP ./TEST.txt <USER>@<HostnameB>:/home/<USER>/test.txt
  5. Bitwarden vous demandera d'approuver l'accès à la clé SSH. Cela montrera que la clé SSH a été demandée et utilisée pour terminer le transfert de fichiers.

    Confirm SSH Agent Forwarding