ProScan製品に関するFAQとなります。
こちらに記載された情報で問題が解決しない場合は、問い合わせページからメールもしくはフォームにてお問い合わせ下さい。


ライセンス・一般的な問い合わせなど

基本的には、その製品に対する有効な期限内のライセンスをお持ちであれば、そのライセンスが有効な期間において製品が動作しなくなることはございません。

ただしProScanはアンチウィルス製品であり、新たなマルウェアへの対策のために定期的(通常は毎日)更新されるウィルス定義ファイル(VDF)と組合わせて動作致します。

このVDFはエンジン提供元よりリリースされますが、弊社では利用者にこのVDFを配信する前に、製品においてサポートされているエンジン並びにOS環境において、動作エラーや異常動作が見られないか検証を行って、こちらをパスした場合のみリリースするようにしております。「サポート期限が終了した製品バージョン」のProScanはこの事前検証の対象から外れるため、検証済みのVDFをご利用の場合であっても動作異常等が発生する可能性が無いとは断言できません。

さらに、それらの動作異常を含む事象・問題などについて弊社テクニカルサポートにお問い合わせを頂いた場合、その問題を解決する為に「バージョンアップを行って頂く」という事を、最終的な解決策として回答提示させて頂く場合がございますので、その旨ご了承下さい。

ProScanのインストールについて

c Expand All C Collapse All

