Symantec Endpoint Protection (SEP) の Mac 版と Linux 版クライアントで LiveUpdate コンテンツをダウンロードしたい。
SEP 14.x 以降では、LiveUpdate のコンテンツを Mac 版と Linux 版クライアントにダウンロードする方法として、少なくとも 2 つのオプションがあります。
以下は、SEPM の Apache Web サーバーを設定し、Mac および Linux 用の SEP クライアントが、Web サーバによって LiveUpdate コンテンツをダウンロードできるようにする手順です。このソリューションは、SEPM をキャッシュとして動作させるもので、Windows 用の定義ファイルのように Mac および Linux 用の定義ファイルを .dax ファイルにすることはありません。また、Mac および Linux 版の SEP クライアントがグループ更新プロバイダ (GUP) からコンテンツを更新できるようにすることでもありません。
注: リバースプロキシのインストールと設定、運用はテクニカルサポートが提供できる対応範囲を超えており、方法の一例を示す目的で現状のまま提供しています。
以下の手順で、リバースプロキシとして動作するように Apache Web サーバーを設定します。
1. semwebsrv サービス (Symantec Endpoint Protection Manager Webserver) と semsrv サービス (Symantec Endpoint Protection Manager) を停止します。
2. SEPM のインストールディレクトリの Apache フォルダ内に cache-root というフォルダを作成します。例: SEPM_Install\apache\cache-root
SEPM_Install のデフォルトのパスは以下の通りです。Symantec Endpoint Protection Manager Webserver を起動しているアカウントが SEPM_Install\apache\cache-root のフルコントロール権限を持っていることを確認してください。
3. \apache\modules フォルダ内に以下のファイルが存在するか確認してください。
ファイルが存在しない場合は、ダウンロードしたインストールフォルダーや DVD イメージの \Tools\Apache-ReverseProxy にあるファイルを SEPM_Install\apache\modules にコピーしてください。詳細は [セキュリティと互換性] をご覧ください。
4. SEPM_Install\apache\conf を参照し、httpd.conf を httpd-orig.conf にコピーして、オリジナルの設定ファイルをバックアップしてください。
5. httpd.conf を以下のように変更します。
#AsyncSendFile anydirectory
AsyncSendFile givendirectory
ForceAsyncSendFile "SEPM_Install/Inetpub/content"
LogFormat "%h %l %u %t \"%r\" %>s %b" common
下記の行に置き換えてください。
LogFormat "%h %l %u %t %{cache-status}e \"%r\" %>s %b" common
SEPM バージョン 12.1.5 以降の場合: 赤い文字は、12.1.4 に含まれる Apache のバージョンから変更されたファイル名を示しています。この機能を 12.1.4 で実装していた場合は、変更されたファイル名を httpd.conf で更新するだけで済みます。
# SEPM_APACHE_AS_PROXY_START Preserve this line to maintain configuration across SEPM upgrades
LoadModule proxy_module modules/mod_proxy.so
LoadModule proxy_http_module modules/mod_proxy_http.so
LoadModule cache_module modules/mod_cache.so
LoadModule cache_disk_module modules/mod_cache_disk.so
LoadModule setenvif_module modules/mod_setenvif.so
<IfModule mod_proxy.c>
<IfModule mod_cache.c>
<IfModule mod_cache_disk.c>
<IfModule mod_setenvif.c>
SetEnvIf Request_URI "/luproxy/" dolog
SetEnvIf Request_URI "/luproxy/.*_livetri.zip" no-cache
CustomLog "|| bin/rotatelogs.exe logs/access-%Z.log 25M" common env=dolog
</IfModule>
ProxyPass /luproxy/ http://liveupdate.symantecliveupdate.com/ retry=0 smax=0 ttl=60
CacheRoot "cache-root"
# CacheRoot is a path defined relative to [SEPM_Install]/apache/
CacheEnable disk /luproxy/
CacheDirLevels 1
CacheDirLength 5
# directives to override any caching prohibitions in LiveUpdate content headers
# see TECH230862
CacheStoreNoStore On
CacheIgnoreCacheControl On
CacheStoreExpired On
CacheIgnoreHeaders Cache-Control Pragma
#allow downloads up to 1 GB
CacheMaxFileSize 1000000000
</IfModule>
</IfModule>
</IfModule>
# SEPM_APACHE_AS_PROXY_END Preserve this line to maintain configuration across SEPM upgrades
6. ファイルを保存してから閉じます。
7. semwebsrv サービス (Symantec Endpoint Protection Manager Webserver) と semsrv サービス (Symantec Endpoint Protection Manager) を起動します。
LiveUpdate ファイルをダウンロードしてプロキシサーバーが動作しているかどうかをテストするには、OS デスクトップの [スタート] - [ファイル名を指定して実行] をクリックし http://localhost:8014/luproxy/masttri.zip と入力してください。もし SEPM の Apache ウェブサーバーが 8014 とは異なるポートを使用している場合は、URL 内の 8014 を実際のポート番号に置き換えてください。
注意: massttri.zip ファイルは、ローカルの URL アドレスを介してリクエストされますが、そのリクエストは Symantec の公開 LiveUpdate サーバに渡されます。ファイアウォールが LiveUpdate を遮断しているかどうかを判断する にしたがって、SEPM から LiveUpdate サーバーへの接続が確立できることを確認してください。リバースプロキシも Symantec の LiveUpdate サーバーに直接接続する必要があり、他のプロキシを経由することはできません。
Apache Web サーバーへの LiveUpdate のダウンロードリクエストは、SEPM_Install\apache\logs\access-%Z.log に記録されます。
以下の手順で、対象グループの Mac および Linux クライアント用の LiveUpdate ポリシーを更新してください。ポリシーが更新されると、これらのクライアントは、新しく設定された Apache Web サーバーを使って LiveUpdate コンテンツをダウンロードします。
キャッシュファイルサイズを管理するには、以下の手順で行います。
htcacheclean -n -t -d1440 -l1024M -p"SEPM_Install/apache/cache-root"
これにより htcacheclean ツールがデーモンモードで実行されます。キャッシュのクリーニングは毎日の頻度で行われます。ディスク上で許可される最大のキャッシュサイズは 1 GB です。
Windows が起動するたびに htcacheclean デーモンを自動的に起動するには、次の手順を実行します。
SEPM_Install\apache\bin\htcacheclean.exe
-n -t -d1440 -l1024M -p"SEPM_Install/apache/cache-root"
このタスクはシステムを再起動するまで実行されないので、今すぐ実行できます。実行するには、タスクスケジューラで作成したタスクを右クリックして [実行する] をクリックします。
注: タスクを実行するユーザーアカウントが、SEPM_Install\apache\cache-root フォルダにフルコントロール権限があることを確認してください。
この構成は、少数の Mac および/または Linux クライアント向けに設計されています。Mac または Linux クライアントの数が少なく、クライアントと SEPM を接続するネットワークの帯域幅が十分にある場合にのみ、この設定を使用してください。各クライアントが 1 日に約 500 KB の LiveUpdate コンテンツをダウンロードすると仮定すると、2000 台の Mac または Linux クライアントでは、1 日に約 1 GB の LiveUpdate コンテンツが Apache Web サーバーからダウンロードされることになります。多数のクライアントがある構成では、Symantec LiveUpdate Administrator の利用を検討してください。
Symantec では、この記事で言及されている Apache モジュールには、Symantec の署名入りバイナリを使用することを推奨しています。これらの署名入りバイナリは、Symantec Endpoint Protection をダウンロードしたインストールファイルに含まれています。なお、SEPM 12.1.4 以降は、必要なバイナリも一緒にインストールされます。
Symantec Endpoint Protection 14 の場合:
本記事の公開後に新たな脆弱性が公表される可能性がありますので、該当するバージョンの Apache Web サーバーについて、Apacheプロジェクトが公表している脆弱性を http://httpd.apache.org/security/ で確認してください。
SEPM をアップグレードすると、設定ファイルがリセットまたは上書きされる可能性があります。そのため SEPM のアップグレード後に、httpd.conf に加えた変更を確認してください。