2011年07月26日

Xperia acro やら FONの無線設定やら

おひさしぶりですー

あくろにしましたー



ワンセグ、おさいふけーたい、フラッシュ、赤外線通信、というとこでしょうか。
一番の目的はsubsonicで作ってるメディアサーバに動画用意してフラッシュ経由で閲覧。
subsonicのトランスコード設定はデフォルトで問題なく、ほとんどの形式の動画をsubsonic経由でacroから閲覧出来ました。快適ですね!

まだタイムシーク出来ないっぽいんだけどちょっと調整すればいいのかも。
最近ではnamarecoでにこにこ生放送を録画→録画先のフォルダを予めsubsonicコントロールパネルから追加しといて、出先で生放送見逃した録画ファイルを見たりしてまーす。

将来的にはUSB接続でTS抜きやれるあやしー物体とBカスカードを準備→外出先からacroで録画予約→TSファイルをsubsonic管理フォルダに録画保存→acroで閲覧。

な環境を作りたいと思います。はい。
TSトランスコーディングでこけなければいいですねーPC性能的に。

あ、それでroot化してるFONとacro最初wifiでうまく繋がりませんでしたが、

wifi-setting.jpg
のように、暗号化設定を変更すればOKとなりました。

同じ環境にしてる人レアでしょうが参考になりましたら是非。
普通にwepとかに落としてもだめ?分かりません。

それからconnectbotの公開鍵作成方法も以前のxperiaと同様の方法でやるとなぜかエラーで繋がりませんので、
puttyとかから公開鍵をopenssh形式でエクスポートしてacroに取り込んじゃって下さい。
このほうが確実でした。

じゃまたTV環境整ったら書きにきたいと思います。
posted by ぶに at 18:19| 広島 曇り| Comment(0) | TrackBack(0) | Xperia | このブログの読者になる | 更新情報をチェックする

2010年05月11日

XperiaからFONを経由し、Windowsをリモート起動、おまけにシャットダウンまでさせてみた

あ、どもー。よく雨降りましたー

えと前回の記事にてXperiaから覗けるリモートジュークボックスサーバを
Windows+subsonicで構築しました。

今回は課題の一つだった、屋外からxperiaを使ってこのメディアサーバの電源を入れるとこを実装しようと思います。
シャットダウンまでやっちゃいました。

