IBM i がセキュリティー的に最も安定したOS,プラットフォームであることは現代においてもゆるぎないと思われます。たとえば10年前であれば。「IBM i は基本的なセキュリティー設計を正しく設定しておけば最低限一連の脅威からプロテクトされます。(PTF適用は必須ではありません、可能な限り適用を検討ください。)」ということは一般的に問題無く通用する考え方だったと思います。
しかし、(現在でもウィルスその他深刻なセキュリティー侵害報告はゼロ件ですが、)昨今のセキュリティー事情を鑑みるに、たとえIBM i であっても10年前と同じ考え方は改めるべき時期に来ていると筆者は考えています。
IBM i のPTFの提供形態
IBM i のPTF(Program Temporary Fix)は以下の3つの形態で提供されます。
| どのような ものか? |
適用を検討する 一般的な場面 |
|
|---|---|---|
| 個別PTF | 個別の機能拡張やバグフィックス、脆弱性対応などを実現する単体のPTF |
|
| グループPTF | HIPER(重要度の高い障害)対応、セキュリティー対応、Db2 for i の機能拡張やバグフィックス、Java、HTTPサーバーなどの機能拡張、バグフィックス、のように特定のソフトウェアコンポーネントの拡張やフィックスを目的として、PTFを複数集積したPTF群 |
|
| 累積PTF (Cumulative PTF) |
グループPTFよりも広範囲により普遍的な(一般的に適用が推奨される)PTFを集積したPTF群 | ・年1回の予防保守を目的とした適用 |
長年IBM i のPTFは個別PTFと累積PTFの2つの提供形態だけでしたので、何か障害があった際や新規にハードウェアを追加する、といった場合以外には年間単位での累積PTF適用を計画すれば良い、という考え方が一般的でした。ただ、IBM i 7.xになりシステムが大規模・複雑化していくと累積PTFの考え方ではそぐわないPTF拡張が増えてきたため、データベース、Java、 HTTPサーバー(Webアプリケーション全般)、セキュリティー、のように対象機能を限定(特定)して集積したグループPTFが登場しました。
IBM i 7.6のグループPTFの更新頻度
一例として、直近のIBM i 7.6の主要なグループPTFの更新頻度を調べてみました。
| PTFグループ | PTFの説明 | おおよその 更新間隔 |
|
|---|---|---|---|
| SF99969 | GROUP HIPER |
重要障害等で適用が推奨されるPTF | 1ヶ月 |
| SF99968 | GROUP SECURITY |
重要なセキュリティー脆弱性対応等で適用が推奨されるPTF | 1ヶ月 |
| SF99967 | TECHNOLOGY REFRESH |
年2回更新が計画されているハードウェア関連のPTF | 6ヶ月 |
| SF99965 | JAVA | Java関連のPTF | 3ヶ月 |
| SF99962 | IBM HTTP SERVER FOR I |
IBM i上のHTTPサーバー用のPTF | 2ヶ月 |
| SF99960 | DB2 FOR IBM I |
データベース関連の適用が推奨されるPTF | 6ヶ月 |
| SF99760 | 累積 (CUMULATIVE) PTF PACKAGE |
多くのお客様の環境で適用が推奨されるPTF | 1年 |
グループPTFには機能拡張や新しいハードウェアに対応するためのドライバーのような拡張等も含まれていますが、セキュリティー的な拡張やパッチも含まれています。
今回、特に注視すべきはSF99968 グループセキュリティー です。その名の通りセキュリティー関連の重要なPTF群となっています。このグループセキュリティーの更新頻度はおよそ1か月程度で、かなり頻繁に提供されていることが分かります。
グループPTFに含まれる具体的なPTF番号や内容を確認する応報
グループセキュリティー(ほか)には複数のセキュリティー対応のPTFが含まれています。それらはグループPTFの情報サイトやグループPTFのカバーレターで具体的な内容を確認できます。以下はその確認方法の例です。
IBM i Support: Recommended fixes
https://www.ibm.com/support/pages/ibm-i-support-recommended-fixes
上記のページには以下のようなグループPTFの情報が掲載されています。
| IBM i 7.6 |
IBM i 7.5 |
IBM i 7.4 |
IBM i 7.3 |
IBM i 7.2 |
IBM i 7.1 |
|
|---|---|---|---|---|---|---|
| CUME Package | SF99760 | SF99750 | SF99740 | SF99730 | SF99720 | SF99710 |
| HIPER Group | SF99969 | SF99959 | SF99739 | SF99729 | SF99719 | SF99709 |
| Database Group | SF99960 | SF99950 | SF99704 | SF99703 | SF99702 | SF99701 |
| Java Group | SF99965 | SF99955 | SF99665 | SF99725 | SF99716 | SF99572 |
| HTTP Group | SF99962 | SF99952 | SF99662 | SF99722 | SF99713 | SF99368 |
| Security Group | SF99968 | SF99958 | SF99738 | SF99728 | SF99718 | SF99708 |
IBM i 7.6のグループセキュリティー(Security Group)を調べるには、 SF99968 をクリックします。なお、上記のページでは以下画像のようにOSバージョンに加えて特定の機能に該当するPTFを調べる機能も提供しています。
ここではSF99968 グループセキュリティーの詳細を調べてみます。SF99968のリンク(https://www.ibm.com/mysupport/s/fix-information/aDrKe000000PGqr/fi0134915?language=en_US)をクリックします。
このページがSF99968グループPTFのPTF説明(カバーレター)で、このグループPTFの概要説明と含まれているPTF番号やその修正内容を1つ1つ確認できます。上記の画面でPTF Group Level という値(例では 24)が表示されていますが、グループPTFのレベルが更新されるとこの値も加算されます。
この値はIBM i で DSPPTFGRP PTFGRP(SF99968) のようなコマンドで確認できます。
上記の5250画面ではグループPTF SF99968レベル21 が適用済みと分かります。ですので執筆時点の最新から3世代グループPTFが古い事がわかります。
1つ前のSF99968 グループセキュリティーの画面で個別のPTF説明を確認してみます。FI014774 (https://www.ibm.com/mysupport/s/fix-information/aDrgJ0000009b8PSAQ/fi0140774?language=en_US)のリンクを確認すると以下の様に表示されました。
このページの内容を簡単にご紹介します。
一番上のセクション
PTF SJ111022 に前提PTFがある場合、ここに表示されます。グループPTFの場合基本的にはこのグループPTF単独で適用できるのでこの欄はあまり注視しなくてよいでしょう。
また画像右側にはこのPTFの最終更新日付(2026/8/13)も記載されています。
次のセクションにはこのPTFの概要が書かれています。
上記のようにこのPTFで修正されるCVE(脆弱性報告)の情報が記載されています。
その下にはこのPTFを適用する際の注意事項がSPECIAL INSTRUCTIONSとして書かれています。
このPTFはtelnetサーバーの修正のようです。したがって上記記載の通り、PTF適用前にTELNETサーバージョブを停止してからPTF適用する事が必要です。PTF適用後、TELNETサーバージョブを再始動します。
その下はSUPERSEDS = このPTFで置換された以前のPTF番号が記載されています。
PTFの適用サイクルをどう考えるか?
PTF(グループPTF)には前述の通り
- 機能拡張
- 新しいハードウェアを使用するための前提モジュール
- セキュリティー関連の修正
に大別できると思います。
1. 機能拡張
機能拡張については、たとえばIBM Bob (Premium Package for i)のように従来なかった機能を使用したい、といった場合、IBM i にPTF(グループPTF)を適用する必要が発生します。IBM i はテクノロジーリフレッシュ、として機能拡張をこまめに提供する方式に変わって久しく様々な新しい機能をPTF(グループPTF)適用で使えるようにすることはメリットが大きいと言えそうです。
2. 新しいハードウェアを使用するための前提モジュール
新しいハードウェアについてはPower10サーバー以降では(新製品として登場した)NVMeの内蔵ストレージを使用したい場合にPTF適用が必要になるかもしれません。
以上2つはその必要性が発生した際にPTFを適用すればよい、という考え方ができます。
3. セキュリティー関連の修正
様々な考え方ができてしまうことの難しい面としては、③セキュリティー関連の修正があるように思います。
セキュリティー関連の修正適用は多くのユーザーでは企業・全社としてのポリシーがあるのではないでしょうか?その場合は、たとえば他のオープン系サーバーなどと同様のサイクルで適用する事が考えられます。ほんの2、3年前まではPTF適用時、アプリケーション等の稼働テストがたいへんなのでできるだけPTF適用は減らしたい、という考え方がほぼ中心だったと思いますが、最近ではこの考え方も変わってきています。
筆者が知るかぎりでも、昨今のAIによるセキュリティー脆弱性問題に対応するために、「最新のセキュリティーPTFをできる限り迅速に適用すること」とルールを改訂したIBM i ユーザーがいくつか出てきています。これは主にオープン系でそのようなニーズがあるため、IBM i もそれに倣ってセキュリティーPTFやグループハイパー、累積PTF、Db2 for i PTF等のグループPTFを適用しよう、というものです。
そうすると冒頭のように毎月PTFを適用する、という事になるわけですが、その際、「PTF適用時のアプリケーションなどの稼働検証をどこまでできるか」は、ある面犠牲にせざるを得ない、(それは別な方法で担保する)という考え方です。
IBM i は他のプラットフォームにくらべればCVE脆弱性件数は非常に少数ですが、AIが攻撃を仕掛けるツールとして利用できる以上、今後も同様であるという想定は危険かもしれません。PTF適用をこれまで通り手動で行う事もできますが、可能であれば自動化して人手での作業を減らしたい、というニーズも出てきています。IBMではこれを実現するマルチプラットフォームのソリューションの提供を開始しましたし、IBM i の標準機能(IBM i サービス)の拡張や、IBM Bobを組み合わせれば、PTF適用のフロー化・自動化は現実的に可能だと思われます。これを機会にPTF適用についても再考頂ければ幸いです。
関連情報
(PDF)IBM iの安定運用を支えるPTF適用のベストプラクティス [提供:日本IBM]
筆者
|
|
日本アイ・ビー・エム株式会社 多数の執筆記事を、iWorldに寄稿中。 |










