Cloud Piをつかってみました。(サーバ側設定)

投稿者:

プラネックスコミュニケーションズさんのCloud Piを使ってみました。
image-01

Cloud Piとは

プラネックスコミュニケーションズさんのお言葉をお借りすると、「容易にNAT越えを可能とするP2P(Point to Point)トンネルシステムをRaspberry Pi向けに提供するソフトウェアキット」です。このキットを使うことで、外出先から簡単に自宅のローカルエリアネットワーク内のRaspberry Piにリモートアクセスすることができます。

VPN接続をしようと思ったときに必要なポート開放やDDNS設定などが不要で、Raspberry PiとスマートフォンやPCにソフトをインストールして簡単な設定をするだけで通信が可能になるという魅力的なソフトウェアキットです。

なにができるか

Cloud Piを使ってRaspberry Piにスマートフォン・PCから接続した後は、Raspberry Pi上で実行できるコマンドをスマートフォンから実行することができます。Raspberry Piにセンサ基板やその他周辺基板を接続していれば外出先からそれらの基板をコントロールすることが可能です。

設定方法

Raspberry PiのOSはRaspbianを使用します。
それではまずRaspberry Pi上でCloud Piに必要な設定をしていきます。まず最初にCloud Piをインストールするディレクトリを作成します。cloudpiという名前にしました。

pi@raspberrypi ~$ mkdir cloudpi
pi@raspberrypi ~$ cd
pi@raspberrypi ~/cloudpi $

今作ったディレクトリに移動したら、Cloud Piのサーバーモジュールをダウンロードして展開します。
URL、ファイル名は執筆時点のものなので適宜最新のものを利用してください。

pi@raspberrypi ~/cloudpi $ wget https://cloudpi.tokyo/cloudpi/wp-content/uploads/2014/12/p2ptunnel1128.tar.gz
pi@raspberrypi ~/cloudpi $ tar zxvf p2ptunnel1128.tar.gz
p2ptunnel/
p2ptunnel/cloudpi.conf
p2ptunnel/P2PTunnelServer
p2ptunnel/cloudpi
pi@raspberrypi ~/cloudpi $

展開して出来たp2ptunnelディレクトリに移動して、次のコマンドを入力します。

pi@raspberry ~/cloudpi $ cd p2ptunnel
pi@raspberry ~/cloudpi/p2ptunnel $ sudo cp cloudpi /etc/init.d/cloudpi
pi@raspberry ~/cloudpi/p2ptunnel $ sudo chmod 755 /etc/init.d/cloudpi

次に、Cloud Piカードを見てUIDを確認します。
Cloud_Pi_card
UIDを確認したら cloudpi.confファイルを編集してUIDとパスワードを記述します。

pi@raspberrypi ~/cloudpi/p2ptunnel $ nano cloudpi.conf

cloudpi.confの中身。 パスワードは自分で設定します。

uid=ABCDEFGHIJKLMNOPQRST
password=12345678

cloudpi.confの編集が終わったら、次のコマンドを実行します。このコマンドを実行することで、Raspberry Piの起動時に自動的にCloud Piのサーバーモジュールが起動します。

pi@raspberrypi ~/cloudpi/p2ptunnel $ sudo insserv cloudpi

後はRaspberry Piを再起動するか、次のコマンドを実行することでCloud Piのサービスが起動します。

pi@raspberrypi ~/cloudpi/p2ptunnel $ sudo service cloudpi start

これでRaspberry Pi(サーバ)側の設定は終了です。次はクライアント側の設定ですが、ちょっと長くなってしまったので次回に引き継ぎます。

Cloud Piをつかってみました(クライアント側設定):次
Cloud Piをつかってみました(環境センサモジュール:前編)
Cloud Piをつかってみました(環境センサモジュール:後編)
Cloud Piをつかってみました。(カメラモジュール)