ssh config: paramètres globaux vs `Host *`

Aug 28 2020

Quelle est la différence entre les paramètres du fichier de configuration ssh:

  • Au plus haut niveau (mondial)
  • Dans un Host *champ?

En supposant qu'il y ait une différence, dans quels cas chacun serait-il préféré?

Réponses

7 StephenKitt Aug 28 2020 at 21:46

La documentation de configuration SSH aborde indirectement ceci:

Pour chaque paramètre, la première valeur obtenue sera utilisée. Les fichiers de configuration contiennent des sections séparées par des spécifications d' hôte , et cette section n'est appliquée qu'aux hôtes qui correspondent à l'un des modèles donnés dans la spécification.

Puisque la première valeur obtenue pour chaque paramètre est utilisée, des déclarations plus spécifiques à l'hôte doivent être données vers le début du fichier et les valeurs par défaut générales à la fin.

Ainsi, les paramètres du niveau «supérieur» ne peuvent pas être remplacés, tandis que les paramètres de Host *seront remplacés par tout paramètre défini avant cette section (au niveau «supérieur» ou dans une section correspondant à l'hôte cible).

Cela répond «dans quels cas chacun serait préféré»: le niveau «supérieur» devrait être utilisé pour les paramètres qui ne devraient pas être remplacés, et la Host *section, qui devrait venir en dernier, devrait être utilisée pour les paramètres par défaut.