設定してしまえばなんという事もないわけですが、
今回はネットワーク系に加え、かなりUNIXなシェルも触ることになりますので、
敏感肌なあなたでしたら
「ほぉ、こんなことも出来るんだ、ふーん・・・」
みたく、つまみ食い程度で眺めてクダサイ(ちょ


まずPC側ですが、LAN上に特殊なパケットを流して電源をリモートで起動させるWake On Lanというのを設定して終わり、ですです。

いろんなサイトで説明がありますのでここは省略。
流れはBIOSでWake On Lan系のサービスを有効にし、
ワイヤレスデバイスの設定をデバイスマネージャからやるかんじ。
誤動作防止の為、マウス、キーボードその他からの電源レジュームを禁止しておくとよいです。

↑の設定がきちんと出来ていれば、
LAN内の他の端末からはWOLに対応したソフト等で起動出来るようになります。

問題なのはインターネット側からのルータを経由した電源投入。
マシンを起こす為にMagicPacketという特殊なパケットを
眠っているPCに確実に送る必要があるんですね。
最近のルータであれば問題なくこのあたり設定が可能なのです。

ところが! 我が家のルータは性格が律儀で有名なCTU様なのです。
まー癖がある、を通り越してほぼ「つかえn」

CTU単体ではインターネット外部からWOLの実現は不可能なんです。

という事で、以前から自宅内で動作していたFONに目をつけました。


んでこっからが一応手順?

まず、freeWLANを利用して
FONをちょこっと改造します。あくまで自己責任です、ええ。

freeWLANに関するドキュメントは
http://fon-wiki.maniado.com/index.php?FreeWLAN
http://wiki.fon.com/wiki/FreeWLAN/ja
とかを参考に。

物理LANと無線LANをブリッジ接続出来るようになったり、WOLの機能が使えるようになる優れもの。

導入の流れは
http://dex.qp.land.to/pukiwiki/index.php?Memo/FreeWLAN
ここが詳しい。
リビジョン戻してssh使えるようにして、アップデート、ですね。

補足として、freeWLANをインストールする際のスクリプトが
バージョン0.9.6aで固定っぽいので、
wikiのファイルをそのまま使ってしまうとインストール失敗します。
http://addons.freewlan.info/installer/addons-0.9.6_full.tar.gz
をDLしてきて、名前を
addons-0.9.6a_full.tar.gz
に変えてからスクリプトまわすといいです。

FONの改造がうまくいきましたら。
管理画面がこんな感じに
freewlan01.jpg

とりあえず日本語化とかしたい方はこちら
http://w1.oroti.org/~ant/fwljp/

ブリッジ接続しておくと、FONの管理が有線LANから行えるのでおすすめです。
じゃ次。

ばーじょんあっぷしたFONさんにsshでログインします。
ログインIDはroot、パスワードはWEB管理画面のパスワードです。
#最初はadminかも

ログイン後にパスの通っているフォルダ
/bin
とかでいいですね、こちらにリモートPCの起動スクリプトを作ります。

vi /bin/up

とかで。

で、この中身として以下の一行

wol -i 255.255.255.255 起動させたいPCのMACアドレス

MACアドレスは
00:AA:BB・・・こんなのです。
ipconfig /allとかで物理LANインターフェースのMACアドレスが調べられますね。


次に、作成したスクリプトに実行権限を与えます。
chmod 700 /bin/up


次はXperiaのマーケットで高性能sshクライアントの
ConnectBot
をインストールします。

起動後、下のウィンドウ
freewlan02.jpg

のところに、この形式を守ってFONのアドレスを入力。

root@FONのIP:22
パスワードはFONの管理パスワードで。

これでXperiaからFONにsshログインできますので
up
と打てば指定したWindows端末が起動します。WOLの設定完璧なら。

試しに起動してるか、テストしておくとよいでしょう。

#FONのwebインターフェースごりごりいじるのも考えましたが
#セキュリティ的な事とかめんd(ry事とか考慮してこの形に・・

んでは次。sshのセキュリティを確保します。

このままrootでパスワードログインをさせるのは
いろーんな意味でコワイのです。

まず、公開鍵の設定をしていきます。

Xperia側で対の鍵を作ります。
http://www.yuriko.net/arc/2009/10/27/connectbot/
が参考になりますので、DSAで作ります。
パスフレーズはまーなしでも。のほうがXperiaからだと楽です。

作った公開鍵をメール等でPCに送ります。

送られてきた文字列

ssh-dsa AA・・・とか書いてあるものをすべてクリップボードにコピー。

PCのsshクライアントを利用してFONにログインし、
cd /etc/dropbear
に移動。

vi authorized_keys

とでもしてファイルを作成、クリップボードの内容をペーストします。
chmod 0600 authorized_keys
として属性変更、セキュリティ対策。

このへんは公式のヘルプ(英語)が詳しくて参考になります
http://nuwiki.openwrt.org/oldwiki/DropbearPublicKeyAuthenticationHowto

これでXperia側から、作成した鍵情報を使ってログインするように
EditHostのところから設定します。

PC側のsshクライアントでも同様に対の鍵を作っておくと楽です。
上のヘルプには
You can repeat this step with every new public key. Each key is appended to the

/etc/dropbear/authorized_keys

file.

とあるので、putty等で対の鍵を作って公開鍵の情報をペーストし、
authorized_keysに追記する感じですね。
cat >> で流し込むか、鍵と鍵の文字列の間がきちんと改行されていればおK。
かならずPCのsshクライアントで鍵を使ったログインが出来るようになっている事を確認してクダサイ。


で、次重要な設定。
FONへの「パスワードログインを禁止」します。
順当にfreeWLANを構築した場合、
/etc/init.d/以下に

S50dropbear

というファイルが出来ているはずです。
dropbearというのがsshサーバの事で、この起動スクリプトを編集します。

vi S50dropbear

case $1 in
start)

というところに
/usr/sbin/dropbear
とか
/usr/sbin/dropbear -p 22 -p $ssh_port

とかsshサーバプログラム本体を呼び出すところがあるので、ここを

/usr/sbin/dropbear -s

/usr/sbin/dropbear -s -p 22 -p $ssh_port

という風に編集して保存、終了。
一度FONを再起動
reboot
します。-sはパスワードログインを禁止するオプションです。

このへんは
http://mizupc8.bio.mie-u.ac.jp/pukiwiki/index.php?OpenWrt/dropbear
が参考になりました。


