# Utilisation des tags dans la configuration du client SSH

**URL:** <https://www.debian-fr.org/t/utilisation-des-tags-dans-la-configuration-du-client-ssh/91105>\
**Category:** Support Debian\
**Tags:** ssh\
**Created:** [Avril 11, 2025, 12:02 UTC](https://www.debian-fr.org/t/utilisation-des-tags-dans-la-configuration-du-client-ssh/91105 "2025-04-11T00:02:39Z")\
**Posts on this page:** 2\
**Page:** 1

<div class="post-metadata">

**Author:** ![CDuv](https://www.debian-fr.org/user_avatar/www.debian-fr.org/cduv/32/14509_2.png) [@CDuv](https://www.debian-fr.org/u/CDuv)\
**Post date:** [Avril 11, 2025, 12:02 UTC](https://www.debian-fr.org/t/utilisation-des-tags-dans-la-configuration-du-client-ssh/91105/1 "2025-04-11T00:02:39Z")

</div>

Bonjour,

J’ai récemment [découvert](https://mrod.space/2023/09/04/using-tags-in-ssh-config) qu’on pouvait déclarer des blocs ré-utilisables de directives de configuration du client SSH : via des tags.

J’essaie de m’en servir mais ils semblent totalement ignorés :

Voici un exemple avec le contenu de mon fichier `~/.ssh/config` :

```auto
# Les forges git utilisent généralement l'utilisateur SSH `git`
Match tagged git-forge
    User git
    PreferredAuthentications publickey
    IdentitiesOnly yes

# Pour GitLab.com, utiliser tel hôte et telle clé
Match tagged git-forge-gitlab_com
    Hostname gitlab.com
    IdentityFile ~/.ssh/cduv-gitlab

# Hôte SSH nommé pour GitLab.com
Host gitlab_com
    Tag git-forge
    Tag git-forge-gitlab_com

# Hôte SSH nommé pour GitHub (exemple)
Host git-hub
    Tag git-forge
    Tag git-forge-github

```

La commande `ssh -vv gitlab_com` échoue et retourne des messages indiquant qu’aucun tag ne correspond 🤨 :

```auto
OpenSSH_9.6p1 Ubuntu-3ubuntu13.9, OpenSSL 3.0.13 30 Jan 2024
debug1: Reading configuration data /home/cduv/.ssh/config
debug2: checking match for 'tagged git-forge' host gitlab_com originally gitlab_com
debug2: match not found
debug2: checking match for 'tagged git-forge-gitlab_com' host gitlab_com originally gitlab_com
debug2: match not found
debug1: /home/cduv/.ssh/config line 14: Applying options for gitlab_com
debug1: Reading configuration data /etc/ssh/ssh_config
debug1: /etc/ssh/ssh_config line 19: include /etc/ssh/ssh_config.d/*.conf matched no files
debug1: /etc/ssh/ssh_config line 21: Applying options for *
debug2: resolving "gitlab_com" port 22

```

Pour comparaison, la version sans tags fonctionne bien:

```auto
Host gitlab_com-notag
    User git
    PreferredAuthentications publickey
    IdentitiesOnly yes
    Hostname gitlab.com
    IdentityFile ~/.ssh/cduv-gitlab

```

Un `ssh gitlab_com-notag` en arrive au point de me demander ma _passphrase_ de clé SSH:

```auto
Enter passphrase for key '/home/cduv/.ssh/cduv-gitlab':

```

Qu’ais-je mal compris dans les tags de [`ssh_config`](https://man7.org/linux/man-pages/man5/ssh_config.5.html) ?

Ma version de openssh-client est la v9.6p1-3ubuntu13.9

---

<div class="post-metadata">

**Author:** ![Clochette](https://www.debian-fr.org/user_avatar/www.debian-fr.org/clochette/32/8757_2.png) [@Clochette](https://www.debian-fr.org/u/Clochette)\
**Post date:** [Avril 11, 2025, 7:53 UTC](https://www.debian-fr.org/t/utilisation-des-tags-dans-la-configuration-du-client-ssh/91105/2 "2025-04-11T07:53:16Z")

</div>

Essai pour voir en sortant le hostname de ta conf initiale et en l’ajoutant avant ton tag 😉 comme ça :

```auto
# Pour GitLab.com, utiliser tel hôte et telle clé
Match tagged git-forge-gitlab_com
    IdentityFile ~/.ssh/cduv-gitlab

```

```auto
# Hôte SSH nommé pour GitLab.com
Host gitlab_com
    Hostname gitlab.com
    Tag git-forge
    Tag git-forge-gitlab_com

```

Normalement dans le match tagged on ne mets que des directives et je suis pas sûr que le hostname soit correctement pris en charge.
