Créer un script de connexion SSH sur macOS
Introduction
Sur macOS, il est possible de créer un fichier .command qui s'exécute directement en double-cliquant dessus.
Ce type de fichier ouvre automatiquement Terminal et lance les commandes qu'il contient.
C'est une solution idéale pour se connecter rapidement à un serveur distant via SSH sans avoir à taper manuellement la commande à chaque fois.
Script basique
Voici un script minimaliste pour établir une connexion SSH :
#!/bin/zsh
# Configuration - modifier selon vos besoins
USER="votre_utilisateur"
HOST="adresse_du_serveur"
PORT="22"
# Connexion SSH
ssh -p "$PORT" "$USER@$HOST"
(Remplacez les valeurs USER, HOST et PORT par vos propres informations)
Script avancé avec keepalive et clé SSH
Cette version plus complète inclut la gestion d'une clé SSH et des options de keepalive pour maintenir la connexion active :
#!/bin/zsh
# Configuration
USER="votre_utilisateur"
HOST="192.168.1.100"
PORT="22"
KEY="$HOME/.ssh/id_ed25519"
# Options SSH (tableau)
SSH_OPTS=(-o ServerAliveInterval=60 -o ServerAliveCountMax=3)
# Connexion
if [[ -f "$KEY" ]]; then
ssh "${SSH_OPTS[@]}" -p "$PORT" -i "$KEY" "$USER@$HOST"
else
ssh "${SSH_OPTS[@]}" -p "$PORT" "$USER@$HOST"
fi
Les options utilisées ont les effets suivants :
- ServerAliveInterval=60 : Envoie un paquet keepalive toutes les 60 secondes pour maintenir la connexion active.
- ServerAliveCountMax=3 : Autorise 3 échecs consécutifs de keepalive avant de fermer la connexion.
- -i "$KEY" : Spécifie le chemin vers la clé privée à utiliser pour l'authentification.
(Note : Les options SSH sont stockées dans un tableau zsh pour éviter les problèmes d'interprétation des arguments)
Installation du script
Étape 1 : Créer le fichier
Créez un fichier nommé nom-du-serveur.command sur votre Bureau et collez-y le contenu du script choisi.
Étape 2 : Rendre le script exécutable
Ouvrez Terminal et exécutez la commande suivante :
chmod +x ~/Desktop/nom-du-serveur.command
Étape 3 : Utilisation
Double-cliquez simplement sur le fichier .command pour ouvrir Terminal et lancer automatiquement la connexion SSH.
↑ Haut de page