間違いだらけの備忘録

このページの内容は無保証でありこのページの内容によって直接、または間接に損害を受けられたとしても私は責任を取りません。

LocationFreePlayerの安全な使い方

勉強会資料


1.LocationFreePlayerとは

SonyからLocationFreePlayerBaseStasion(以下 LF-PK1)が発売されました。
これは家のTV,ビデオ(ハードディスクレコーダ)のAV信号をIPに変換し、リモートの
パソコン、PSPで見ることができる装置です。

またLF-PK1に赤外線リモコン機能が付いており一般的なビデオデッキ、
ハードディスクレコーダの信号はあらかじめプリセットされています。
メーカー名、機種を選択するだけでリモートからリモコンが使えます。

これの良いところは
ハードディスクレコーダの操作をリモートのパソコンから出来る
というところです。
ハードディスクレコーダの電源ON/OFF,再生、録画、番組予約(変更)、番組削除、
DVDへのコピー等リモコンで出来る操作は全て出来ます。

#一部操作についてはLocationFreePlayer搭載のリモコン機能では出来ませんが、
東芝RDシリーズについては(ソース非公開のいわゆる)フリーソフトで補えます。

#あと、DVDメディアの交換作業はできません 笑

ハードディスクレコーダは数百時間分の番組を録り貯めることができますが、
家でそんなに見る時間を確保できません。

一方外出、出張、旅行等で暇になってしまうことはよくあります。
そんなときに家のハードディスクレコーダの内容を消化できると幸せです。


2.標準の伝送経路

LF-PK1には、有線LAN(100BASE)インターフェイス無線LAN(11a/b/g)ステーション機能が有ります。
無線LANステーション機能はLF-PK1との通信のみ可能な機能です。
無線から有線LAN(およびその逆)へのルータ、ブリッジ機能は有りません。

インターネットへのLF-PK1の公開もサポートしています。
有線ネットワーク側にユニバーサルプラグアンドプレイ(UPnP)対応のルータ兼DHCPサーバが
接続されていれば、設定用Webインターフェイスからボタン一発で設定完了です。
#ということになっていましたが...詳しくは後述(3.4)

3.インターネット接続の内部動作

3.1

専用ダイナミックDNS LF-B1JP.MyNetAV.comに
example.LF-B1JP.MyNetAV.comといったようなホスト名に
外向けルータのIPアドレスが設定されます。

3.2

ルータにPort5021のポートフォワード設定が行われます。
つまり、ルータの5021portに接続するとLF-PK1の5021portに接続されます。

3.3

UPnPを使用せず、スタティックにIPアドレスの割り当て、ポートフォワード設定を
行うことが可能です。
ダイナミックDNSの登録はどうも一定時間置きに登録/更新に行っているようです。
#port番号は50XXの範囲で変更可能のようですが未評価です。

3.4

家のルータはバッファロー製のUPnP対応ルータですが、LF-PK1からの
UPnPがうまく働かず、UPnPが作動したとたんルータが再起動しました。
そのため、スタティックにIPアドレスを割り当て、ポートフォワード設定も
手動でおこないました。
#スタティックにIPアドレスを割り当てることは後述するssh経由接続にも
#必須なので結果的に意味はありました。

4.クライアント側ソフトについて

LocationFreePlayer(LFA-PC2)という有償ソフトウェア(\3,000)が必要です。
動作環境はWindows2000/XP
#PSPも対応していますが所有していないので省略
本体のLF-PK1にはLocationFreePlayerの体験版が付属しており、1ヶ月間は使用可能です。

LFA-PC2とLF-PK1の通信手段は当然の事ながら有線LAN(同一セグメント内)または
無線LAN,インターネット経由接続のいずれかとなります。
#今回無線LANは未評価

<インターネット経由接続時のルート>
PC-インターネット-ルータ-LF-PK1-ハードディスクレコーダ


5.接続設定について
基本的に同一セグメントにLocationFreePlayerをインストールした端末を接続し、
LocationFreePlayerから自動発見、接続(初回は相互登録)をおこないます。
この際にダイナミックDNSのホスト名を取得(キャッシュ)しています。

