はじめに
IIJ Legsというプロダクトが2019年7月8日にIIJより公開されました。これはインターネット越しのデバイス制御を非常にお手軽に実現してくれるサービスで、実際にやってみたところ確かにとても簡単でした。この記事では実際にIIJ Legsを使ってデバイスを操作してみるまでの手順をまとめます。
前提と環境
今回はラズベリーパイをIIJ Legsを使ってインターネット越しに操作してみました。
- 操作対象 : ラズベリーパイ 3 Model B
IIJ Legsについて
IIJ Legsは、SSH等は使わずに、各デバイスにインストールしたクライアントアプリを起動しておくだけで、インターネット越しにリモートからHTTPS経由(Webブラウザから)で操作できるようにしてくれるサービスです。詳細については、以下のIIJ公式ブログに記載されています。
IIJ Legs でIoTデバイスをお手軽制御 | IIJ Engineers Blog
はじめに プロダクト本部の r-fujimoto です。 今回は7月8日付で公開した IIJ Legs という新しいプロダクトの紹介をしたいと思います。 公式サ…
IIJ Legsを使用するには、まずはアカウントを作成し、その後クライアントツールを操作したいデバイスにインストールする必要があります。以降でのこの手順を説明します。
IIJ Legsアカウントを登録する
まず、ブラウザからIIJ Legsのログイン画面にアクセスします。ログイン画面のURLはこちら。
これは操作したいデバイスからではなく、操作元のパソコンで大丈夫です。以下ログイン画面の中に、「アカウント新規作成」というリンクがあるのでこれをクリックします。
「アカウントを新規作成」をクリックすると、以下のようにアカウント作成フォームが表示されるので、メールアドレスとパスワードを入力し、利用規約を読んだ上で良ければチェックを入れて「create account」をクリックします。
「create account」をクリックすると、以下のようにメールアドレスに届いているメール内のリンクをクリックするよう指示されます。
2019年7月時点では、以下のようなメールが届きました。「Confirm my account」という部分が有効化のためのリンクになっています。
youremail 様
Legsにご登録いただきありがとうございます。
アカウントを有効化するには以下のリンクをクリックしてください:
Confirm my account
リンクをクリックしてアカウントが有効化されると、ブラウザが開いてログインされます。そして以下のようにチュートリアルが表示されます。
このチュートリアルに従って、操作したいデバイスにクライアントツールをインストールします。このチュートリアルの中に、各自のシークレットキーを含むコマンドが記載されているので、これをメモしておきます。
次にこの手順について説明します。
なお、チュートリアルを閉じると、以下のようにダッシュボードが表示されますが、まだ登録されたデバイスがない状態です。
操作したいデバイスにクライアントツールをインストールする
操作したいデバイスを起動して、端末から以下のコマンドを実行してクライアントツールをインストールします。ここではラズベリーパイを使っています。
$ curl --silent https://raw.githubusercontent.com/iij/legs-client/master/install.sh | sh
また、チュートリアル内にあったコマンドをシークレットキーごとそのまま実行します。
$ ./legsc secret mkl2AOuho3AKFNKP9-235jOUHF08eH_WOIHFhfewqp8Ho3uhoU
なお、上記を実行しても以下のようにエラーが表示されるかもしれません。私の環境では表示されました。
$ ./legsc secret mkl2AOuho3AKFNKP9-235jOUHF08eH_WOIHFhfewqp8Ho3uhoU<
open /home/pi/.config/legsc/conf.toml: no such file or directory
これは指定したディレクトリがないと言っているので、事前に以下のようにlegsc
ディレクトリを作成しておくことで回避できました。/home/pi
は私のラズベリーパイのホームディレクトリです。
$ mkdir /home/pi/.config/legsc
改めてシークレットキーを登録したところ、今度は以下のようにうまくいきました。
$ ./legsc secret mkl2AOuho3AKFNKP9-235jOUHF08eH_WOIHFhfewqp8Ho3uhoU
save to /home/pi/.config/legsc/conf.toml
後は以下のコマンドでクライアントツールを起動します。
$ ./legsc start
以上でクライアントツールのインストールは完了です。そして実際にWebブラウザでIIJ Legsのダッシュボードを確認してみると、以下のように自分のラズベリーパイが表示されていることを確認できました。
Webブラウザからデバイスを操作する
あとは、IIJ Legsのダッシュボードに表示されているデバイス名をクリックし、クリックした先の画面内にある「コンソール」タブを開くと、以下のようにデバイスの端末を操作できます。遅延もないです。
まとめ
IIJ LegsでIoTデバイスの遠隔制御などは圧倒的にお手軽になりそうな感じです。ちなみにAPIも用意されています。2019年7月時点では、5台のデバイスまでは無料でお試しできるので興味がある方はぜひ触ってみてください。
SPONSORED LINK