再起動後、PC等から普通にssh、ログインユーザとしてrootとすると、

freewlan03.jpg

こんなメッセージが出てパスワードログイン出来なくなっていればおK。

以降は公開鍵を使ったログインしか出来ないようになります。
#鍵にパスフレーズを設けなかった場合はXperiaからサーバを選択するだけでsshログインでき、非常にスムーズになります!

#鍵オトサナイデネ

ここまでセキュリティを強化したらCTU管理画面にログインし、
外部ポート22へのアクセスをFONにポートフォワード設定します。

CTUは相変わらず律儀、というかアレなんで、
CTUでDHCPを稼働させ、MACアドレスを指定してIPを払い出しするように
設定を行っていないとうまくフォワード出来ないのでこのようにします。

FONのweb管理画面でInternetConnectionをDHCPにしときます。
このあたりは環境依存な話で。

んで、最後。ついでにシャットダウンも実現しときましょう。

FONからWindows7をシャットダウンするには
WindowsにTelnetサーバを構築します。
http://axela5004.blog74.fc2.com/blog-entry-422.html
ファイアウォールの設定のところで、接続許可するIPアドレスとして
ローカルLANのセグメント全体か、FONのアドレスのみ、とかにしておきましょう。

再びFONのsshコンソールからの作業。

対話型のプログラムをスクリプト化する為に
expectを導入します。

zenさんという方が若干内部バージョンが違うっぽいですが
FON用のパッケージを作って下さっているので(感謝!)

http://ugokeba.seesaa.net/article/128341609.html

ここを参考にして、
http://kzen.my-sv.net/fon-ipk/
ここから
tcl_8.4.19_mips.ipk

expect_5.43_mips.ipk
をとってきて、tcl→expectの順番でインストールします。

$ cd /tmp
$ wget http://kzen.my-sv.net/fon-ipk/PACKAGE FILE NAME
$ ipkg install PACKAGE FILE NAME

このインストール作業は結構時間かかります。
途中Timeoutとかしてる場合があり、
/tmpの中身が揮発?している可能性もあるので、
DLし直して根気よく再セットアップで。

expectが無事インストールされるとスクリプトを作っていきます。

/bin/down
とかでいいでしょう。

vi /bin/down

#!/bin/expect

set timeout 10
spawn telnet 落としたいマシンのIPアドレス
expect "login: "
send -- "ユーザ名\r"
expect "password: "
send -- "パスワード\r"
expect "C:\Users\ユーザ名>"
send -- "shutdown /s\r"
expect eof

上記を保存。
パスワードをテキストファイルに直接書いてるので
ユーザおよびパスワードの扱いには注意で。
このスクリプトの意味は、

「Windows7にてるねっとして、loginって聞いてきたらユーザ名返して、ぱすわーど?って聞いてきたらパスワード返して、
DOSのプロンプトが帰ってきたらシャットダウンコマンドを実行して
ログアウトしてね」

という感じです。後は同様に

chmod 700
で実行権限付与。

ハイ、もう脳バーンになりそうな程行程長かったですが、
ここまで出来れば

XperiaでFONにsshログイン(公開鍵仕様、パスワード無しで簡単ワンクリックログイン(はぁと))
upでメディアサーバ(Windows7)をWOLで起動
downでメディアサーバにTelnetでシャットダウン

が実現出来ます。。。ながっ

作っちゃえば多分専用ブラウザとか起動してFONのwebインターフェースつつくより数段楽だと思いますので、環境ある方は是非チャレンジ!
posted by ぶに at 00:54| 広島 雨| Comment(2) | TrackBack(0) | インターネット関連 | このブログの読者になる | 更新情報をチェックする

2010年05月05日

subsonicとdropboxで作る高性能リモートメディアサーバ

ソニエリさんのxperiaで遊ぶ毎日でございます。
というか、お久しぶりでございまs

やりたかった事は単純に。

○車で移動中に自宅に溜め込んでる音楽をリモート再生

んでいろいろ調べると、以下の事も出来るように。

