DACエンジニアブログ:アドテクゑびす界

DACのエンジニアやマーケター、アナリストが執筆するアドテクの技術系ブログです。

MacのSSHポートフォワーディングツール「autossh」と「Coccinellida」をご紹介!

はじめに

みなさんこんにちは、プロダクト開発本部の亀梨です。 普段はXmediaOneというメディアプランニング・広告運用管理・トラッキング・マーケティング分析を行う 統合プラットフォームの開発を担当しています。

さて、皆さんはSSHポートフォワーディングするときにどんな方法で行っていますか? わたしはつい最近までターミナルに直接SSHコマンド

$ ssh \
  -L ローカルポート番号1:接続先ホスト名2:接続先ポート番号3 \
  -L ローカルポート番号2:接続先ホスト名2:接続先ポート番号3 \
  -L ローカルポート番号3:接続先ホスト名2:接続先ポート番号3 \
  踏み台サーバーホスト名

を叩いて、接続が切れたら再度コマンドを叩いてっていう超絶めんどいことをしていたのですが、 ちょっと調べてみたら自動で再接続しSSHを繋ぎっぱなしにしてくれるツールが見つかり、使ってみると大変便利だったのでここでご紹介します。

紹介その1「autossh」

まずはじめにご紹介するのはターミナルからコマンドを実行して使うCLIツールの autossh です。

インストール

Homebrewを使ってインストールします

$ brew install autossh

実行方法

以下のようにコマンドを打つだけでSSH接続を維持してくれます。

$ autossh -M 0 -f \
 -L 8080:remorthost:8080 fumidai-serber

オプションは以下の通りです。

  • -f : バックグラウンドで実行
  • -M : モニタポート(よく理解していないのですが、0 を指定しておけばよいようです^^;)
  • 後はいつもの。

はい、とっても簡単ですね。

紹介その2「Coccinellida」

こちらはWindowsでいうPuttyのようなGUIツールです。 こちらは設定を保存しておき、実行はマウス操作のみで行えるので、autosshよりも楽かもしれないですね。

インストール

こちらよりインストールしてください。 インストールしたZipフォルダを解凍したら、Coccinellidaアプリをアプリケーションフォルダにつっこんでおきましょう。

起動

アプリケーションフォルダもしくはDockにCoccinellidaをセットしている場合はDockから起動します -> 上部メニューバーにてんとう虫のアイコンが現れ、これがインターフェイスとなります。

設定

Coccinellidaを起動したら、ディスプレイ上部メニューバーのてんとう虫をクリックし、「Preferences」を選択します。

Preferencesの設定画面が開いたら、上部てんとう虫マークの「Tunnels」をクリックし、 次に下部の「Add」をクリックします。

設定画面で、まずは「General」で踏み台となるサーバーの接続情報を設定する

  • Name: 任意の名前
  • Host: 踏み台サーバーのIPアドレス or ホスト名
  • Port: ポート番号(任意の番号でも可)
  • User: ユーザー名
  • Password: SSHパスワード(設定していれば)
  • Identity: SSH秘密鍵のパス

次に踏み台サーバーを経由して接続したいサーバーの情報を設定します。 -> 最後にSaveで保存

  • Type: localのまま
  • Local Port: 2022 (任意のポートでもいい)
  • Local Host: localhostのまま
  • Remote Host: 本命のサーバーのIPアドレス or ホスト名
  • Remote Port: 22 (他のポート指定がある場合はそのポート番号)

実行

Preferencesを一旦閉じ、再度上部メニューバーをクリックすると 先程登録した踏み台サーバー名が表示されるので、それをクリックすれば接続完了です。

なお、接続しても特に何もアクションが起きないため接続した感が無いですが、 左側にチェックマークが付いていれば接続されているということになります。 なお接続を終了したい時は再度メニューから接続名をクリックします。接続を終了するとチェックマークが外れるのが確認できます。

以上です。

はい、どちらもとっても簡単でしたね。 もしこういったツールをご存じなかった方は、日々の業務の休憩がてら設定してみてはいかがでしょうか。

話は変わりますが、弊社は12/28-1/3まで休みをいただいております。 皆さんはどんな年末年始を過ごしますか?わたしは絶賛連載中wのScala入門の次回記事の作成に向け あれやこれやと試してみたいと思います。

それではよいお年を!