Fact of Life

音楽と食とビールが好きなWebエンジニアのブログ

踏み台経由のSSH接続する場合に便利な設定

スポンサーリンク

踏み台サーバで経由のssh接続って普通に行うと結構面倒ですよね。一発で接続できるようにしたいとか、サーバ毎に分かりやすい接続にしたいとか・・

私がやってみて「これは良かった!」という設定を紹介します。

コマンド1つで踏み台経由のssh接続

設定ファイル(~/.ssh/config)にProxyコマンドを入力します。

踏み台サーバをstep、接続したいサーバをstageの場合のサンプルです。

    
Host step-server
	HostName step.kaicho.com
	Port 22222
	User step-user
	IdentityFile ~/.ssh/step/id_rsa

Host stage-server
	HostName stage.kaicho.com
	Port 22222
	User stage-user
	IdentityFile ~/.ssh/stage/id_rsa
	ProxyCommand ssh step-server -W %h:%p
    
    $ ssh stage-server

これでコマンド1つで目的のサーバーにアクセス可能になります。ホント便利。

iTermで接続先毎にiTermの背景色を設定

検証サーバを触っていたつもりが本番を触っていてトラブル発生・・この辺の仕事してる方々であれば聞いたことある話ですよね。

このトラブルを回避する対策として、iTermでは背景色を変えることが可能です。

1. スクリプトを取得

ssh-backgroundより、コードを取得します

取得したコードはパスの通ったディレクトリに配置し、実行権限を付与します。

$ cd /usr/local/bin/
$ vi ssh-background
$ chmod 755 ssh-background

コードの以下の箇所を修正することで背景色の変更が可能です。

if [[ "$@" =~ host0.example.com ]]; then
   set_color ffffff 330000 0.2 
elif [[ "$@" =~ host1.example.com ]]; then
   set_color ffffff 000033 0.2
fi

iTermをVer.3に上げるとエラーが出る

iTermをVer.3に上げるとエラーが出て動かなくなりました。

60:68: syntax error: end of line があるべきところですが identifier が見つかりました。 (-2741)

コードの22行目辺りに書いてあるterminalをwindowに変更することで解決できます。

tell application "iTerm"
   tell current session of current window
      set foreground color to {$FG_R, $FG_G, $FG_B}
      set background color to {$BG_R, $BG_G, $BG_B}
      set transparency to "$OPACITY"
   end tell
end tell

2. エイリアスを登録

~/.bash_profileにsshコマンドのエイリアスを登録します。

alias ssh=/usr/local/bin/ssh-background

3. 設定を反映

$ source ~/.bash_profile

ssh接続し、背景色が変わればOK。これで安心して作業ができますね。

本番環境の背景色を赤くしておくと注意度が増すはず!?