多段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.参考サイト
参考サイトは下記です。ありがとうございました。
Posted by yujiro このページの先頭に戻る
- killコマンドでメッセージを出力させない方法
- コマンド実行結果を標準出力とファイルの両方に出力する方法
- vimで開くファイルをコマンドラインで編集する方法
- Linuxシェルでコマンド実行結果を入れた変数の改行を出力する方法
- cgroupsの利用方法
- vimのコマンド一覧
- Linuxでダミーファイルを作成する方法
- pkillで文字列マッチしない場合の対処
- pkillを特定のプロセスに絞る方法
- Linuxで文字列の特定部分を抜き出す方法
- コマンドの実行結果をdiffする方法
- grepで行番号だけを表示する方法
- RPMをソースパッケージ(SRPM)からインストールする方法
- tar.gzを展開せずに特定のファイルだけを見る方法
- tar.gzから特定のディレクトリ・ファイルだけを取得する方法
zenback
人気エントリー
トラックバックURL
コメントする
greeting