Il est difficile d’ouvrir un terminal à chaque fois et d’écrire une commande SSH complète. Comment créer une connexion SSH Raccourci terminal sous Mac OS X 10.6.8 (Snow Leopard)?
J'ai aussi un port personnalisé pour me connecter.
La réponse la plus * NIX-y consiste à utiliser les fonctionnalités de SSH à votre avantage.
Créez un fichier nommé config
dans ~/.ssh/
(un dossier nommé .ssh
dans votre dossier personnel). Ajoutez une entrée pour chaque ordinateur auquel vous souhaitez vous connecter, comme ceci:
Host compy
HostName 98.256.211.12
Port 90
User sidney
IdentityFile ~/.ssh/my_rsa_key
HostName
peut être une adresse IP ou un nom d'hôte réel.Port
n'est pas obligatoire si vous utilisez le port SSH par défautIdentityFile
n'est pas obligatoire si vous n'utilisez pas de clé.ssh compy
Si vous utilisez l'authentification par clé et que vous stockez le mot de passe de votre clé dans le trousseau, vous n'aurez même pas besoin de saisir de mot de passe.
En outre, vous pouvez créer un fichier .command (un fichier de texte en clair portant l’extension .command) contenant la ligne de commande à utiliser pour se connecter au serveur (ssh compy
ou ssh -i ~/.ssh/my_rsa_key -p 90 [email protected]
). Il s'ouvrira dans Terminal et exécutera cette commande.
Vous pouvez également utiliser l'élément de menu New Remote Connection…
dans Terminal pour vous connecter. Ajoutez simplement votre hôte sous SSH en cliquant sur le bouton + bouton dans la colonne de droite.
En savoir plus HERE
Vous avez plusieurs options auxquelles je peux penser:
Dans votre éditeur de texte favori, créez un fichier texte brut avec votre commande ssh, par exemple.
ssh -p 23 [email protected]
Nommez le fichier WHATEVERYOUWANT.command
. Vous devez ensuite définir le fichier .command
avec les privilèges d'exécution (chmod 755 /PATH/TO/WHATEVERYOUWANT.command
), mais vous disposez maintenant d'un fichier qui, lorsque vous double-cliquez dessus, ouvrira Terminal et exécutera cette commande.
En supposant que vous utilisiez bash (le shell par défaut sous Mac OS X), vous pouvez ajouter des alias à votre .bashrc
dans votre dossier personnel.
par exemple. alias sshserver='ssh -p 23 [email protected]'
Vous pouvez trouver plus d'informations sur les alias sur [Wikipedia] ( http://en.wikipedia.org/wiki/Alias_ (commande) ou en lisant la documentation. .
Il y a plusieurs façons de le faire. Voici ce que je fais:
Ouvrir les préférences du terminal
Dupliquez votre profil sur l'onglet Paramètres avec l'icône représentant une roue dentée. Cela modifie votre fichier de paramètres par défaut. Vous devez donc rétablir votre ancien paramètre par défaut tel qu’il était avant la duplication.
Dans vos nouveaux paramètres personnalisés, cliquez sur Type de shell dans votre commande ssh dans la section Exécuter la commande au démarrage.
Renommez votre nouveau paramètre de Personnalisé à votre choix.
Vous pouvez maintenant démarrer votre session à partir des éléments de menu Nouvelle fenêtre ou Nouvel onglet. Un raccourci clavier peut bien sûr être attribué dans Clavier et souris dans les Préférences Système.
Pour ceux qui utilisent une clé privée avec leur ssh et souhaitent utiliser la méthode ~/.ssh/config, vous pouvez ajouter un attribut 'IdentityFile' à votre hôte suivi du chemin d'accès à la clé. C'est à dire:
Host SomeServer
User ubuntu
HostName someserver.com
IdentityFile ~/.ssh/private.key
J'aurais ajouté ce passage comme commentaire à l'une des réponses, mais ma réputation est toujours basse et je ne suis pas autorisé à le faire.
Pour ouvrir rapidement une connexion ssh de presque n'importe où sur votre Mac, procédez comme suit:
ssh://[email protected]
*.inetloc
.~/connections
qui contient tous mes fichiers *.inetloc
. Vous pouvez renommer ce fichier comme bon vous semble, et même changer son icône.*.inetloc
dans le Dock, la barre latérale ou la barre d'outils du Finder, ou ailleurs. (Il peut même être sélectionné avec Spotlight)Vous pouvez créer un AppleScript qui exécutera une commande pour vous:
tell application "Terminal"
do script "ssh server.example.com"
end tell
Si vous voulez un fichier que vous pouvez ouvrir pour lancer une session, vous pouvez facilement créer un fichier .inetloc. Dans TextEdit, tapez une URL SSH vers votre hôte, par exemple:
ssh://username@hostname/path
TextEdit le reconnaîtra comme une URL. Faites glisser l'URL sur votre bureau pour créer un fichier .inetloc comme suit:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.Apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>URL</key>
<string>ssh://username@hostname/path</string>
</dict>
</plist>
Vous pouvez ensuite placer ce fichier n’importe où, comme dans votre Dock, ou l’ouvrir avec un lanceur tel que Quicksilver.
J'aurais recommandé le plug-in SSH pour Quicksilver, mais la version la plus récente que je trouve, v.84, provoque le blocage de QS plus récent que celui de β54 (3815).
Si vous utilisez Quicksilver, il existe un excellent complément appelé RemoteHosts qui analysera automatiquement un fichier ~/.hosts ou même votre fichier ~/.ssh/known_hosts pour le remplir automatiquement.
La connexion à un nouvel hôte est aussi rapide que d’ouvrir Quicksilver (CMD-Space), puis de saisir suffisamment de caractères de l’hôte pour qu’il soit unique, puis d’appuyer sur Entrée.
Vous pouvez créer un fichier dans votre répertoire bin local
/usr/local/bin/dev
Avec le contenu suivant:
#!/bin/bash
ssh -p 12345 [email protected]
Le rendre exécutable
chmod a+x /usr/local/bin/dev
Ce qui vous permet d’appeler depuis le terminal en utilisant
dev
Et vous créez ensuite une tâche automate pour l'ouvrir
tell application "Finder" to set theSel to selection
tell application "Terminal"
set theFol to POSIX path of ((item 1 of theSel) as text)
if (count of windows) is not 0 then
do script "/usr/local/bin/dev2" in window 1
else
do script "/usr/local/bin/dev2"
end if
activate
end tell
Vous pouvez également créer un raccourci à partir du lanceur ou des raccourcis clavier
Lanceur: faites glisser l'icône de la sauvegarde de l'automate dans la barre des tâches
Raccourci clavier:
create as service in automator
open system services -> keyboard -> shortcuts -> app shortcuts -> enter title of automator and key shortcut
Si la partie qui craint pour vous est de taper une commande ssh longue et complexe, mais que cela ne vous gêne pas d'ouvrir Terminal et que, pour une raison quelconque, vous ne souhaitez pas utiliser les approches des réponses précédentes, vous pouvez également utiliser alias ou fonctions. Ajoutez quelque chose comme ceci dans le fichier de données Shell (.profile ou .bash_profile ou .bashrc ou .cshrc ou .zshrc ou autre):
alias connect.dev='ssh -p 12345 [email protected]'
Le seul avantage que je peux voir par rapport aux autres approches est que (en zsh au moins, et je pense que bash), vous pouvez utiliser la complétion de commande pour voir tous vos serveurs auxquels vous connecter. Par exemple, supposons que vous vous connectiez à 25 serveurs différents et que vous ne vouliez pas vous souvenir de tous les noms/alias que vous leur avez donnés dans le fichier .ssh/config. Si tous les alias commencent par la même chose, comme 'connect.', Vous tapez simplement connect. [TAB] à l'invite de commande, et vous verrez toutes les complétions possibles. (Avertissement: vous devrez peut-être personnaliser le shell pour que cela fonctionne, mais je pense que cela fonctionnera par défaut dans zsh et probablement aussi en bash.)
Si la partie qui craint pour vous est d’ouvrir Terminal, alors vous pouvez essayer d’utiliser quelque chose comme DuckBill , bien que je puisse penser uniquement à exécuter ssh OUTSIDE. de Terminal peut-être pour exécuter des programmes serveur X Windows ou un tunnel ssh.