1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

【初心者】AWS Wavelengthを使ってみる #6 (SSHリモートポートフォワードを用いたサーバ⇒デバイス方向のアクセス実現)

Posted at

1. 目的

  • AWS Wavelengthを利用する際、クライアントとなるデバイス(PC、ラズパイなど)は、スマホやモバイルルータでテザリングし、Wavelength上のサーバと通信する。その際はNAPT経由でのアクセスとなるため、デバイス⇒サーバ方向のセッションは問題なく可能だが、基本的にはサーバ⇒デバイス方向のセッションは不可。
  • 「サーバ側からデバイスにアクセスして、デバイス内に蓄積したデータを取得したい」といったニーズ対応へのため、SSHを用いて疑似的にサーバ⇒デバイス方向のセッションを開始できるような設定を確認する。

2. やったこと

  • Wavelength上にインスタンス(Amazon Linux 2)を作成する。
  • PC(Windows11)に、WEBサーバを立てておく。
  • PCをスマホでテザリングし、Wavelength上のインスタンスにSSH接続する。
  • SSHのリモートポートフォワード機能を用いて、Wavelength上のインスタンスからPCのWEBサーバにhttpアクセスする。

3. 構成

sshポートフォワード構成図.png

4. 手順

WEBサーバの準備

  • Windows上に簡単にWEBサーバが作れるフリーソフト「簡単WEBサーバ」を起動する。利用手順については「【簡単】Windowsで簡易Webサーバを立ち上げる方法」を参照。
  • アプリを起動後、「localhost:80」にhttpアクセスして、WEBサーバのトップ画面が表示可能なことを確認しておく。

SSH接続

  • PCをスマホでテザリングする。
  • リモートポートフォワードのオプションを付けて、PCからWavelength上のインスタンスにSSH接続する。
  • Windows11標準のSSHコマンドを使用する場合は以下となる。
> ssh x.x.x.x -l ec2-user -i [秘密鍵ファイル] -R "localhost:10080:y.y.y.y:80"
  • 「-R」がリモートポートフォワードの有効化。SSHでの接続先(Wavelength上のインスタンス)のlocalhost:10080にアクセスすると、その通信がPCの80番ポート(tcp)に転送されるようになる。
  • 「x.x.x.x」はWavelength上のインスタンスのキャリアIP。「y.y.y.y」はPCのプライベートIP。

インスタンスからPCのWEBサーバへhttpアクセス

  • 上記のSSH接続が存在している状態で、Wavelength上のインスタンスにて、localhost:10080にhttpアクセスすると、その通信がSSHのリモートポートフォワード機能により転送されて、PCのWEBサーバにアクセスすることができる。
[ec2-user@ip-10-0-10-201 ~]$ curl http://localhost:10080
<html>
<meta http-equiv="Content-type" content="text/html; charset=Shift_JIS">
<head>
<title>KANTAN HTTP Server</title>
</head>
<body bgcolor="deepskyblue" LINK="#FFFFFF" VLINK ="yellow">
<div style=" margin: 5px 5px 5px 5px; font-weight: bold; color: #ffffff; font-size: 20px; width: 300px; filter:Shadow(color=blue)";>
TTFA HTTP Server
</div>
<div class = "folder">
<a href="./KantanWebServer/">KantanWebServer</a>
</div>
</body>
</html>

(参考) TeraTermの場合の設定

  • SSHコマンドの代わりに、TeraTermを使用する場合は「SSHポート転送」の項目にて同様の設定が可能。

sshポートフォワード1.png

5. 所感

  • 実際に使うには例えばSSHのセッションの維持(切れたら再接続)などの考慮も必要かもしれないが、まずはベースとなる動作確認はできた。

6. 参考サイト

1
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
1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?