PuTTY est un excellent frontal Windows, sans parler de la nécessité d'un client SSH en premier lieu. Sous Linux, OS X et la plupart des autres environnements basés sur UNIX, SSH est généralement purement en ligne de commande, mais reste incroyablement puissant.
Le client SSH vous permet de stocker une quantité incroyable de propriétés basées sur un nom d'hôte donné, même les valeurs par défaut globales, dans le fichier client "ssh_config". Ce fichier n'existe pas par défaut (selon les commentaires de la question), mais devrait être écrit à l'adresse suivante ~/.ssh/config
.
Ce chemin équivaut à :
~
votre répertoire personnel, il se développe sur mon système en /Users/jason
.
.ssh
le point de tête le rend invisible. Si vous êtes dans Terminal et dans votre répertoire personnel, vous pouvez simplement exécuter cd .ssh
et le saisir.
config
est le nom du fichier, il s'agit d'un fichier texte brut contenant des paramètres de configuration.
J'utilise ce fichier pour contrôler les tunnels que j'utilise toujours, la clé privée nécessaire à la connexion, le nom d'utilisateur (s'il diffère de mon nom d'utilisateur local), etc.
Voir la page de manuel, soit via man ssh_config
sur votre propre machine qui contiendra la version la plus appropriée, ou vous pouvez le consulter en ligne à partir de Site d'OpenBSD .
Voici quelques exemples de contenu de mon fichier de configuration ssh :
ControlMaster auto
ControlPath ~/.ssh/sockets/master-%r-%h-%p
VisualHostKey yes
Host serve
Hostname 8.8.8.8
User jason
IdentityFile ~/.ssh/id_rsa
LocalForward 5901 localhost:5901
L'espace blanc est une préférence purement personnelle, il n'est pas nécessaire, sauf pour séparer les clés des valeurs.
Les trois premières lignes sont des propriétés globales, elles affectent chaque connexion SSH. La deuxième section est une configuration spécifique à l'hôte.
El Host
spécifie la balise de l'hôte que vous utiliserez lorsque vous invoquerez ssh
. Ex. ssh serve
. Lorsque vous exécutez cette commande, toutes les propriétés répertoriées sont chargées jusqu'à la prochaine étape. Host
ligne.
Depuis serve
n'est pas nécessairement un nom DNS, je spécifie le nom de l'utilisateur. Hostname
auquel il devrait se connecter (non, pas le mien). User
s'explique d'elle-même et n'est là que pour être explicite, et les IdentityFile
est le chemin d'accès au fichier de la clé privée qu'il utilise pour se connecter.
Enfin, LocalForward
met en place une règle de transfert de port que j'envoie à travers le tunnel SSH.
Les différentes syntaxes sont toutes documentées sur la page de manuel.
Il n'existe pas de mécanisme permettant de définir un mot de passe en texte clair. La saisie du mot de passe est TOUJOURS interactive lors de la configuration de la connexion SSH. Si vous souhaitez vous connecter automatiquement, configurez la fonction Authentification par clé privée . Stocker des mots de passe en texte brut est stupide, toujours.
Je l'utilise à bon escient. Et la meilleure partie ? Toutes vos configurations SSH sont incroyablement portables, c'est juste un fichier que vous devez sauvegarder/tenir, et déplacer d'un système à l'autre ! Ce n'est pas aussi portable pour Windows, mais qui aime vraiment s'occuper de la base de registre de toute façon ?
5 votes
Techniquement, SSH fait tout cela au moyen de
ssh_config
(~/.ssh/config
), mais je vais garder ma barbe à distance et comprendre que l'édition d'un fichier texte brut avec un format défini n'est pas pour tout le monde. Je donne beaucoup de crédit à PuTTY pour son installation (et beaucoup de peine aussi, il est vrai).0 votes
Je ne parviens pas à localiser ce fichier. Pourriez-vous développer cette réponse ? Cela pourrait être une solution viable.
0 votes
Il n'est pas gratuit, mais beaucoup de mes anciens collègues ne juraient que par lui. JellyFiSSH pour gérer les informations de connexion. Il est actuellement de 4 $ dans le Mac App Store .