お勉強:Windows - HFS 導入メモ
これもひとつのホームクラウドである。
初稿:2016年9月23日 最終更新:2017-04-22
かつては出先でオナニーするのに抽出した濡れ場を PSP にぶちこんでオカズにしていた。そのおこぼれをアイドル画像板の濡れ場スレにうpしていたのがすべての始まりだった。
HFS で快適リモートオナニー
10年の時を超え、スマホがすっかり浸透し、モバイル回線の高速化も著しく、わしのインフラもギガビットアクセスとなり、手持ちのポエムは 20TB を超えた。ここに至り、いちいちオカズを持ち歩くよりも自宅環境をクラウド化してリモート鑑賞できるようにするのが賢いやり方ではないのか?と気がついたのじゃ!
HFS とは何ぞや?
HTTP File Server は Massimo Melina 氏の手によるブラウザをインターフェイスとした仮想ファイルシステムである。何がよいって導入も設定も日本語化もめちゃくちゃカンタンなこと。クライアントもブラウザなので FTP のようにソフトが必要になることもない。唯一の難点は単体で HTTPS に対応していないことくらいか(パケットリピータ等を用いた SSL 化は可能だが導入ハードルが一気に上がってメリットが薄れる)。
どうすればリモートオナニーできるのか?
手順は次の通り。
- hfs.exe をダウンロードする
- hfs.exe を任意のフォルダに移動する
- 必要なら wwwcfe 氏の日本語化パッチを適用する
- HFS を起動する
- Expert mode に移行しオカズをぶち込んでるフォルダを HFS にマウントする
- マウントしたフォルダに HFS でアクセス権を設定する
- HFS の HTML テンプレートにありさね (id:arisane)氏のソースを仕込む(これがキモ
- FQDN でアクセスできるよう DiCE なりでダイナミック DNS を仕込む
- ルータ越しならポート転送をかけておく
- 検証(近所の公園のトイレで全裸となり心ゆくまでオナニー)
参考: mirror HFS ver 2.3i ( Build 297 ) / 日本語化パッチ 2.3c
作業メモ
執筆時点の最新バージョンは 2.3i だけど適用する日本語化パッチは 2.3c でイケる。
- ダウンロードされた hfs.exe は書庫ではなくまんま実行ファイルのバイナリ。ダウンロードした場所で実行するとそこに設定ファイルやら何やらが作成されてしまうので、“ C:\Tools\HFS\ ”なりのフォルダを用意してやったほうがよい。
- 日本語化パッチは単なる言語ファイルなので hfs.exe と同じフォルダに放り込んでやるだけで勝手に日本語化される(拡張子の前のファイル名が実行ファイルと揃ってればよい)。
- モノがモノなので、スタートアップで自動起動とかはさせないほうがよいと思われ。
- HTML テンプレートは hfs.tpl 、ソースをいぢる際は UTF-8 で保存すること。
- アクセス権に使用するアカウントは OS のログインアカウントとは別に HFS 独自のものとなる。またグループ管理も可能なので詳細なアクセス権は Admin / User / Guest といったグループで設定し、ログインに使用するユーザーを適宜グループのメンバーに割り振るのがよい(自分しか使わないのであれば 特権ユーザーをひとつ用意するだけでもよい)。
- ダイナミック DNS の設定も備えてるけど、DiCE とか使うほうが潰しが利いていいと思う。特に、独自ドメイン持ってる場合は。
- マウントするフォルダは仮想フォルダと物理フォルダを選べるが、仮想フォルダに物理フォルダを入れるのが見通しよいと思われ(物理フォルダのほうが転送処理は速い)。
完成図
グフフ...
ローカルからアクセスするときは“ http://localhost:ポート番号/ ”な。ポート番号は 80 以外にしとくほうがええじゃろ( 80 や 8080 が開いてるとアクセス拒否するサイトもたまにあるし)。あと グローバルアドレスからのアクセスを有効にしとく必要がある。手動で検索してもよいが、“絶えず最良のアドレスをチェック”しとけば勝手にグローバルアドレスを探してくれるよ。
“自己テスト”では WAN 側からのアクセスが可能かチェックできるけど、FQDN で利用可能かどうかは自分で確認するしかない。
AUDIO ないし VIDEO をクリックするとオンライン再生開始。
再生画面はこんな感じ。コントロールもシンプルで邪魔にならない。
雑感
HFS 自体はけっこう前から運用していたのだけれども、エクスプローラ感覚で使えるわけじゃないし、出先でトラブったときローカルのリソースにアクセスする緊急手段程度だった。先日たまたま前述のありさね氏のブログを拝見、適用したところ各段に使い勝手が向上したのだ。この場を借りて感謝申し上げる。
ポイントは HTML5 で追加された AUDIO 要素と VIDEO 要素で、これらがサポートしていないフォーマットやコーデックはオンライン再生できない。また MP4 ファイルのプログレッシブ再生は moov ATOM ~ファイル内のインデックス情報~がコンテナの先頭に配置されている必要がある(たいていのエンコーダーのデフォルトはそうなっていない)。そのほかビットレートが高すぎると転送が追い付かなかったり端末によっては処理負荷に耐え切れなかったりで、サポートファイルであっても快適に再生できるとは限らないのだが、それでもわざわざダウンロードしてプレイヤーを起動するのに比べたら雲泥の差だ。
moov ATOM の配置換えは MP4 FastStart ほかツールで無劣化処理できるからいちいち再エンコードする必要はない。
セキュリティホールとなる可能性があるので闇雲に導入すりゃいいってもんじゃない。ちゃんとアクセス権(ユーザー&パスワード)設定しないとザルだし、何より HTTP 通信なので認証情報もプレーンテキストでやりとりされるから、理想は常時稼働させとくのではなく、必要に応じ リモートアクセス VPN などを通じて起動するのがよいかと(併せて利用可能な IP アドレスを接続する端末のアドレスに限定するとなおよし)。それ以上こだわるなら nginx なりでまともな HTTP Server 立ててやるべき。マシンも別に用意して。
あとオナニーする場所間違えんなよ。
そんなわけで、自宅クラウド化万歳。リモートアクセス VPN も仕込んだのだが、それはまた別の機会に。