iVideon+パソコン+IPカメラ+USBカメラで監視カメラシステムを構築する
iVideonとは
iVideonを利用して監視カメラシステムを構築してみる。
システムと言っても、無料のクラウドサービスを利用するだけなので、そんなに難しいことはない。この記事は無意味に長いが・・・
iVideonはクラウドサービスで、パソコンにiVideon Serverというソフトをインストール・実行、パソコンに接続されたUSBカメラやLAN上のIPカメラを、ユーザ認証した上でインターネットを通じて、外出先からモバイル端末などでカメラ映像を視聴できるサービスを提供している。動体検知機能を兼ね備え、動きを検知すると自動で録画されるというスグレもの。しかもカメラ2台までは無料で使用できるので財布もにやさしい。
iVideonのサイトにログオンしてブラウザで自宅のカメラの映像を表示
7インチ Androidタブレット SHARP SH-08E NTTdocomoのLTE回線を経由して、自宅の2台のカメラに接続。右はUSBカメラの映像。なお、iOS版のiVideonクライアントもあるので、iPad等でも自宅に接続できる。
iVideonでできること
- 外出先からこどもの様子を確認したい
- ペットの様子を確認したい
- お店の様子を24時間監視、録画したい
プライベートIPが割り当てられていても接続できる
マンションなどで、インターネット接続はプライベートIPが割り当てられた環境でも利用できる。
しかし、無料で便利なものには裏があるかも?自宅の様子をさらすわけであるから、セキュリティもできる範囲で確認しておこう。
ただし、私はセキュリティの専門家でもないし、この分野に詳しいわけでもないので、評価を下すことはしない。
iVideonのセキュリティ
- アカウントを作成して、ユーザIDとパスワードで認証し、サービスを利用する。
- デフォルトで自分のカメラには自分しかアクセスできないようになっている。設定により公開することや指定した人にだけ公開することもできる。
- 接続はSSLを利用する。SSLの安全性をチェックしてみたが、あまりいいとは言えないようだ。SSL証明書のチェック結果や実際の接続先を記事の最後に記述したが、インターネット越しに自宅カメラにアクセスするわけだから、自分の目でセキュリティ状況を確認すべき。
- カメラの映像はiVideonのサーバを介してモバイル端末から閲覧するので、カメラ映像がiVIDEONのサーバでどのような扱いを受けているのか知る術はない。よってiVideon側には筒抜けであるくらいの構えをもって運用すべきである。
要件
- セキュアに監視映像を配信できること
- 外出先からモバイルで監視映像をみれること
- 動体検知による録画ができること
- 14畳程度のリビングを監視できること
- 明示的に配信した場合だけ配信されること
- 自分だけ(認証されたユーザだけ)が配信映像をみれること
- できるだけ安く運用できること
お品書き
- Windowsパソコン
Windows 8.1 Update Pro 64bit
IPカメラ、USBカメラの映像をパソコンにインストールした iVideon Server というソフトを使って、インターネット上のサーバに配信するので、パソコンが必要。
- iVideon Server(Windows用)
Get Internet Video Monitoring | Ivideon
https://www.ivideon.com/get/ からダウンロード
- USBカメラ
iBUFFALOのUSBカメラ「BSW20KM11BK」
ドライバなしに使用可能。
- IPカメラ
TENViS JPT3815W
- インターネット接続
マンション全体契約で、各戸にはプライベートIPが割り当てられている。光回線で1Gbpsの通信速度と言われているが、実測10Mbps~80Mbps程度。
構築
前提
- IPカメラはネットワーク接続済とする
- USBカメラはUSBポートへ挿しておく
iVideon Serverをダウンロードする
Cloud Video Surveillance
https://www.ivideon.com/ iVideonのサイトに行き、Get iVideon をクリック
iVideon Serverはサービスとしてインストールするか?通常のインストールか?
iVideon Serverはサービスとしてインストールするか、通常のインストールか選択できる。いろいろ考えた結果、サービスとしてインストールするようにした。
サービスとしてインストールされるとWindows起動後、ログオンなしに自動的に配信される。配信を停止するには、一旦ログオンしiVideon Server を起動し、配信を停止しなければならない。なお、配信停止しても再起動すると、再起動後は再び自動で配信されてしまう。店舗の監視などで、常に配信するケースはいいかもしれないが、個人で自宅の様子を配信するケースでは、自分だけが配信映像を見れる状況だったとしても、知らぬ間に配信されてしまうかもしれないので不安だ。
そこで、グループポリシーによりスタートアップとシャットダウン時に、サービスを自動起動から手動起動に切り替えるスクリプトを実行させることで、サービスとしてインストールしてもWindows起動と同時に配信されてしまうことを回避するようにした。自動配信が嫌ならサービスとしてでなくインストールすればいいじゃないか!と思うところだが理由がある。
- サービスとしてインストールしない場合
インストール先を既定のフォルダ(管理者のプロファイルフォルダ)にした場合、一般ユーザがアクセスできないので、実行ユーザは管理者限定になってしまう。
iVideon Server を一般ユーザで実行したいので、インストール先を一般ユーザでもアクセスできる(変更権あり)フォルダ、例えば「D:\iVideonWork」した場合、EXEやDLLはProgram Files ではなくここに保存される。録画データもこの中のArchiveというフォルダの中に保存されるので、archiveフォルダにはiVideonServerの実行アカウントに対し「変更」が許可されていなければならない。また、iVideonWork の中にはログや設定情報があり、これらは更新されるので、結局のところ一般ユーザ権限でiVideonWorkを更新できないといけないようだ。EXEやDLLについてまで、一般権限で変更できてしまうので、危険かもしれない。
archiveフォルダの場所を別の場所に指定できるが、ログや設定情報の場所は指定できないので、更新されるファイルだけは一般ユーザ権限でも更新できるフォルダに移し、EXEやDLL等のプログラムファイルは管理者権限でないと更新できないフォルダに置いておくという構成にできない。
- サービスとしてインストールする場合
インストール先は既定で C:\Program Files (x86)\iVideon となる(インストール先を変更できるが)ので、一般ユーザには変更権はない。録画データもこの配下のArchiveフォルダを選んでおく。このフォルダ内のファイルを更新するにはUACを突破しなければならい。またiVideonのサービスはローカルアカウントであるローカルシステムで実行されている。ローカルシステムには、C:\Program Files (x86)\iVideon 配下に対しフルコントロール権が与えられている。ローカルシステムアカウントや管理者アカウントを乗っ取られなければ、iVideon関連のプログラムファイルを不正に改ざんされてしまう脅威を低減できると思う。
ではサービスとしてインストールしない場合でも、インストール先を C:\Program Files (x86)\iVideon にすればいいかというと、そうはいかない。一般ユーザで iVideon Server を実行するので、C:\Program Files (x86)\iVideon 内にある 設定ファイルやログファイルを更新できない。更新させるために一般ユーザに変更権を与えるのはセキュリティとしてよろしくないと思った。
ローカルシステムはログオン可能なアカウントでないので、映像を配信するようなプログラムであるiVideon Serverはサービスとしてローカルシステムに実行させるのが無難ではないかと思う。
以上のことから、Windows起動時に自動配信させないのにサービスとしてインストールした方がいいのではという結論に達した。
iVideonServerをインストールする
特に説明がない限り、作業は図のとおりである。
保存した「IvideonServer_3.5.0_win32_setup.exe」をダブルクリック。
サービスとしてインストールするので「Install as Service」にチェックする。
セットアップウィザードでアカウントの取得とカメラを登録する
パスワードを入力する。インターネットで利用するので、できるだけ長く英数記号を入れるなどしたほうがいいだろう。
USBカメラをPCに接続、IPカメラはネットワークに接続されていればNEXT
USBカメラはすぐに表示され、IPカメラは20秒程度でみつかる
録画データをローカルに保存するかどうか?保存するならその場所と上限サイズを指定する。
カメラの動作設定
ウィザードが終了するとiVideon Serverが起動するので、カメラごとに設定を行う。
カメラのメーカーは適当なのが入っているのでカメラにあったものを設定する。
メーカーはTenvis PT、モデルはDefaultを選ぶ。モデル名にJPT3815Wが選択肢にあるが、それを選ぶとストリーミングできない。紛らわしいので注意。このIPカメラにマイクはないので Use audio source はチェックしない。
動体検知の感度を調整する。黄色い資格が動体検知している部分。風で草が揺れているのでそれを検知している。
緑は動体検知時録画、赤は常に録画、白は録画しない という意味。
パン、チルト、ズームを有効にするか設定する。このIPカメラはパン、チルトは可能なのでチェックする。
USBカメラはマイク機能付きなので、使用できるマイクから割り当てるマイクを選ぶ。カメラ内蔵のマイクを選ぶ。
音の検出を有効化すると感度調整できる。たぶん真ん中の横線を超えたら録音し、下回れば録音しないのだと思う。
以上で、カメラごとの設定は終わり。
iVideon Serverで配信を開始する
iVideonのサイトで配信映像を確認する
IPカメラをクリックすると拡大する。中心部にあるカーソルはパン・チルト用。マウスでクリックした位置にパン・チルトする。
カレンダーをクリックすると、指定した日の録画を観ることができる。
録画データをエクスポートしようとすると、FREEサービスではダメとでる。
メニューでネットで公開する、指定した人に公開するなどを選べる。
Windows起動時に自動で配信されないようにする
サービスとしてインストールすると、Windows起動後ログオンしないでも自動的にカメラ映像が配信される。明示的に配信する操作をしない限り配信されないようにする。
Ivideon Video Surveillance Service がiVioden Server。スタートアップが「自動」になっているので、Windows起動後、自動で起動し、かつ配信まで開始する。サービス管理ツールでスタータップを「手動」に切り替えても、配信操作をすると、再びスタートアップが「自動」に戻ってしまう。
そこで、スタートアップスクリプトとシャットダウンスクリプトでレジストリを操作することにより、Ivideon Video Surveillance Service のスタートアップを「手動」に設定し、自動でサービスが起動しないようにする。
iVideonServiceManualStart.cmd を作成する
REG ADD "HKLM\SYSTEM\CurrentControlSet\Services\ivideon_video_service" /v Start /t REG_DWORD /d 3 /f
ファイル名を指定して実行でグループポリシーエディタを起動し、あとは図のとおり。
外出先でモバイルからアクセスする
パソコンの電源が入っていて、iVideon Server が配信中なら、外出先からモバイル端末などで監視映像や録画映像を確認できる。
ここではAndroidタブレット SHARP SH-08Eを使用する。iVideon MonitorのアプリはGoogle Playから入手できる。
E-Mailとパスワードを入力し、Sigin in をタップ
IPカメラ。下のタイムラインで録画されている部分が青くなっている。
タイムラインをピンチアウトすると拡大される。目的の時間をタップすると録画データが再生される。おやつ食べたかな?とか確認するときいいかも。
メニューのShow ivent をタップすると動体検知のあった時間がリスト化され表示される。動体検知した個所をタップすると、その時間帯を再生してくれる。
外出先からパソコンの電源を入れる
リビングを24時間監視するのではなく、必要な時だけ監視したいので、通常はパソコンの電源を切っておく。パソコンの電源が入っていない時でも外出先からリビングを監視したい場合がある。そこで SmartServe 経由で自宅の無線LAN親機 WZR-600DHP にログインし、Wake On Lan マジックパケット送信機能を使って、パソコンの電源を入れる。外出先からパソコンの電源を入れるに関しては SmartServe(スマートサーブ)を使って外出先から自宅パソコンを利用する を参照。
LANに接続された機器一覧が表示されるので、今回電源投入するパソコンSN78SH7の右にあるボタン「WOL」をクリックする。
パソコンの電源を入れたらリモートデスクトップでログインし、iVideonServer の起動して配信すればOK。
SSL証明書のチェック結果
チェック日は2014/9/14
私はセキュリティの専門家ではないし、詳しくもない。下記サイトでiVideon.comのSSL証明書をチェックしてみたが、結果はBだった。なお、Aが一番いいらしく、下にはB,C,D,E,Fとつづくみたいだ。ランクの見方は下記にあるみたい。また、クラウドサービスなので、実際にはiVideon.com以外のドメインにわたって接続されると思うので、iVideon.comの証明書だけをチェックするのはあまり意味がないかもしれない。
Qualys SSL Labs - Projects / SSL Server Rating Guide
https://www.ssllabs.com/projects/rating-guide/index.html
Qualys SSL Labs - Projects / SSL Server Test / ivideon.com
https://www.ssllabs.com/ssltest/analyze.html?d=ivideon.com&hideResults=on&ignoreMismatch=on
iVideonはAmazonのAWSを使用しているみたいだ。
Qualys SSL Labs - Projects / SSL Server Test / ivideon.com
https://www.ssllabs.com/ssltest/analyze.html?d=ivideon.com&s=107.23.32.135&hideResults=on&ignoreMismatch=on
Qualys SSL Labs - Projects / SSL Server Test / ivideon.com
https://www.ssllabs.com/ssltest/analyze.html?d=ivideon.com&s=54.246.206.110&hideResults=on&ignoreMismatch=on
Qualys SSL Labsは英語なのでQualys SSL Labsのサービスを利用したGMOのサイトが日本語で評価結果を出力してくれるので確認してみた。
設定状況や信頼性がわかる!SSLチェックツール|GMOグローバルサイン
https://sslcheck.globalsign.com/ja/sslcheck?host=ivideon.com
ivideon.com - 107.23.32.135 - SSLチェック|SSLサーバ証明書ならグローバルサイン (旧日本ジオトラスト株式会社)
https://sslcheck.globalsign.com/ja/sslcheck?host=ivideon.com#107.23.32.135
ivideon.com - 54.246.206.110 - SSLチェック|SSLサーバ証明書ならグローバルサイン (旧日本ジオトラスト株式会社)
https://sslcheck.globalsign.com/ja/sslcheck?host=ivideon.com#54.246.206.110
脆弱性があるとか、何とかが設定されていないとか・・・いろいろ指摘されている。
どういう実装がされていて、どのような脅威に対して、どういう脆弱性があるから、どれくらい危ないんだ!というようなことを、残念がら私には判断する能力がない。
そこで銀行のSSL証明書と相対的に比べてみることにする。比較対象はみずほダイレクトで利用される「web.ib.mizuhobank.co.jp」にする。
web.ib.mizuhobank.co.jp - SSLチェック|SSLサーバ証明書ならグローバルサイン (旧日本ジオトラスト株式会社)
https://sslcheck.globalsign.com/ja/sslcheck?host=web.ib.mizuhobank.co.jp
web.ib.mizuhobank.co.jp - 210.130.209.40 - SSLチェック|SSLサーバ証明書ならグローバルサイン (旧日本ジオトラスト株式会社)
https://sslcheck.globalsign.com/ja/sslcheck?host=web.ib.mizuhobank.co.jp#210.130.209.40
みずほダイレクトのSSL証明書の評価はCだった。
意外や意外、SSL証明書の総合評価とはいえ、強固なセキュリティを要求される銀行よりも、iVideonの方が評価が高いとは。
モバイル側のiVideon Monitor と PC側のiVideonServer と PCのブラウザからiVideon.com への実際の接続先を確認
モバイル側のiVideon Monitorの実際の接続先
NoRootファイアーウォールというアプリを使って、iVideon Monitor の通信先を調べた。3つの接続を確認した。
- 216.52.203.23:443
- 54.84.244.165:443(ec2-54-84-244-165.compute-1.amazonaws.com)
- 216.52.203.13.443
上記3つの接続すべてにポート443を使用しているのでSSL接続だと思う。SSL接続なのでSSL証明書のチェックをしたところ、54.84.244.165 のみチェックができた。残りの2つはドメイン不明のためSSL証明書をチェックできなかった。
ec2-54-84-244-165.compute-1.amazonaws.com - SSLチェック|SSLサーバ証明書ならグローバルサイン (旧日本ジオトラスト株式会社)
https://sslcheck.globalsign.com/ja/sslcheck?host=ec2-54-84-244-165.compute-1.amazonaws.com
216.52.203.13、216.52.203.23のドメイン検索結果。Fully,inc San Fancisco とあるので広告・分析会社のようだ。
207.244.64.3にも接続している。Leaseweb USA, Inc. という会社のようだ。ホスティング、ストレージ、サーバレンタル系の会社?
iVideonはamazonのAWSを利用しているようにみえたので、ec2-54-84-244-165.compute-1.amazonaws.comは許可し、それ以外を拒否したら、iViden Monitor は接続できなくなった。
憶測ばかりで情けないが、iViden Monitor はよくわからないところに接続しているようだ。
PC側のiVideonServer の実際の接続先
TCPView v3.05を使用して iVideonServer の接続先を調べた。
207.244.64.2に接続している。Leaseweb USA, Inc. 。モバイルの閲覧ソフト iVideon Monitor もここに接続している。カメラ映像のストリーミングデータは Leaseweb USA, Inc.が提供するサーバ群に送信されている?
PCのブラウザからivideon.comに接続した場合の実際の接続先
TCPView v3.05を使用して iVideonServer の接続先を調べた。data-xata.com はロシアのレンタルサーバを提供しているっぽい。
data-xata.com - SSLチェック|SSLサーバ証明書ならグローバルサイン (旧日本ジオトラスト株式会社)
https://sslcheck.globalsign.com/ja/sslcheck?host=data-xata.com
最後に
すべて憶測の域だが、クラウドサービスで展開されているのだから、いろんなところに接続されるのも無理ないか。無料だから広告・分析系の会社にも何かしらのデータが送付されているようだし。
長くて憶測ばかりな記事を書いてしまったが、自分の家の映像がよくわからないところへ配信されているようなので、とても便利なサービスであるが、iVideonの利用はやめようかなと考えてしまう。
コメント
コメントを投稿