LIFERAY PLATINUM SERVICE PARTNER

aegif

サイト内リンク

技術情報

機能

LiferayのDocuments and Mediaポートレットでウイルススキャンを行う

※ 本記事はLiferay 6.2の記事です。

今回はLiferayのDocuments and Mediaポートレットでウイルススキャンを行う方法についてお話ししたいと思います。アップロードされたファイルのウイルスチェックというのはよく伺う要望なのですが、Liferayはその仕組みをデフォルトで備えています。具体的には、ウイルススキャンツールを別途導入し、そのツールとの連携設定を施すだけで実現できます。以下ではその設定手順を説明します。


まずはClam AntiVirusのインストールから


まず初めに、ウイルスチェックツールClam AntiVirusをインストールします。Clam AntiVirusであればLiferayがデフォルトで対応しており、簡単な設定だけで連携することができます。

インストール方法はOSによって異なるのですが、Windowsであればインストーラでインストールし、CentOSであればyumにRPMforgeリポジトリを追加してyum installで導入します。必要に応じて、clamscanコマンドをパス無しで実行できるようにパスを通してください。


Liferayでウイルススキャンの設定を行う


続いて、Liferay側でClam AntiVirusとの連携設定を行います。portal-ext.propertiesに以下の2行を追加します。

dl.store.antivirus.enabled=true
dl.store.antivirus.impl=com.liferay.portlet.documentlibrary.antivirus.ClamAntivirusScannerImpl

設定はこれだけ、とても簡単です。設定が終わったらLiferayを再起動します。


動作確認してみよう


設定が終わったら早速動作確認してみましょう。事前準備として、クライアントPCのリアルタイムスキャンを切っておくか、そのようなツールが入っていないPCをクライアントとして利用しましょう。クライアントPCにリアルタイムスキャンが設定されていると、テスト用のウイルスファイルが自動除去されてしまってテストができないからです。

テスト用のウイルスファイルをこちらからダウンロードし、このファイルをLiferayのDocuments and Mediaポートレットにアップロードします。正しく動作していると、以下の2点が確認できるはずです。
  • 画面に「Documents and Media is temporarily unavailable」と表示され、ファイルアップロードに失敗します。
  • ログファイル(catalina.out)に「com.liferay.portlet.documentlibrary.antivirus.AntivirusScannerException: Virus detected in...」と出力されます。ウイルスが検出されてExceptionが投げられていることが分かります。
もしファイルアップロードに成功してログに何も出力されない場合は、clamscanというコマンドを実行できるか否か、設定が正しく追記されているか等を確認してください。


いかがでしょうか。Liferayのウイルススキャン機能が比較的簡単に設定できることがお分かり頂けましたでしょうか。是非みなさまもお試しいただければと思います。

※ 本記事は aegif Labo Blog の投稿から引用しています。

menu

  • 最新記事
  • 人気記事

製品の導入や詳細に関してはお気軽にお問い合わせください

HPからのお問い合わせはこちら

お電話 03-5771-1566 ( 平日11:00-15:00受付 )