Vous devez utiliser des clés SSH pour vous authentifier plutôt que de mettre votre mot de passe sur la ligne de commande car il est extrêmement peu sûr.
La façon dont cela fonctionne est une fois que vous avez configuré vos clés SSH, tout ce que vous avez à faire est d'émettre la commande:
ssh user@host
et sans taper autre chose, vous serez automatiquement connecté.
Copier la clé publique SSH sur Mac / FreeBSD / Linux à partir de macOS
Cela suppose que vous avez accès au serveur distant via une authentification par mot de passe (en tapant un mot de passe) et que vous avez déjà généré votre paire de clés privée / publique (sinon, voir ci-dessous). Dans l'exemple suivant, nous utilisons RSA. Pour commencer, copions la clé (sachez que le répertoire "home" diffère entre macOS, Linux, BSD, etc.):
Utilisation de SCP:
scp ~/.ssh/id_rsa.pub username@hostname:/Users/username/.ssh/
Ou simplement attraper le fichier authorized_keys
(je préfère cette méthode):
cat id_rsa.pub | ssh username@hostname ' cat >>.ssh/authorized_keys'
(Votre nom de clé peut différer) Si le répertoire .ssh n'existe pas sur le serveur distant, vous devrez vous connecter et le créer.
Maintenant, la clé a été copiée du mac vers le serveur distant . Définissez les autorisations correctes pour la clé publique SSH sur le serveur distant:
chmod 600 ~/.ssh/id_rsa.pub
Ajoutez ensuite la clé au fichier SSH authorized_keys, si le fichier n'existe pas, créez-le.
Si le fichier authorized_keys
existe déjà dans ~/.ssh
la, utilisez la commande suivante:
cat id_rsa.pub >> authorized_keys
Si le fichier n'existe pas, entrez les commandes suivantes:
cat id_rsa.pub > authorized_keys
chmod 600 authorized_keys
chown user:group authorized_keys
Générer une clé publique / privée SSH sur macOS
Ouvrez le terminal en allant dans Applications -> Utilitaires -> Terminal
Dans le terminal, utilisez la commande suivante pour démarrer la génération de clés
ssh-keygen -t rsa
Ensuite, vous serez invité à fournir l'emplacement où vous souhaitez créer le fichier de clé privée:
Entrez le fichier dans lequel enregistrer la clé ( /Users/username/.ssh/id_rsa
):
Laissez ce champ vide pour créer la clé à l'emplacement par défaut, qui est /Users/username/.ssh/id_rsa
. Le fichier de clé publique sera créé au même emplacement et avec le même nom, mais avec l'extension .PUB.
Après, vous serez invité à choisir une phrase secrète. Il s'agit du mot de passe facultatif pour utiliser la clé privée.
Enter passphrase (empty for no passphrase):
Votre clé SSH est générée.
Maintenant, gardez à l'esprit que si vous entrez une phrase secrète, vous devrez la saisir à chaque connexion. L'utilitaire ssh-agent
gardera la phrase secrète en mémoire, ce qui vous évitera de la saisir manuellement à chaque fois que vous vous connectez pendant que vous êtes dans la même session. Pour plus de détails, voirman ssh-agent