ProScan for Power Systems(AIX)の導入に際しては、IBMが提供しているLinux互換のOSSパッケージである「AIX Toolbox for Open Source Software(以後Toolbox、https://www.ibm.com/support/pages/aix-toolbox-open-source-software-overview)」に含まれるGNU wget/GNU tarコマンドの事前導入を推奨しています。※1

※1:wgetについてはInternetから直接、もしくはローカル更新サーバから等のネットワーク経由の方法で、ウィルス定義ファイル(VDF)の更新を行う場合は導入が必須となります。GNU tarコマンドについては有効なパス上にコマンドが存在しない場合、ProScanのインストールスクリプトがラッパースクリプトを生成しますので必須ではありません。その場合インストーラ実行前のパッケージ展開の際に、tar+gz形式のアーカイブを展開処理する必要がございますので、「gzip -dc proscan-ibm-aix-6.0.6.X.ppc.tar.gz | tar -xvf- 」のように、AIX標準のコマンドの組み合わせで処理を行ってください。

Toolboxからは、Linux互換のパッケージ管理ソフト形式である「RPM(.rpm)」形式でパッケージのダウンロード、あるいは導入対象のサーバがインターネットからファイルをダウンロード出来る場合は、RPMを利用したパッケージ管理システムである「dnf」を使ったパッケージの導入・更新が可能です。

ToolboxによるOSSコマンド導入の方法、並びにパッケージ管理の方法については、上記ToolboxのWEBサイトから個別にRPMパッケージを導入するか、もしくはIBMのAIXドキュメントページ(AIX7.3版-https://www.ibm.com/docs/ja/aix/7.3?topic=aix-adding-open-source-applications-your-system、及びhttps://www.ibm.com/docs/ja/aix/7.3?topic=packaging-installing-variously-formatted-software-packages)をご参照下さい。

なお、Toolboxによって導入された各種コマンドは、AIXのOSSコマンドの導入パスである"/opt/freeware/bin"等に配置されます。OS標準のコマンドではなくToolboxによって導入されたコマンドを明示的に実行する場合はフルパス(wgetだったら"/opt/freeware/bin/wget"のように)で呼び出すようにして下さい。

必要ではありません。オフライン環境のサーバでもProScanを導入して頂くことが出来ます。

また、最新のウィルス定義ファイル(VDF)を手動でファイルコピーして所定のディレクトリに配置する事でVDFの更新を行うことも可能ですので、導入の際に弊社、もしくは代理店までその旨お知らせ下さい。

スキャンについて

c Expand All C Collapse All

OS側のユーザー毎のリソース制限("ulimit -a"にて表示可能なリソースのうち、datasizeやmemory)が影響している場合があります。

ProScan(AIX)のエンジンであるclamdは、複数のファイルが含まれるアーカイブをスキャンする際、1つのアーカイブにつき1つのスレッドを生成し、そのスレッドにおいてアーカイブを展開して中身を精査します。そのアーカイブの中に別のアーカイブが発見された場合、新たなアーカイブを担当する別のスレッドを生成して展開し……という形でアーカイブ内部のアーカイブファイルに対応する仕組みとなっています。

この為、特に.jarのように「1つのアーカイブの中に実行ファイルとライブラリアーカイブが複数含まれるようなファイル」の場合、そのファイルの見かけのサイズよりも遙かに多くのデータをメモリ上でスキャンする必要が生じる場合があります。MSIインストーラのような、内部に複数の実行ファイルやライブラリを格納した実行形式アーカイブでも、同じようにメモリ制限に達する場合があります。

もし頻繁にこのエラーが出るようでしたら、AIXのulimitコマンドのヘルプを参照するなどして、ProScanの実行されるユーザー(通常はroot)にて

ulimit -d 250000

(上記では250MBまで制限を緩和しています-ulimitでは-d/m/sオプションのメモリサイズ制限は単位がKBとなる点にご注意下さい)

のようにデータサイズのリミットを上げてエラーが解消されるかどうか確認して下さい。

(なお通常AIXの初期設定ではmemoryのulimitは制限無し"unlimited"なので問題は無いはずですが、"ulimit -a"コマンドを確認してmemoryにも制限が掛かっている事が判明した場合、memoryも同様に制限を緩和することを検討してください)

これらの設定を恒久的に行うには、 /etc/security/limits ファイルに記述されている設定を変更する必要があります。これらの記述についても前述のulimitのマニュアルに記載がありますのでご参照下さい。(こちらの設定値はulimitのメモリ関係制限の変更とは異なり、512バイトセクタ単位の指定である事にご注意下さい)

ProScan各製品に搭載された各種スキャナコマンド(procanfs)はスキャンの実施の必要がある度に呼び出されて実行されるコマンドとして設計されていますが、内部的にはスキャンエンジン(savapi/clamd)をサービスとして利用する事も可能になっています。

これは、スキャナコマンドの側でエンジンが「既にサービスとして実行されているかどうか」を判定し、既に実行中であればそのサービスを利用、未実行であればスキャナコマンド自身でエンジンを起動し、スキャン完了時に自身が起動したエンジンを停止させる、という処理を行う事で実現しています。

このため、エンジンが非常駐の状態で複数のスキャナコマンドが同時実行されるような状況(同時に複数のproscanfsを実行して並行処理を行う、先に起動したproscanfsが処理を終わらせる前に新たなprosanfsで処理を開始する)がありますと、並列で実行されている各々のスキャナコマンドがエンジンチェックを行い、処理完了時にも(自身が立ち上げたエンジンを利用している場合は)エンジン停止処理を行います。
エンジンを起動したスキャナコマンドが処理を完了したタイミングで、そのスキャナコマンドは自身が起動したエンジンを停止させますので、そのエンジンを利用していた他のスキャナコマンドが存在していた場合はそれらのコマンドは「scan engine abend」等のエンジン接続エラーにより停止致します。

これを回避する為にスキャンエンジンの手動起動/停止、もしくは常駐を行う必要があります。

製品付属のエンジンの起動/終了コマンド(/opt/proscan/bin/proscan [start/stop])を利用して「スキャン処理の実行前にエンジンを起動し、全ての処理が終わった後でエンジンを停止」させるようにして下さい。

例:ProScan(ClamAV版/Linux)にて、"/data1"と"/data2"の2つのエリアを同時にスキャンする際、処理開始前にエンジンを手動で起動し、完了後に停止させるシェルスクリプト)

#!/bin/sh
#あらかじめclamdエンジンを手動起動する
/opt/proscan/bin/proscan start

#スキャナによる処理を並列で実施-さらに多くのスキャンコマンドを並列実行する場合は、&で繋いでバックグラウンド処理にしたのち、waitで終了を待つ
/opt/proscan/bin/proscanfs /data1 &
/opt/proscan/bin/proscanfs /data2 &

wait

#全ての処理が完了した後、clamdエンジンを手動停止させる
/opt/proscan/bin/proscan stop

ProScanにおいてファイルがスキャン出来ない(scan resultにerrorとしてカウントされる)場合は、幾つかの原因が考えられます。

  1. OSのデバイスファイル/システムファイル等の特殊なファイルである
  2. データベースのデータファイル等、他のプロセスなどでロックが掛けられている
  3. ProScanのスキャナー(proscanfs)の実行ユーザーに、該当ファイルの読み取り権限が与えられていない

対象のファイルがどのようなファイルかを確認し、除外対象に加えるか、権限を適切に設定する等の対応を行って下さい。

なお、2に含まれる「データベース」のデータファイルにつきましては、ほとんどのDBベンダーはパフォーマンスや動作上の問題を回避するため、セキュリティソフトのスキャンから特定のファイルを除外するよう求めています。お使いのDB製品のマニュアルやサポート情報をご確認下さい。

ProScanのスキャナコマンドであるproscanfsでは、OSに対する優先度(nice値)を通常よりも下げて実行しています。

この為、他の常駐プロセスがほとんどない環境ではCPUを空いている分だけ使用しますが、より優先度の高いプロセスが実行されている場合はnice値の設定に応じて自動的にCPUリソースが低く割り当てられますので、他のプロセスへの影響は極力低くなるようになっています。

OSのrootユーザーはこのnice値を通常よりも上げ、優先度をより高く設定することが可能ですので、必要に応じてOSのniceコマンドを使って設定変更を行って下さい。

バージョンアップについて

管理ツールについて

c Expand All C Collapse All