1. KoriCori

    Posted

    KoriCori
Changes in title
+Shuttle(GUIでのssh接続)とsshpassの組み合わせがいい感じ
Changes in tags
Changes in body
Source | HTML | Preview
@@ -0,0 +1,71 @@
+
+## どんなことができるのか
+
+Shuttleは、上部メニューバーにアイコンが表示されて
+設定した名前をクリックするとssh接続ができるというもの。
+ログインユーザのホームディレクトリ直下に`.shuttle.json`が作成され、
+ここにssh接続先の名前、接続時のコマンドを記載する。`Terminal.app`、`iTerm`に対応。
+※ SHUTTLE A simple SSH shortcut menu for OS X
+ http://fitztrev.github.io/shuttle/
+
+sshpassは、sshコマンド発行時に`sshpass -p 'パスワード'`を前につけることで、
+sshパスワードを自動的に入力してくれるもの。
+
+## 私が設定したこと
+
+まずsshpassをインストールします。
+Homebrewでは`brew install sshpass`としてもセキュリティ的に問題があるとの警告が出て、インストールさせてくれません。
+(パスワードが平文記載だからそうなりますが...)
+
+```
+% brew install https://raw.github.com/eugeneoden/homebrew/eca9de1/Library/Formula/sshpass.rb
+```
+
+と外部ファイルを指定してすることで、インストールできるようになります。
+※ 参照:Install Sshpass on Mac
+ http://lalyos.github.io/blog/2013/09/30/install-sshpass-on-mac/
+
+また、Shuttleは上記URLよりShuttle.dmgをダウンロードして
+Shuttle.appをアプリケーションフォルダへ移動。
+
+```.shuttle.json(設定例)
+{
+ "_comments": [
+ "Valid terminals include: 'Terminal.app' or 'iTerm'",
+ "Hosts will also be read from your ~/.ssh/config or /etc/ssh_config file, if available",
+ "For more information on how to configure, please see http://fitztrev.github.io/shuttle/"
+ ],
+ "terminal": "Terminal.app",
+ "launch_at_login": false,
+ "show_ssh_config_hosts": true,
+ "ssh_config_ignore_hosts": [],
+ "ssh_config_ignore_keywords": [],
+ "hosts": [
+ {
+ "Work": [
+ {
+ "name": "Host-A",
+ "cmd": "sshpass -p 'パスワード' ssh username@hostname"
+ },
+ {
+ "name": "Host-B",
+ "cmd": "sshpass -p 'パスワード' ssh -t username@remotehost 'ssh username@targethost'"
+ }
+ ]
+ },
+ {
+ "Vagrant": [
+ {
+ "name": "precise32",
+ "cmd": "ssh vagrant@127.0.0.1 -p 2222 -i ~/.vagrant.d/insecure_private_key"
+ }
+ ]
+ }
+ ]
+}
+```
+
+デフォルトでvagrantなど各種設定方法が記載されています。
+(Workの箇所は私が設定した内容の説明となります。)
+
+これらを組み合わせて多段sshを自動で接続できる環境を整えることができました!