趣味のログ

自分用の作業ログ。。

RaspberryPi3にCloudPiをインストールしてNAT越え

スイッチサイエンスここを参考にした。

CloudPiの購入

CloudPiはここに購入リンクがあり、スイッチサイエンス経由Amazon経由で購入できる。
購入すると、UIDが割り振られたカードが送付される。
このUIDを、RaspberryPi3にインストールするCloudPiモジュールの設定ファイルに記入することで、CloudPiの機能を使うことが出来る。

RaspberryPi3にインストール

$ mkdir /home/pi/cloudpi
$ cd /home/pi/cloudpi

参考サイトでは、CloudPi用のサーバモジュールをwgetで取得しているが、リンク切れしているため、ここから、Raspberry Pi版のモジュール(p2ptunnel_v100.tar.gz)をダウンロードする。
ダウンロードしたモジュールは、WinSCPなどを使ってRaspberryPiに配置し、解凍する。

$ tar zxvf p2ptunnel_v100.tar.gz

解凍してできたディレクトリに移動し、次のコマンドを実行

$ cd p2ptunnel
$ sudo cp cloudpi /etc/init.d/cloudpi
$ sudo chmod 755 /etc/init.d/cloudpi

UIDを確認し、cloudpi.confファイルを編集してUIDとパスワードを記述します。

$ vi cloudpi.conf

以下の記述をcloudpi.confに記入する。

uid=割り振られたUID
password=任意のパスワード

記入後、以下のコマンドを実行し、RaspberryPi3起動時に自動でCloudPiが起動するようにする。

$ sudo insserv cloudpi

以下のコマンドで、CloudPiを起動する。

$ service cloudpi start

クライアント側の設定

Windows PCからRaspberryPi3へ、NAT越えでssh接続する。
ここから、Windows版クライアントモジュールをダウンロードし、解凍する。
解凍したフォルダ内の「P2PTunnel.exe」を実行する。 「追加」ボタンを押すと、 任意の名前、割り振られたUID、サーバモジュールで決めたパスワード、を記述し、「ポート設定」を押す。
今回は、sshで接続を行うため、ローカルの2222番ポートに、RaspberryPi3の22番ポートを割り当てる。
設定後、「接続」ボタンを押すと、localhostの2222番が、RaspberryPi3の22番ポートとして使えるようになっている。(NAT越えも可能)
teratermなどで、localhost:2222でログインできれば成功。

RaspberryPi3上でWEBサーバなどを起動している場合も、ポートを適切に設定しておけば、localhostでWindowsPCからアクセスできるようになる。