My Tracking

My Tracking

記憶力の低下が気になるアラフォー男の備忘録

SEPクライアント for Linuxインストール顛末記

下記のSEP関連の記事に関連し、

SEPクライアント for Linuxをインストールし、Windows用のSEPクライアントと同様に、
Linux版のSEPクライアントをSEPM上で、管理するための検証を行ったが、非常にはまったため、
その顛末記。

検証環境

検証環境は、下記の前提に基づく。

・SEPMおよびSEP クライアント for Linuxのバージョンは、12.1 RU6 MP5
・SEPクライアントFor Linuxインストール後は、SEPM上にて、管理する。
・SEPクライアントFor LinuxをインストールするLinuxは、RedHatEnterPriseLinux(GUIなし)とする。

インストールするLinuxのOS情報

[root@mx-ns ~]# cat /etc/redhat-release
Red Hat Enterprise Linux Server release 6.7 (Santiago)
[root@mx-ns ~]#
[root@mx-ns ~]# uname -r
2.6.32-573.18.1.el6.x86_64
[root@mx-ns ~]#

SEPクライアントFor Linux用パッケージ作成

SEPMで管理するために、SEPクライアントFor Linux用パッケージをSEPM上で作成する。

作成したパッケージをLinux側に配置し、実行権限を付与する。

作成したパッケージ(SymantecEndpointProtection.zip)をFTPなどで、インストール対象のLinuxに配置する。 ここでは、/tmp/sep配下に配置したものとし、zipファイルを解凍する。

[root@log sep]# pwd
/tmp/sep
[root@log sep]# unzip SymantecEndpointProtection.zip

zipファイルが解凍されたら、下記の通りのファイル構成になる。
そのフォルダ上に、install.shというファイルが存在するため、これに実行権限を与える。

[root@mx-ns sep]# ls
Configuration  Repository                      install.sh  policy
Legacy         SymantecEndpointProtection.zip  pkg.sig     src
[root@mx-ns sep]#
[root@mx-ns sep]# chmod u+x install.sh

SEPクライアントFor Linux用パッケージのインストーラ「install.sh」の実行

実行権限を加えた「install.sh」をパラメータなしで実行する。

[root@mx-ns sep]# ./install.sh
Usage: install.sh [options]
the options are:
                -i install SEP for Linux.
                -u uninstall SEP for Linux.
                --prefix <dir> install to alternate location if <dir> exists. Note, this option is only for RPM package.

[root@mx-ns sep]#

-iオプションを付与して、実行するのが、インストールオプションのようなので、-iオプション付きで、実行してみる。

「install.sh」の実行時のエラー①

インストーラを実行する。すると、下記のエラーに遭遇。

[root@log sep]# ./install.sh -i
Starting to install Symantec Endpoint Protection for Linux
Performing pre-check...
Error:          Installation requires Oracle Java 1.5 or later whose owner is superuser. Please install the correct version with superuser and Java Cryptography Extension (JCE) Unlimited Strength Jurisdiction Policy Files, and try again.
Error:          Installation requires 32bits glibc library. Please install it and try again.
Warning:        X11 libraries are missing, GUI component will not be installed!
Pre-check failed.
[root@log sep]# 

インストールの前提として、下記が必要となるようだ。
* Oracle Java 1.5以降のインストール
* 32bits glibcのインストール

 インストールエラー対応① Oracle Java 1.7のダウンロード & インストール

インストールエラーの対応のため、まずは、Oracle Java 1.7のダウンロードする。

下記を参考に、ダウンロードする。

[root@mx-ns src]# wget --no-check-certificate --no-cookies --header "Cookie: oraclelicense=accept-securebackup-cookie" http://download.oracle.com/otn-pub/java/jdk/7u80-b15/jdk-7u80-linux-x64.rpm
[root@mx-ns src]# ls -l
合計 134876
-rw-r--r-- 1 root root 138090286  414 02:12 2015 jdk-7u80-linux-x64.rpm
[root@mx-ns src]#

ダウンロードが完了したら、インストールする。

[root@mx-ns src]# rpm -ivh jdk-7u80-linux-x64.rpm
準備中...                ########################################### [100%]
   1:jdk                    ########################################### [100%]
Unpacking JAR files...
        rt.jar...
        jsse.jar...
        charsets.jar...
        tools.jar...
        localedata.jar...
        jfxrt.jar...
[root@mx-ns src]#

インストールが完了したら、javaのバージョンを確認する。

[root@mx-ns src]# java -version
java version "1.7.0_80"
Java(TM) SE Runtime Environment (build 1.7.0_80-b15)
Java HotSpot(TM) 64-Bit Server VM (build 24.80-b11, mixed mode)
[root@mx-ns src]#

 インストールエラー対応② 32bit版glibcのインストール

インストールエラーの対応のため、次に、32bit版glibcをインストールする。
下記を参考に、yumでインストールしてみる。

https://support.symantec.com/en_US/article.TECH228118.html

[root@mx-ns src]# yum install glibc.i686 libgcc.i686 libX11.i686
~ 中略 ~

エラー:  Multilib version problems found. This often means that the root
        cause is something else and multilib version ch

