そのためカメラの動画を閲覧するためにはPCやスマホをスマモッチャーにWifi接続し直さないといけないので不便です。
さらに”Key”が設定されていないので誰でもアクセスし放題となり問題です。
ということでスマモッチャーのWifiアクセスポイント機能を停止し、自宅で使用している
Wifiルータへクライアント接続してみたいと思います。
[参考]
- https://twitter.com/isogame/status/1132664847462649856?s=20
- http://www.beax.net/diary/?date=20190602
スマモッチャーは起動直後にカードスロットにセットされたMicroSDカード内にある「debug_cmd.sh」を実行するようです。非公式modもこれを利用しています。
同じようにこれを利用してWifiルーターへの接続設定を追加します
Wifiアクセス設定手順
1.セキュリティーキーの暗号化
Wifiルーターに接続するためのキーを暗号化して設定する必要があります。LinuxのPCで、「wpk_passphrase」を使用し、接続したいWifiルーターのSSID・パスフレーズの暗号文を生成します。
下記コマンドの結果をコピーしておきます。
wpk_passphrase <対象のSSID> <パスフレーズ(Key)>
2.スマモッチャーにtelnetまたはsshで接続
PCから、「ssh root@<スマモッチゃーのIPアドレス>」等を実行します。3.設定ファイルの作成
設定ファイルを下記コマンドでSDカードにコピーします。cp /tmp/wpa_supplicant.conf /media/opt/
4.パスフレーズの追記
「vi」を使用し「wpa_supplicant.conf」に「wpk_passphrase」の結果を追記します。5.自動接続のためスクリプト作成
wifiアクセスポイントに接続するためのシェルスクリプト「connect_wifi.sh」をSDカード内に作成しました。touch /media/opt/connect_wifi.sh
chmod +x /media/opt/connect_wifi.sh
vi /media/opt/connect_wifi.sh
「connect_wifi.sh」の内容は以下のとおりです。
sleep 30s
/home/ap/stop-ap.sh
wpa_supplicant -B -iwlan0 -c /media/opt/wpa_supplicant.conf
ifconfig wlan0 192.168.1.70
ntpd -q -p 192.168.1.1
作成したこの「connect_wifi.sh」は非公式modの「debug_cmd.sh」から呼び出す方針です。
しかし、Wifiアクセスポイントを起動する「/home/ap/start-ap.sh」が一番最後に実行されるようなので、最初に30秒の待ち時間をもうけることでWifiアクセスポイント設定の後にWifi接続を実行します。
2行目の「stop-ap.sh」は実行しないとDHCPサーバーが起動したままなので、そのままWifiルーターに接続すると自宅内Lanでトラブルの元となります。
3行目でWifiルーターへ接続し、4行目でスマモッチャーのIPアドレスを設定しています。
デフォルトゲートウェイは指定していないため、LANより外のインターネットには接続できませんが、漏洩対策になるのでかえって良いと思います。
5行目ではついでにntpで時刻合わせの設定も追記しておきました。
6.Wifi接続実行の呼び出し設定
「debug_cmd.sh」に「connect_wiri.sh」を呼び出す行を追記します。非同期の並列実行させたいので「&」を付けます。スマモッチャーを起動したままssh経由で「debug_cmd.sh」を編集しても反映されなかったので別のLinuxノートPCで作業しました。
vi /media/SD-Card/debug_cmd.sh
以下を最終行に追記します
/media/opt/connect_wifi.sh &
概念的には以下のようなプロセスで設定されるのでスマモッチャーの起動順序による制限を回避してWifiアクセス設定することを狙っています。
- スマモッチャー起動後「debug_cmd.sh」が実行される
- 「debug_cmd.sh」から「connect_wiri.sh」を非同期で呼び出す
- 「connect_wiri.sh」の実行を「sleep 30」で一時停止しておく
- スマモッチャーの起動プロセスが進行する。その中でWifiアクセスポイントの起動が行われる
- 非同期で実行されながら30秒停止していた 「connect_wiri.sh」の残りの処理を実行し、Wifiアクセスポイントを停止してWifiクライアントとして接続実行する。
以上の設定をしたMicroSDカードをセットしたスマモッチャーを起動すると、Wifiルーターに接続され、自宅LAN内経由で接続することだできます。 Wifiルーターに接続するためのスクリプトはMicroSDカード内に保存しているため、カードを挿入しないで起動するとノーマルの状態で起動するのでスマートだと思います。
0 件のコメント:
コメントを投稿