はじめに
NetApp Storage OSであるONTAPは、クラウドや仮想化環境以外にオンプレミス環境で利用するハードウェア上にInstallされる形で利用することができます。
ハードウェアであるという事は、Netwotkのポートやシリアルポート、USBポートなどが搭載された筐体を使用する事になりますが、本記事ではONTAPのハードウェア筐体でUSBポートを無効化する方法について記載します。
USBのポートを無効化する理由
一般的にはUSBの使用を禁止する主な理由は以下のようなセキュリティ関連の問題が考えられます。
- データ漏洩
- マルウェア感染
- 不正なソフトウェアのインストール
ONTAPでUSBメモリを接続するような場合は、OS UpgradeやFiremware Updateの実行時にHTTPSやFTPによるイメージ転送ではなく、USBメモリからコピーするような利用方法が考えられます。
それ以外にもCoreファイルの持ち出しの際にも利用できます。
過去の記事にあるリモートコード実行はできないといった内容やOSイメージの検証といった機能を搭載しているので一見安全のように見えますが、取得したlogの入ったUSBメモリをどこかに置き忘れてしまったり、内部犯の持ち出しまでは対応できないのでUSBメモリの使用を制限または禁止するポリシーを採用する事でより安全な運用を確立する事が可能になります。
なお、USBポート無効化はONTAP9.8以降でコマンドが用意されています。
何をしたい?できる?
USBポートの無効化
記事における環境情報
- ONTAP : 9.10.1
- オンプレミスのA220
設定手順
1. USBメモリを接続
機器の背面にあるUSBポートへUSBメモリを接続します。
Node2のみに接続した例です
2. 外部USBポートのステータス確認
Advanced Modeでの確認になりますが、
無効化がfalseとなっており、Node2については接続されている旨が確認できます
> set advanced
Warning: These advanced commands are potentially dangerous; use them only when directed to do so by NetApp personnel.
Do you want to continue? {y|n}: y
*> system node usb-ports show
Node Disabled? Disabled on Next Boot? Supported? Devices Connected to Ports
--------------------- --------- ---------------------- ---------- --------------------------
PS-A220-01 false false true false
PS-A220-02 false false true true
2 entries were displayed.
3. USBメモリに置いているImageの確認
USBメモリ上にあるImageファイルを確認する事ができます。
*> system image package external-device show -node PS-A220-02
Node Device Package File Name
------------------------ --------------- -------------------------------
PS-A220-02 usb0 9101P16_q_image.tgz
PS-A220-02 usb0 qual_devices.zip
2 entries were displayed.
4. USBメモリのImageを使ってDQPの更新を実施してみる
Disk Qualification Package(DQP)をダウンロードしてインストールしてみます。
DQPには、ONTAPが新しく認定されたすべてのドライブと連携するための適切なパラメータが含まれているので、使用しているONTAPバージョンのDQPに新しく認定されたドライブの情報が含まれていない場合、ONTAPにはドライブを適切に設定するための情報が無い状態になります。
# 適用前の状態を確認
*> storage dqp show
Node Package Date Version
---------------- ---------------- ---------
PS-A220-01 20210613 3.18
PS-A220-02 20210613 3.18
2 entries were displayed.
#Node2へ新しいDQPの適用
*> storage firmware download -node PS-A220-02 -package-url file://usb0/qual_devices.zip
Firmware download started.
Unpacking package contents.
Firmware downloaded.
# 適用前の状態を確認(Package Dateが変化している事を確認)
*> storage dqp show
Node Package Date Version
---------------- ---------------- ---------
PS-A220-01 20210613 3.18
PS-A220-02 20230501 3.18
5. USB ポートの無効化
設定後に再起動(or Takeover/Giveback)が必要です
*> system node usb-ports modify -node * -is-disabled-next-boot true
ALERT: A reboot is required for changes to take effect.
2 entries were modified.
5. Nodeの再起動
本記事ではTakeover/Givebackを実行して、1Nodeずつ設定を有効化します。
(Node毎に繰り返す)
> storage failover takeover -ofnode PS-A220-01
Warning: A takeover will be initiated. Once the partner node reboots, a giveback
will be automatically initiated. Do you want to continue?
{y|n}: y
> storage failover show
Takeover
Node Partner Possible State Description
-------------- -------------- -------- -------------------------------------
PS-A220-01 PS-A220-02 - Waiting for giveback
PS-A220-02 PS-A220-01 false In takeover, Auto giveback will be
initiated in 337 seconds
2 entries were displayed.
> storage failover giveback -ofnode PS-A220-01
Info: Run the storage failover show-giveback command to check giveback status.
6. USB ポートが無効化している事の確認
USBメモリを接続していても認識しない事を確認します。
> set advanced
Warning: These advanced commands are potentially dangerous; use them only when
directed to do so by NetApp personnel.
Do you want to continue? {y|n}: y
*> system node usb-ports show
Node Disabled? Disabled on Next Boot? Supported? Devices Connected to Ports
--------------------- --------- ---------------------- ---------- --------------------------
PS-A220-01 true true true false
PS-A220-02 true true true false
2 entries were displayed.
*> system image package external-device show -node PS-A220-02
There are no entries matching your query.
Error: PS-A220-02 ERROR: FAT|ext2 formatted USB mass storage not found (usb0).
Insert appropriately formatted device or try again
参考及びリンク
system node usb-ports show
system node usb-ports modify
How to prepare a USB drive to use in the ONTAP boot_recovery procedure