はじめに
IBM i(AS/400)環境におけるセキュリティ対策は、企業の情報資産を守るうえで非常に重要です。
本記事では、IBM公式ドキュメントをもとに代表的なセキュリティチェック項目をコマンドで確認、運用保守の活用について整理しました。
運用・保守担当者の業務の参考になれば幸いです。
✅ セキュリティチェックリスト概要
IBM公式ドキュメントを参考に、代表的なセキュリティチェック項目を洗い出しました。
さらに、セキュリティ対策の継続的な見直しに活用できるよう、運用保守を目的に各項目について「コマンドで確認可能かどうか」という観点で分類を行いました。
🔍 補足
- 「〇」:業務で活用しやすく、コマンドで確認可能
- 「●」:コマンドで確認できそうだが、業務活用には工夫が必要
- 「△」:環境や設定によって確認可能か不明
- 「×」:コマンドでは確認できず、物理的・外部的な対策が必要
次に、チェックリストの中から、**コマンドで確認でき、日々の運用業務に活用できる項目(分類:〇)**をピックアップしました。
✅ ピックアップ項目一覧(分類:〇)
| チェック項目 | 説明 |
|---|---|
| 不要なユーザー・プロファイルの削除(退職者など) | 不要なユーザー・プロファイル(退職者など)を削除する。 |
| デフォルトパスワードの使用状況確認 | ANZDFTPWD コマンドを使用してデフォルトパスワードの使用状況を確認する。 |
| 非活動ユーザーの無効化 | ANZPRFACT コマンドを使用して非活動ユーザーを無効化する。 |
| パスワードが *NONE になっているか確認 | グループ・プロファイルのパスワードが *NONE になっているか確認する。 |
| パスワードの長さ、複雑性、有効期限の設定 | パスワードの長さ、複雑性、有効期限を設定する。 |
ピックアップした内容を検証、活用のポイントをまとめました。
🔍 詳細解説
1. 不要なユーザー・プロファイルの削除
- 目的:不要なアカウントを削除することで、セキュリティリスクを低減。
-
確認方法:
DSPUSRPRFコマンドでユーザー一覧を取得し、退職者などのプロファイルを特定。 -
コマンド例:
DSPUSRPRF USRPRF(*ALL) OUTPUT(*OUTFILE) OUTFILE(QTEMP/FILENAME) - 補足:ユーザ「*ALL」の場合は、出力「OUTFILE」にする必要がある。
| 項目 | 説明 |
|---|---|
| UPUPRF / UPTEXT | 誰のプロファイルか、どのような目的で作成されたかを把握できます。 |
| UPPSOD | 最後に使用された日付から、現在も使用されているかを判断できます。 |
| UPSTAT | 状況が無効になっている場合、ロック状態または使用していない可能性があるため確認が必要です。 |
| UPCRTD | 古いプロファイルは不要な可能性があるため、見直し対象になります。 |
-
棚卸のすすめ
- ユーザプロファイルは、使用時には必須ですが、使われなくなると放置されがちです。
そのため、以下のような棚卸が必要となります: - 定期的なリスト出力:一定期間ごとにプロファイル一覧を出力し、使用状況を確認。
- 不要プロファイルの精査:使用されていないプロファイルを削除または無効化。
- 運用ルールの整備:新規作成・削除のルールを明確にし、属人化を防止。
2. デフォルトパスワードの使用状況確認
-
目的:初期パスワードのまま使用されているアカウントを把握し、必要に応じて変更を促す。
-
確認方法:
ANZDFTPWDコマンドでユーザーIDと同じパスワードを使用しているユーザー・プロファイルを特定。 -
コマンド例:
ANZDFTPWD -
補足:出力先のパラメタは無いが、スプールファイルが作成された(項目「ユーザー プロファイル、STATUS、PWDEXP、テキスト」の4つ)
-
プロファイルに対して取られる措置(OPTIONパラメータ)
| パラメタ | 内容(意訳) |
|---|---|
| *NONE | 何もしない(調査目的) |
| *DISABLE | ユーザー・プロファイルを無効にする(ユーザ無効) |
| *PWDEXP | パスワード満了にし、次回サインオン時にパスワード変更を表示(次回パスワード変更) |
3. 非活動ユーザーの無効化
-
目的:長期間使用されていないアカウントを無効化し、リスクを軽減
-
確認方法:
ANZPRFACTコマンドで非活動ユーザーを抽出。 -
コマンド例:
ANZPRFACT -
補足:すべてのパラメータを表示したが、ANZDFTPWDと同様に出力先を指定する処理ではなく、特に項目は増えない。
リストやファイルの出力は無く、指定された日数だけ非活動になった後に *DISABLED に設定されるため、実施は注意が必要。
4. パスワードが *NONE になっているか確認
- 目的:グループプロファイルなどにパスワードが設定されていないことを確認し、不正アクセスを防止。
-
補足:
DSPUSRPRFコマンドでパスワード属性を確認可能。
5. パスワードの長さ、複雑性、有効期限の設定
-
目的:強固なパスワードポリシーを設定し、アカウントの安全性を向上。
-
確認方法:
DSPSYSVALコマンドでシステム値を確認。- パスワードポリシーの確認には、以下のような複数のコマンドが存在します。それぞれの目的に応じて使い分けることで、効率的な運用が可能です。
-
コマンド例:
- パスワードの長さ:DSPSYSVAL SYSVAL(QPWDLVL)
- パスワードレベル:DSPSYSVAL SYSVAL(QPWDMINLEN)
- パスワードの有効期限:DSPSYSVAL SYSVAL(QMAXPWDAGE)
ユーザーごとのパスワード情報を確認:PRTUSRPRF TYPE(*PWDINFO)
-
対応例:
-
CHGSYSVALコマンドでQPWDLVL,QPWDMINLEN,QPWDEXPITVなどを設定。 - 社内ポリシーに基づいた定期変更ルールを策定。
-
おわりに
本記事では、IBM i セキュリティチェックリストの運用活用に向けて
IBM公式ドキュメントと実際の検証結果から活用ポイントを整理しました。
社内の情報資産を守るためにも本チェックリストを定期的な棚卸しや監査対応に活用できれば幸いです。
当記事の著作権はIBMに帰属します。
詳細はこちらを参照ください。