○xperiaから音楽を自宅メディアサーバにアップロード
○自宅メディアサーバに保管している音楽を個別に
知り合いに手渡す(若干きな臭いのはおいといt

あと、装備を整えれば出来る事が

○外出時、外からメディアサーバ用PCの電源を投入
○録画した地デジをxperiaに配信


あ、とりあえず音質とか超重視する方は無縁な話で、
こだわる方はきちんとCDとかで聞いてくだs
#自分も一番好きなやつだけは高音質で聞いてまs

で。まずメディアサーバの構築ですが。
windows7HOMEな感じで。


subsonic

JAVAで動作してるらしいホームメディアサーバ構築ソフトです。

まーここにいたるまでにXAMP環境でampache建てたりとかはまりましたが、subsonicで終了。
とにかく分かりやすくサーバーがすぐに構築出来ます。
ソフトを普通にインストールする感覚でOKです。

メリットとしては、フォルダ構成のまま管理できる、
日本語(というかつーばいと文字)のフォルダ、ファイル名でも化けない。とかいろいろです。

問題がひとつあるとすれば、ID3のタグの話。
中で使われている文字コードを統一しないと日本語がばけたりします。

ID3v2のバージョンをv2.3
文字エンコードをUTF-16に全て固定しておけば問題なく表示されます。
UTF-8のほーが、とか思いましたが、iPodやらいろいろ考慮するとこれだそうです。

で、たくさんある音楽ファイルのタグの文字コードを一括で変換するには、
Super Tag Editerの後継の

STEP

これでOK。
一度にタグの文字コードかえるには、
「フォルダを選んで」
変換→でOK。ファイルを全選択しても一番下のファイルしか変更出来ません。。これはまった。


んで、xperia側でマーケットからsubsonicをDL。

接続設定で終わりです。
3G回線用と、Wifi用の設定を分け持ったり出来ます。

車内から3G回線経由で見事に聞けます。
高速道路でも問題なく!

外部から自宅にアクセスする場合、直IPだとかわるケースもあるので、
dyndnsとかで名前を適当につけちゃったほうがよいです。

あと、開放するポートはDLNAと同じポートとか覚えやすくていいかも。


IP変更通知にはDiCEとかを使いましょう。

んで次。

xperiaからの音楽データアップロードの為、
dropboxっちゅーオンラインファイルストレージサービスを利用します。

subsonicを建てたPCでdropboxをインストール。
ポイントはsubsonicに認識させているメディアフォルダ内部に
shareポイントを作ることです。

んでxperiaでもマーケットにdropboxアプリが純正で登場したっぽいのでこれをDL。

これでxperiaで取った音声データや動画、音楽なんかを直接自宅のメディアサーバにアップロード出来ます。
もちろんxperia側へダウンロードも可能。

初期だとdropboxのストレージは2GBまで、とか制限があるので、溜め込んだファイルを適宜別のフォルダ(subsonic管理配下の)移動するか、ファイルの更新日時とかを見張ってmoveするようなスクリプトを実行、とかで回避します。フォルダの名前はrecently-addedとかでいいんじゃないでしょうk。

んで、これらのデータを知り合いに聞いてもらう場合には、
xperiaをサーバにするアプリServersManを利用します。

ServersManリンクをE-mail送信とか出来ますので、
subsonic経由でメディアサーバにアクセスし、楽曲を一旦xperiaに
保存。ServersManを起動。
知人にURLを送りつけて、xperiaに取りにこさせる、という流れです。


後は外からメディアサーバの電源を投入、ですが、
NTTな光プレミアムな、CTU、という感じですのでこれではNGです。

外からブロードキャストをつっつけるようなルータをCTU配下に装備、
PPPoEスルーな感じで実現は可能。

最後に地デジの件。

もともとBootTimerで録画予約すると自動的に電源が入って録画、
終わればシャットダウン、な環境ではあるのですが、
録画したPCでしか再生出来ない状況。

これに関してはTS抜き可能な(きなくさい!アレでごにょごにょすれば、
xperiaからの再生もいけるんではないかな、と。

と、とりとめもない、備忘録的なエントリですみませn補足:subsonic構築について
posted by ぶに at 23:41| 広島 | Comment(0) | TrackBack(0) | インターネット関連 | このブログの読者になる | 更新情報をチェックする

2010年04月22日

2010年04月21日のつぶやき

buni / buni
mixiボイス関連のツール、過去ログURL変更されて全滅やな・・・どこまで閉鎖的なんだ。。 . at 04/21 11:57


buni / buni
2010年04月20日のつぶやき | http://buni.seesaa.net/article/147198228.html at 04/21 02:52

posted by ぶに at 00:15| 広島 曇り| Comment(0) | TrackBack(0) | インターネット関連 | このブログの読者になる | 更新情報をチェックする