LoginSignup
0
0

More than 1 year has passed since last update.

リモートサーバーのファイルをAtomで編集したい(踏み台編)

Posted at

やりたいこと

SSH接続したリモートサーバーのファイルを、ローカルマシンのAtomで編集したい。
ただしリモートサーバーには踏み台越しじゃないとアクセスできない。

環境 & 構成図

構成図は以下の通り。
要するにリモートサーバーにはクライアントから直接アクセスできない環境(踏み台を経由する必要あり)。
繰り返しになるが、この環境で、ローカルマシンのAtomを使ってリモートサーバーのファイルを編集するのが今回の目的。

Atomでリモートサーバーのファイルを編集.png

  • 環境
    • リモートサーバー:Amazon Linux 2
    • 踏み台サーバー:Amazon Linux 2
    • ローカルマシン:Windows 10

使うもの

  • Atom

    • ローカルマシンのエディタ
    • 拡張機能である"remote-sync"を使用
    • "remote-sync"のインストールについてはこちらを参照
  • Tera Term

    • ローカルマシンのSSHクライアント
    • 踏み台サーバーに接続し、"remote-sync"のトラフィックをリモートサーバーへ転送するために使用

やりかた

ざっくりこれだけ。

  1. ローカルマシンから踏み台サーバーにSSH接続
  2. SSHクライアントでSSH転送設定
  3. remote-syncの接続先にlocalhostを設定

手順

ローカルマシンから踏み台サーバーにSSH接続

Tera Termで踏み台サーバーにSSH接続。

image.png

手順を知りたい方はこちら

SSHクライアントでSSH転送設定

Tera Termでは次のように設定すればOK。

「設定」→「SSH転送」→「ポート転送」→「追加」で、以下の通り設定する。

image.png

  • ローカルのポート:なんでもよいが、ウェルノウンポートは避けるのが無難。今回は10022とした。
  • リモート側ホスト:リモートサーバーのプライベートIPアドレス。
  • リッスン:空欄でOK。
  • ポート:リモートサーバーの待機ポート。

これで、localhostの10022番ポートへの通信が、踏み台サーバーを経由してリモートサーバーへ転送されるようになる。

remote-syncの接続先にlocalhostを設定

ここからはAtomの操作
リモートサーバーに転送したいファイルを含むディレクトリを右クリックし、「Remote Sync」→「Configure」を開く。

image.png

「Configure」で以下の通り設定する。

image.png

  • Hostname:localhost
  • Port:10022(SSH転送で指定したローカルのポート)
  • Target Directory:/home/ec2-user(ファイルを保存したいリモートサーバー上のディレクトリ)
  • Ignore Paths:指定なし(ローカルのディレクトリ内で、リモートサーバーに転送しないファイルのパス)
  • Username:ec2-user(リモートサーバーへのログインに使用するユーザー名)
  • Keyfile Path:リモートサーバーへのSSH認証に使用する秘密鍵のパス
  • uploadOnSave:チェックを入れると、ファイル保存と同時にリモートサーバーへアップロードする。

動作確認

適当なファイルを作成し、ローカルで保存する。
すると以下の通り、ファイルをアップロードしたよーというメッセージが表示される。

image.png

一応、踏み台からリモートサーバーにSSH接続して確認。

image.png

ちゃんとファイルがアップロードされていることが確認できた。

まとめ

ということで、踏み台経由でリモートサーバー上のファイルをAtomで編集できるように。
これでファイルのプライマリはGithubリポジトリに置いて、編集するときはローカルのAtomという構図がとりやすくなった。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0