Howto

SWUpdate を用いてUSB接続制御機能の設定を行う

この Howto では以下のことができます:

  • SWUpdateを用いて、Armadillo の USB 接続制御機能の設定を変更し、新たなデバイスの接続を許可する
  • SWUpdateを用いて、Armadillo の USB 接続制御機能を無効化する

概要

一部の製品において Armadillo Base OS v3.21.3-at.10 以降では、製品のセキュリティ向上のため、USB 接続制御機能がデフォルトで有効化されています。 デフォルトで接続が許可されている USB デバイスクラスは以下になります。

  • MassStorageクラスのデバイス
  • Hubクラスのデバイス
  • LTEモジュール(搭載している場合)

これらの設定は、Armadillo上でコマンドを実行することで変更することができますが、 本Howtoでは SWUpdate を用いて USB 接続制御機能の設定を変更する方法を紹介します。

USB 接続制御機能の詳細や、コマンドを実行する手順については、製品マニュアルをご参照ください。

手順

新たなUSBデバイスの接続を許可する

SWUpdateを用いて、接続を許可するUSBデバイスを追加する方法を紹介します。

接続を許可するUSBデバイスを追加する desc ファイルは usb_filter_allowlist.desc という名前で /usr/share/mkswu/examples にあります。 以下の手順で mkswu ディレクトリ上にコピーできます。

[ATDE ~]$ cd mkswu
[ATDE ~/mkswu]$ cp /usr/share/mkswu/examples/usb_filter_allowlist.desc ./

usb_filter_allowlist.desc が存在しない場合は、mkswuを最新版にアップデートしてください。

[ATDE ~]$ sudo apt update && sudo apt upgrade

usb_filter_allowlist.desc の内容を編集し、許可したいUSBデバイスの情報を記載します。 記載方法はファイル内のコメントを参照してください。

usb_filter_allowlist.desc から作成された SWU イメージをインストールすることで、記載した情報に合致するUSBデバイスの接続が許可されます。

SWU イメージの生成は以下のコマンドを実行してください。

[ATDE ~/mkswu]$ mkswu usb_filter_allowlist.desc
Enter pass phrase for /home/atmark/mkswu/swupdate.key:
usb_filter_allowlist.swu を作成しました。

usb_filter_allowlist.swu が生成されますので、ABOS Web など任意の方法で Armadillo にインストールしてください。

また、mkswu コマンドに複数のdescファイルを指定して、ひとつの SWU イメージに処理をまとめることも可能です。

量産時にアットマークテクノの工場出荷状態のソフトウェアに、追加ソフトウェアの差分のみを SWUpdate を用いて書き込むような運用をしている場合、以下の方法で SWU イメージを作成できます。

追加ソフトウェアを書き込むための desc ファイル(install_user_app.desc)と、 usb_filter_allowlist.descmkswu に両方指定することで、ひとつの SWU イメージ(install.swu)で追加ソフトウェアの書き込みと 許可するUSBデバイスの追加を行うことができます。

[ATDE ~]$ mkswu install_user_app.desc ~/mkswu/usb_filter_allowlist.desc -o install.swu

USB接続制御機能を無効化する

セキュリティ的に非推奨ではありますが、SWUpdateを用いてUSB接続制御機能を無効化する方法を紹介します。

USB 接続制御機能を無効化する desc ファイルは usb_filter_disable.desc という名前で /usr/share/mkswu/examples にあります。 以下の手順で mkswu ディレクトリ上にコピーできます。

[ATDE ~]$ cd mkswu
[ATDE ~/mkswu]$ cp /usr/share/mkswu/examples/usb_filter_disable.desc ./

usb_filter_disable.desc が存在しない場合は、mkswuを最新版にアップデートしてください。

[ATDE ~]$ sudo apt update && sudo apt upgrade

usb_filter_disable.desc から作成された SWU イメージをインストールすることで、インストールした Armadillo の USB 接続制御機能が無効化されます。

SWU イメージの生成は以下のコマンドを実行してください。

[ATDE ~/mkswu]$ mkswu usb_filter_disable.desc
Enter pass phrase for /home/atmark/mkswu/swupdate.key:
usb_filter_disable.swu を作成しました。

usb_filter_disable.swu が生成されますので、ABOS Web など任意の方法で Armadillo にインストールしてください。

また、mkswu コマンドに複数のdescファイルを指定して、ひとつの SWU イメージに処理をまとめることも可能です。

量産時にアットマークテクノの工場出荷状態のソフトウェアに、追加ソフトウェアの差分のみを SWUpdate を用いて書き込むような運用をしている場合、以下の方法で SWU イメージを作成できます。

追加ソフトウェアを書き込むための desc ファイル(install_user_app.desc)と、 usb_filter_disable.descmkswu に両方指定することで、ひとつの SWU イメージ(install.swu)で追加ソフトウェアの書き込みと USB 接続制御機能の無効化を行うことができます。

[ATDE ~]$ mkswu install_user_app.desc ~/mkswu/usb_filter_disable.desc -o install.swu