6.標準状態でのインターネット経由接続のセキュリティについて
インターネット経由接続の場合、基本的にLF-PK1の(変更も可能ですが)5021port
がルータのIPアドレスの5021portとして公開されます。

登録済みLocationFreePlayerがインターネット経由でしようとする場合は、
同一セグメント内に無いLF-PK1を指定すると自動で登録時にキャッシュ済みの
ダイナミックdnsの5021portに接続しに行きます。

7.標準状態でのセキュリティの不安点
Internet側から直接アクセスできるところにLF-PK1を設置するということに
なります。
LF-PK1にセキュリティホールがあり、それを攻撃された場合
ネットワーク内部にトロイの木馬を抱える状態になることが予想できます。

8.標準状態での制限事項
当然なんらかしらの暗号化がほしくなります。
しかし、接続先のアドレスはダイナミックDNSのアドレス
port番号は50XXに固定されているので、それを何とかする必要があります。

9.sshポートフォワード経由の接続にしてみよう(概要)

ここでLinuxBoxの出番です。
ssh経由で外からメンテナンスできるようになっているLinuxBoxが
どこのご家庭にも1台は有ると思います。
これを経由して接続させることにします


<インターネット経由直接接続時のルート>
PC(LocationFreePlayer)-インターネット
-(5021port)ルータ-(5021port)LF-PK1
-(AVケーブル)ハードディスクレコーダ


<インターネット経由ssh経由接続時のルート>
PC(LocationFreePlayer)-cygwin sshクライアント(port22)
-インターネット-(22port)ルータ-
-(22port)LinuxBox-(5021port)LF-PK1
-(AVケーブル)ハードディスクレコーダ


9.sshポートフォワード経由の接続にしてみよう(詳細)

9-1 ssh接続用設定を作成する

ベースステーションの選択ウィンドウで以下の様に設定します。
ニックネーム:lfssh(例)
ドメイン名またはIPアドレス:127.0.0.1
ポート番号:5021

9-2 ポートフォワード設定

cygwinsshクライアントを使用し、ポートフォワードの設定を行います。


Host example
HostName (家のルータの外向けIPまたはFQDN)
LocalForward 5021 (LF-PK1のローカルIPアドレス):5021

sshでportフォワード実行

$ ssh -C -N lftest@example

これでLocationFreePlayerがlfssh (127.0.0.1:5021)に
アクセスしようとすると、それはsshのポートフォワード機能により、
家のサーバのsshd経由で家のLF-PK1のローカルIPアドレス:5021に
転送されるようになります。

10.より安全な接続のために

このような場合、専用のユーザを作成し、/etc/passwdのログインシェルをcatに変えておくことで
ポートフォワードによる接続は出来ますが、LinuxBoxに対するシェルアクセスを防ぐことが出来るようになります。


lftest:x:1000:1000:lftest,,,:/home/lftest:/bin/cat

また、パスワード認証だと危険ですので公開鍵認証でssh version2を使用するようにしましょう。

11.もっとLocationFreeな接続のために(略)

12.さらにLocationFreeな接続のために(略)

13.ssh経由での接続時における帯域について

基本的にLocationFreePlayerの使用する帯域は300KB/s程度〜2MB/sで自動調節されます。
手動で使用帯域(=画質)を固定することもできます。
固定した場合、転送速度が間に合わないと、コマ送りや音とびしたり、そもそもつながらなく
なったりします。

ssh経由での接続にしたことにより使用帯域量が増加すると思われます。
しかし、実際に計測してみたところ、ほぼ使用量は変わりませんでした。

画質モード5(6段階中上から2番目の画質)
ssh使用無し:平均1010KB/s
ssh使用有り:平均1014KB/s

これによる画質劣化、音質劣化は感じられませんでした。

14.まとめ

LocationFreePlayerは便利ですが、セキュリティには不安があります。
LinuxBoxと組み合わせると安全かつ、よりLocationFreeに使用できます!

以上

このページにはhatena以外のサービスからのコンテンツが埋め込まれています。 hatenaによりGoogle AdSense 広告が埋め込まれています。