Réponses:
La réponse la plus * NIX-y est d'utiliser les fonctionnalités de SSH à votre avantage.
Créez un fichier nommé config
dans ~/.ssh/
(un dossier nommé .ssh
dans votre dossier de départ). 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 soit une adresse IP, soit un nom d'hôte réel. Port
n'est pas obligatoire si vous utilisez le port SSH par défaut IdentityFile
n'est pas obligatoire si vous n'utilisez pas de clé. ssh compy
Si vous utilisez l'authentification par clé et stockez le mot de passe de votre clé dans le trousseau, vous n'aurez même pas besoin d'entrer un mot de passe.
De plus, vous pouvez créer un fichier .command (un fichier texte avec l'extension .command) contenant la ligne de commande que vous utilisez pour vous connecter au serveur ( ssh compy
ou ssh -i ~/.ssh/my_rsa_key -p 90 sidney@98.256.211.12
). Il s'ouvrira dans Terminal et exécutera cette commande.
Vous pouvez également utiliser l' New Remote Connection…
élément de menu dans Terminal pour vous connecter. Ajoutez simplement votre hôte sous SSH en cliquant sur le +bouton dans la colonne de droite.
En savoir plus ICI
Vous avez quelques options auxquelles je peux penser:
Dans votre éditeur de texte préféré, créez un fichier texte en clair avec votre commande ssh, par exemple.
ssh -p 23 admin@server.example.com
Nommez le fichier WHATEVERYOUWANT.command
. Vous devez ensuite définir le .command
fichier avec les privilèges d'exécution ( chmod 755 /PATH/TO/WHATEVERYOUWANT.command
), mais vous avez maintenant un fichier qui, lorsque vous double-cliquez dessus, ouvrira Terminal et exécutera cette commande.
En supposant que vous utilisez bash (le shell par défaut sous Mac OS X), vous pouvez ajouter des alias à votre .bashrc
dans votre dossier de départ.
par exemple. alias sshserver='ssh -p 23 admin@server.example.com'
Vous pouvez trouver plus d'informations sur les alias sur [Wikipedia] ( http://en.wikipedia.org/wiki/Alias_(command) ou en lisant la documentation.
Il y a plusieurs façons de procéder. Voici ce que je fais:
Ouvrir les préférences du terminal
Dupliquez votre profil sur l'onglet Paramètres avec l'icône d'engrenage. Cela modifie votre fichier de paramètres par défaut, donc remplacez votre ancien par défaut par ce 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é en celui que vous voulez.
Vous pouvez maintenant démarrer votre session à partir des éléments de menu Nouvelle fenêtre ou Nouvel onglet, et bien sûr un raccourci clavier peut être attribué dans Clavier et souris dans les Préférences Système.
Vous pouvez créer un AppleScript qui exécutera une commande pour vous:
tell application "Terminal"
do script "ssh server.example.com"
end tell
Pour ouvrir rapidement une connexion ssh à partir de presque n'importe où sur votre Mac, procédez comme suit:
ssh://user@host.com
*.inetloc
fichier.~/connections
qui contient tous mes
*.inetloc
fichiers. Vous pouvez renommer ce fichier en ce que vous voulez et même changer son icône.*.inetloc
fichier sur le Dock, la barre latérale ou la barre d'outils du Finder, ou n'importe où ailleurs. (Il peut même être sélectionné avec Spotlight)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 de clé. C'est à dire:
Host SomeServer
User ubuntu
HostName someserver.com
IdentityFile ~/.ssh/private.key
J'aurais ajouté ce bit en commentaire à l'une des réponses, mais ma réputation est encore faible et je ne suis pas autorisé à le faire.
Si vous voulez un fichier que vous pouvez ouvrir pour lancer une session, vous pouvez facilement créer un .inetloc. Dans TextEdit, saisissez une URL SSH vers votre hôte, par exemple:
ssh://username@hostname/path
TextEdit reconnaîtra cela comme une URL. Faites glisser l'URL vers votre bureau et cela créera un .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 votre Dock, ou l'ouvrir avec un lanceur tel que Quicksilver.
J'aurais recommandé le plugin SSH pour Quicksilver, mais la dernière version que je puisse trouver, v.84, plante QS plus récemment que β54 (3815).
hostname:1234
?
Si vous utilisez Quicksilver, il existe un excellent module complémentaire appelé RemoteHosts qui analysera automatiquement un fichier ~ / .hosts ou même votre fichier ~ / .ssh / known_hosts à remplir automatiquement.
La connexion à un nouvel hôte est aussi rapide que d'ouvrir Quicksilver (CMD-Space), puis de taper suffisamment de caractères de l'hôte pour être unique, et enfin d'appuyer sur Entrée.
Si la partie qui craint pour vous tape une commande ssh longue et complexe, mais cela ne vous dérange pas d'ouvrir Terminal, et pour une raison quelconque, vous ne voulez utiliser aucune des approches des réponses précédentes, vous pouvez également utiliser alias ou fonctions. Ajoutez quelque chose comme ça pour shell dotfile (.profile ou .bash_profile ou .bashrc ou .cshrc ou .zshrc ou autre):
alias connect.dev='ssh -p 12345 yourusername@dev.somehost.net'
Le seul avantage que je peux voir par rapport à d'autres approches est que (dans 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, disons que vous avez 25 serveurs différents auxquels vous vous connectez et que vous ne voulez 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.', Alors 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 dans bash.)
Si la partie qui craint pour vous est d'ouvrir Terminal, vous pouvez essayer d'utiliser quelque chose comme DuckBill , bien que les seules raisons pour lesquelles je peux penser à exécuter ssh OUTSIDE of Terminal puissent être pour exécuter des programmes de serveur X Windows ou un tunnel ssh.
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 username@www.mydomain.com
Rendez-le exécutable
chmod a+x /usr/local/bin/dev
Vous pouvez ensuite appeler à partir du terminal en utilisant
dev
Et vous créez ensuite une tâche d'automatisme 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 du raccourci clavier sur votre clavier
Lanceur: faites glisser l'icône de la sauvegarde automatique dans le dockbar
Raccourci clavier:
create as service in automator
open system services -> keyboard -> shortcuts -> app shortcuts -> enter title of automator and key shortcut