2022年7月19日
日本アイ・ビー・エム株式会社
IBM Power テクニカルセールス
澤田 英寿
IBM iは、最も安全なプラットフォームであると言われています。ただし、絶え間なく進化するセキュリティの脅威が存在する昨今の世界では、OSに追加の機能を組み込んでいく必要があります。また、安全なプラットフォームを継続していくためには、適切にIBM iのセキュリティ機能を使っていく必要があります。
下記の表は、近年のIBM iのセキュリティ関連の機能強化の状況です。
(上記の詳細は下記URLを参照)
https://www.ibm.com/support/pages/node/6150021
多くのセキュリティ機能は、IBM i 7.4や7.3でも使用できますが、IBM i 7.5は、出荷時の状態でより安全にするための機能を追加しているのが特徴です。
上記の表の項目のうち、IBM i 7.5セキュリティ強化のポイントについて解説しておきます。
SHA512 パスワード暗号化スキーム(QPWDLVL4)
IBM i 7.5には、新しいパスワードレベルが追加されました。これまでIBM iは、0から3のパスワードレベルをサポートしていましたが、IBM i 7.5にはパスワードレベル4が追加されました。パスワードレベル4は、最大128文字のパスワードをサポートし、パスワードにはより強力な暗号化方式(Password Based Key Derivation Function 2 (PBKDF2) with SHA2-512)が適用されます。システム値「QPWDLVL」の新しい値「4」で使用可能になります。
Navigator for iで「セキュリティ構成情報」でパスワードレベル4を表示してみると、下記のような解説があります。(このマシンでは3を使っています)
新しいNavigator for iのGUIは、セキュリティ機能を使い易く拡張しています。機能設定は、コマンドではなく、このGUIをご利用ください。
パスワードレベルの変更は、慎重に計画する必要があります。 パスワードレベルの変更の計画が適切でない場合、 システムでの操作が失敗したり、 システムにサインオンできなくなることがあります。
パスワードレベル4を利用する場合には、下記のマニュアルの項目をよく読んで検討してください。
https://ibm.biz/BdPsND
IBM i NetServer: 権限リストによるサーバー及び共有アクセスの制限
IBM i 7.5から、権限リスト(*AUTL)を割り当てることによって、NetServer及び、特定の共有へのユーザーアクセスを制限することが可能になりました。これにより、共有ファイルにアクセスできるユーザーをきめ細かく制御できます。これはランサムウェア攻撃からIFS(統合ファイルシステム)を保護するのに役立ちます。ランサムウェア攻撃からの防御については、iWorldの別ページに詳しく解説があるので、ぜひご覧ください。
https://ah109sxyjk.smartrelease.jp/column/product/ransome_and_ibmi
NetServerの設定については、マニュアルの下記の項目を読んで理解してください。
https://ibm.biz/BdPsNF
パスワードがパスワード規則を満たしていることを確認(QSYCHKPR)API
新しいパスワード適合確認 (QSYCHKPR) 用のAPI は、パスワードが、システム値に設定されたパスワード規則を満たしているかどうかを検査します。パスワード規則は、システム値 QPWDRQDDIF と QPWDRULES のいずれか、または以下のすべて (QPWDMINLEN、QPWDMAXLEN、QPWDLMTAJC、QPWDLMTCHR、QPWDLMTREP、および QPWDRQDDGT) で構成されます。ユーザーまたはパスワード管理ツールで API を使用して、値が会社によって設定されたパスワード規則を満たすかどうかを事前に判断できます。
IBM i サービスのCHECK_PASSWORDは、このAPIの代わりに使用可能です。
下記のように、IBM i サービスで、パスワードをチェックして、PASSWORD_VALIDがYESであれば、パスワードがルールを満たしています。
詳細については、下記のマニュアルを参照してください。
https://ibm.biz/BdPsNa
保守ツールのセキュリティ拡張
保守ツール・ユーザーID作成(CRTSSTUSR)、保守ツール・ユーザーIDの変更(CHGSSTUSR)、 およびSST機密保護属性の変更(CHGSSTSECA)が拡張されました。具体的には、SSTユーザープロファイルに、有効期限を設定して適用できるようになりました。
SST/DSTプロファイルでこれまで提供されてきた、8桁の「11111111」や「22222222」は削除されました。
SNMPv3のセキュリティの強化
IBM iの監視には、Navigator for iなど高機能なGUIでの監視機能が標準で使えるので、外部サーバーを使って監視されている方は少ないと思われます。もし外部サーバーでシステム監視をする場合には、OS標準のSNMPエージェントを使うことで、外部サーバーのSNMPマネジャーと連携した監視も可能です。IBM i 7.5ではこのSNMPv3のセキュリティ機能が強化されています。具体的には、SNMP エージェント、ローカル・トラップ・マネージャー、および SNMP マネージャー API に対して SNMPv3 のみを許可するように構成できます。また、ビューベースのアクセス制御モデル (VACM) ルールを定義することで、SNMPv3 によって返される情報を制限できるようになりました。
ここからは、上記の表に掲載されていないIBM i 7.5セキュリティの強化の主要な点について、述べていきます。IBM i 7.5では、システムの出荷時のパラメータを変更することで、様々なお客様の、システム全体のシステムのセキュティ強化を図っています。
システムセキュリティ・レベル20は使用禁止
セキュリティレベル20は、ユーザープロファイルとパスワードが必要ですが、それ以上のものはありません。セキュリティレベル20では、オブジェクトレベルの制御はなく、全てのユーザーが*ALLOBJのアクセスと同等の権限を持ち、システムは公開されたままになっています。セキュリティレベル30が、オブジェクトレベルの制御の最小レベルになりますが、IBMが現在出荷しているマシンのデフォルトのセキュリティレベルは40です。
セキュリティレベル20で設定されたシステムをリリースアップした場合は、引き続きセキュリティレベル20で実行できますが、新しく、セキュリティレベル30,40,50で導入した場合は、レベル20に戻すことはできません。
事前の計画を立てて、セキュリティレベル40または50に引き上げることをお勧めします。
ユーザープロファイル作成時のデフォルトのパスワードの変更
IBM i 7.4以前では、新しいユーザープロファイルが作成される時に、パスワード値は、他の値が割り当てられない場合、デフォルトで*USRPRFになります。パスワードが*USRPRFに設定されたままの場合、ユーザープロファイルのパスワードは、ユーザー名と同じに設定されます。これではセキュリティは脆弱になります。IBM i 7.5では、パスワードに、値を入力しない場合は、*NONEになります。機密保護管理者は、必ずユーザーに適切なパスワードを設定する必要があります。
サインオンの最大試行回数をユーザー毎に設定可能になる
IBM i 7.5より以前は、システム値(QMAXSIGN)により、不正なパスワードの試行回数が制御されていました。システムが、すべてのユーザーに同じ最大数のサインオンの試行回数を提供していました。IBM i 7.5では、ユーザープロファイル毎に最大サインオン試行回数(MAXSIGN)というパラメータを追加しました。ユーザー毎に、誤ったサインオンの試行回数を設定できます。
例えば一般ユーザーにはサインオン試行回数を多く設定し、管理者には低い回数を設定できます。
IBM i 7.5での監査ジャーナルのデータ表示の拡張
IBM i 7.4からのTRの機能拡張に引き続き、IBM i 7.5では、監査ジャーナルのデータ表示が簡単になりました。IBM iサービスを使うこと以外に、新しいNavigator for iを用いることで、監査ジャーナルが大変使いやすくなっています。例えば、パスワードの入力を失敗したユーザーの一覧を表示したい場合は、
- Navigator for iのセキュリティ(鍵のアイコン)の下から2番目の「Audit Journaling」を選択します。
- ジャーナル表示の設定画面で、「Detail View」かつ、PASSWORD(PW)を選択します。
- 下記のように、パスワードの入力に失敗したユーザーがリストされます。
これまで監査ジャーナルのデータ表示し、内容を理解するには、マニュアルを読み解く必要がありました。Navigator for iでは、システム管理者に使い易いインターフェイスに変わってきています。監査ジャーナルを、セキュリティの強化に活用してください。
システム提供オブジェクトに対するデフォルトの*PUBLIC権限の変更
IBM提供のシステム関連のオブジェクトについて、*PUBLIC権限を*CHANGEまたは*ALLから*USEに変更しました。二次言語ライブラリー(QSYS29xx)に存在するオブジェクトの場合、それらのオブジェクトの*PUBLIC権限も変更されます。この変更の影響を受けるオブジェクトのタイプと名前については下記の「プログラム資料説明書」の「オブジェクトの共通権限の変更」を参照してください。
https://ibm.biz/BdPs7x
最後に、IBM iのセキュリティの維持と向上のために、下記の4つの方策を提言します。
- IBM iを最新の状態に保つ
OSバージョン、テクノロジー・リフレッシュ、PTFレベルをなるべく最新にしましょう。 - IBM iのユーザーの権限を最小権限に
IBM i 7.3及び7.4で導入された権限の収集機能を使用し、必要な最低限の権限を調査しましょう。特に、NetServerや、NSFエクスポートなどIFS(統合ファイルシステム)を公開するときは注意が必要です。 - データの回復のテストと準備
完全に分離、およびセグメント化されたバックアップ方法と、文書化された計画をして、計画的に復元のテストをしましょう。 - 継続的な評価と改善
定期的に(IBMラボサービスなどの)社外のセキュリティ評価を受けて継続的な改善をしていきましょう。
(以上)