~ 中略 ~

        Protected multilib versions: libgcc-4.4.7-17.el6.i686 != libgcc-4.4.7-16                   .el6.x86_64

OSが64bitで、すでに64bit用のlibgccがインストールされている環境に32bit用のlibgccを
インストールしようとしたところで、バージョンの競合が発生したと思われる。

強制的に既存のlibgccを削除しようとしたが、依存性の問題で、削除できず。

[root@mx-ns src]# yum remove libgcc
~ 中略 ~
~ 中略 ~

エラー: Trying to remove "yum", which is protected
[root@mx-ns src]#
[root@mx-ns src]#

ダメもとで、glibcの32bit版のみインストールする。

[root@mx-ns src]# yum install glibc.i686
~ 中略 ~
~ 中略 ~

完了しました!
[root@mx-ns src]#

glibcの32bit版のインストールは完了した。

再度の「install.sh」の実行

インストールエラーの対応は行ったので、再度「install.sh」を実行する。

[root@mx-ns sep]# ./install.sh -i
Starting to install Symantec Endpoint Protection for Linux
Performing pre-check...
Error:          Installation requires Oracle Java 1.5 or later whose owner is superuser. Please install the correct version with superuser and Java Cryptography Extension (JCE) Unlimited Strength Jurisdiction Policy Files, and try again.
Warning:        X11 libraries are missing, GUI component will not be installed!
Pre-check failed.
[root@mx-ns sep]#

残念ながら、エラーとなったが、エラーの内容が変わった。
上記エラーは、「256bit以上の鍵長が使えない場合」にでるようだ。

 インストールエラー対応② Oracle Javaで256bit以上の鍵長が使えるようにする。

下記のサイトで、UnlimitedJCEPolicyJDK7.zipをダウンロードする。

http://www.oracle.com/technetwork/java/embedded/embedded-se/downloads/jce-7-download-432124.html

ダウンロードしたUnlimitedJCEPolicyJDK7.zipを適当な場所に解凍する。

[root@mx-ns policy]# unzip UnlimitedJCEPolicyJDK7.zip
Archive:  UnlimitedJCEPolicyJDK7.zip
   creating: UnlimitedJCEPolicy/
  inflating: UnlimitedJCEPolicy/US_export_policy.jar
  inflating: UnlimitedJCEPolicy/local_policy.jar
  inflating: UnlimitedJCEPolicy/README.txt
[root@mx-ns policy]#

解凍してできたファイルのうち、US_export_policy.jarと/local_policy.jarを
/usr/java/jdk1.7.0_80/jre/lib/security上の同ファイルに上書きする。

[root@mx-ns UnlimitedJCEPolicy]# cp US_export_policy.jar /usr/java/jdk1.7.0_80/jre/lib/security
cp: `/usr/java/jdk1.7.0_80/jre/lib/security/US_export_policy.jar' を上書きしてもよろしいですか(yes/no)? y
[root@mx-ns UnlimitedJCEPolicy]# cp local_policy.jar /usr/java/jdk1.7.0_80/jre/lib/security
cp: `/usr/java/jdk1.7.0_80/jre/lib/security/local_policy.jar' を上書きしてもよろしいですか(yes/no)? y
[root@mx-ns UnlimitedJCEPolicy]# 

再々度の「install.sh」の実行

再々度の「install.sh」の実行。

[root@mx-ns sep]# ./install.sh -i
Starting to install Symantec Endpoint Protection for Linux
Performing pre-check...
Warning:        X11 libraries are missing, GUI component will not be installed!
Pre-check succeeded
Begin installing virus protection component
準備中...                ########################################### [100%]
Performing pre-check...
Pre-check is successful
   1:sav                    ########################################### [100%]
Virus protection component installed successfully
Begin installing Auto-Protect component
準備中...                ########################################### [100%]
Performing pre-check...
Pre-check is successful
   1:savap-x64              ########################################### [100%]
Auto-Protect component installed successfully
Begin installing GUI component
GUI component failed to install, with error:    libX11.so.6 は savui-12.1.7004-6500.i386 に必要とされています
Begin installing LiveUpdate component
準備中...                ########################################### [100%]
Performing pre-check...
Pre-check is successful
   1:savjlu                 ########################################### [100%]
LiveUpdate component installed successfully
Installation completed
=============================================================
Daemon status:
symcfgd                         [running]
rtvscand                        [running]
smcd                            [running]
=============================================================
Drivers loaded:
symap_rh_ES_6_2_6_32_431_el6_x86_64
symev_rh_ES_6_2_6_32_431_el6_x86_64
=============================================================
Auto-Protect starting
Protection status:
Definition:     Waiting for update.
AP:             Malfunctioning
=============================================================
The log files for installation of Symantec Endpoint Protection for Linux are under ~/:
sepfl-install.log
sep-install.log
sepap-install.log
sepap-legacy-install.log
sepui-install.log
sepjlu-install.log
sepfl-kbuild.log
[root@mx-ns sep]#

今度は、一部Warningの発生はあるものの、最後までインストーラーが実行された。

SEPM側の確認

インストール完了後、しばらくすると、SEPM側でSEPクライアント for Linuxを インストールしたSEPクライアントを認識するようになる。