トップページへ

多段ssh接続が必要なサーバ上のファイルをvimで直接編集する方法

小粋空間 » Linux » 多段ssh接続が必要なサーバ上のファイルをvimで直接編集する方法

多段ssh接続が必要なサーバ上のファイルをvimで直接編集する方法を紹介します。

1.問題点

リモートサーバ上にファイル(test.txt)があります。

ここでは「SSHポートフォワーディング(トンネリング)とは」のウェブサーバ(10.10.10.123)上にあるものとします。

このファイルをクライアントサーバから編集する場合、

# ssh 10.10.10.10
# ssh 10.10.10.123
# vi test.txt

とします。

が、クライアントサーバからウェブサーバのファイルを直接編集する方法が分かりません。

ということで、多段ssh接続が必要なサーバ上のファイルをvimで直接編集する方法を紹介します。

2.多段ssh接続が必要なサーバ上のファイルをvimで直接編集する

多段ssh接続が必要なサーバ上のファイルをvimで直接編集するには、まず、1つめの画面でポートフォワーディングを実施します。

# ssh -N -L 10000:10.10.10.123:22 10.10.10.10

ここまでは通常のsshポートフォワーディングと同じです。なお、ポート番号はsshの「22」を指定しておきます。

そして、2つめの画面でvimを起動します。

# vim scp://root@localhost:10000//home/foo/test.txt

これで、多段ssh接続が必要なサーバ上のファイルのvim画面が開きます。

3.解説

vimは次のように指定することで、リモートサーバのファイルを編集することができます。

# vim scp://<ユーザ>@<リモートサーバのIPアドレス>//<編集対象ファイル>

今回は、この「リモートサーバのIPアドレス」にsshポートフォワーディング情報「localhost:10000」を与えます。

# vim scp://<ユーザ>@localhost:10000//<編集対象ファイル>

この設定により、多段ssh接続せずにvimの起動が行えます。

4.参考サイト

参考サイトは下記です。ありがとうございました。

« 前の記事へ

次の記事へ »

トップページへ