運用管理サーバでSNMPトラップを受信するために、SNMPの設定をします。
運用管理サーバのSNMPトラップ設定は、SNMPv1プロトコルだけを利用して装置を監視する場合と、以下のどちらかの場合で異なります。運用環境に応じた設定を行ってください。
SNMPv3プロトコルだけを利用して装置を監視する場合
SNMPv1プロトコルおよびSNMPv3プロトコルを利用して装置を監視する場合
SNMPv1プロトコルだけを利用して装置を監視する場合
Windows標準SNMPトラップ受信サービス(SNMP Trap)をインストールしてください。
このサービスは、OSのインストールメディアに含まれています。
SNMPv3プロトコルだけを利用して装置を監視する場合、またはSNMPv1プロトコルおよびSNMPv3プロトコルを利用して装置を監視する場合
以下の手順でExpressマネージャーを停止します。
[コントロールパネル]-[システムとセキュリティ]-[管理ツール]-[サービス]をクリックして、サービス画面を開きます。
"ETERNUS SF Manager Tomcat Service"を選択し、[停止]ボタンをクリックします。
コマンドプロンプトから以下のコマンドを実行し、ETERNUS SF SNMP Trap Serviceを導入します。$INS_DIRは、ETERNUS SF Managerをインストールしたときの「プログラムディレクトリ」です。
> powershell -ExecutionPolicy Unrestricted $INS_DIR\ESC\Manager\opt\FJSVssmgr\sbin\swsttctr.ps1 -install
以下の手順でETERNUS SF SNMP Trap Serviceを起動します。
サービス画面を開きます。
"ETERNUS SF SNMP Trap Service"を選択し、[開始]ボタンをクリックします。
以下の手順でExpressマネージャーを起動します。
サービス画面を開きます。
"ETERNUS SF Manager Tomcat Service"を選択し、[開始]ボタンをクリックします。
注意
SNMPトラップを利用するほかのアプリケーションが同居する場合は、管理対象のIPアドレスはIPv4アドレスだけを使用してください。管理対象のIPアドレスにIPv6アドレスの装置を含む場合は、SNMPトラップを利用するほかのアプリケーションと同居できません。
以下の手順でExpressマネージャーを停止します。
[コントロールパネル]-[システムとセキュリティ]-[管理ツール]-[サービス]をクリックして、サービス画面を開きます。
"ETERNUS SF Manager Tomcat Service"を選択し、[停止]ボタンをクリックします。
コマンドプロンプトから以下のコマンドを実行し、ETERNUS SF SNMP Trap Serviceを導入します。$INS_DIRは、ETERNUS SF Managerをインストールしたときの「プログラムディレクトリ」です。
> powershell -ExecutionPolicy Unrestricted $INS_DIR\ESC\Manager\opt\FJSVssmgr\sbin\swsttctr.ps1 -install
「付録H SNMPトラップ転送プログラムの導入と設定」を参照し、SNMPトラップ転送プログラムを導入してください。
運用管理サーバのSNMPトラップ設定は、SNMPv1プロトコルだけを利用して装置を監視する場合と、以下のどちらかの場合で異なります。運用環境に応じた設定を行ってください。
SNMPv3プロトコルだけを利用して装置を監視する場合
SNMPv1プロトコルおよびSNMPv3プロトコルを利用して装置を監視する場合
SNMPv1プロトコルだけを利用して装置を監視する場合
運用管理サーバでSNMPトラップを受信するために、OS標準のnet-snmpパッケージに含まれるsnmptrapdの設定ファイルをカスタマイズします。
Red Hat Enterprise Linux 8またはRed Hat Enterprise Linux 7環境の場合
以下のコマンドを実行してください。
# systemctl enable snmptrapd.service # systemctl start snmptrapd.service
Red Hat Enterprise Linux 6環境の場合
以下のコマンドを実行し、snmptrapdの起動が有効になっているか確認してください。
# chkconfig --list snmptrapd snmptrapd 0:off 1:off 2:on 3:on 4:on 5:on 6:off
有効になっていない場合は、以下のコマンドを実行して有効にしてください。
# chkconfig --add snmptrapd # chkconfig snmptrapd on
ポイント
snmptrapdの設定は/etc/snmp/snmptrapd.confファイルにありますが、ほかの製品では/usr/share/snmp/snmptrapd.confファイルも使用している場合があります。
設定では、ほかの製品との共存のために両方のファイルを確認してください。
アクセス制御の設定状況を確認します。
snmptrapd.confファイルに以下の設定がなければ、アクセス制御が有効になっています。
disableAuthorization yes
注意
/etc/snmp/snmptrapd.confファイルと/usr/share/snmp/snmptrapd.confファイルの両方の、アクセス制御の設定状況を確認してください。
ほかの製品からの要求がなければ、/etc/snmp/snmptrapd.confファイルに上記の"disableAuthorization yes"を設定して、アクセス制御を無効にしてください。
/etc/snmp/snmptrapd.confファイルに以下の設定を追加します。
forward default unix:/var/opt/FJSVssmgr/trap_socket
以下の設定を追加します。
authCommunity net public authCommunity net SANMA forward default unix:/var/opt/FJSVssmgr/trap_socket
/etc/snmp/snmptrapd.confファイルと/usr/share/snmp/snmptrapd.confファイルの両方を確認し、ほかの製品によってauthCommunityが設定されている方のsnmptrapd.confファイルを編集してください。どちらにも設定がなければ、/etc/snmp/snmptrapd.confファイルを編集してください。
参考
authCommunityは、アクセス制御が有効になっている場合に編集できる項目です。
書式は以下のとおりです。
authCommunity TYPES COMMUNITY [SOURCE [OID | -v VIEW ]] TYPES: log,execute,net COMMUNITY: 監視対象のSNMPトラップのコミュニティー名 |
TYPESフィールドにはlog、execute、netを設定できます。
COMMUNITYフィールドには、監視対象装置のSNMPトラップのコミュニティー名を設定します。
なお、Expressでは、SOURCE、OID、およびVIEWフィールドを設定しないでください。
例えば、以下のように設定します。
authCommunity net public authCommunity net SANMA |
SNMPトラップのコミュニティー名がpublicとSANMA以外のETERNUS ディスクアレイを監視する場合は、authCommunityの設定を追加します。
例えば、コミュニティー名がcommonのETERNUS ディスクアレイを監視対象にする場合は以下のように設定します。なお、publicとSANMAの設定は必須です。
authCommunity net public authCommunity net SANMA authCommunity net common forward default unix:/var/opt/FJSVssmgr/trap_socket |
authCommunity logやauthCommunity executeがほかの製品によってすでに設定されている場合は、コンマ(,)区切りでnetを追加します。
例えば、authCommunity execute publicが設定されている場合は、以下のように設定します。
authCommunity execute,net public authCommunity net SANMA forward default unix:/var/opt/FJSVssmgr/trap_socket |
snmptrapd.confファイルの変更後、以下のコマンドを実行してsnmptrapdを再起動します。
変更後の内容がSNMPトラップの設定に反映されます。
Red Hat Enterprise Linux 8またはRed Hat Enterprise Linux 7環境の場合
# systemctl restart snmptrapd.service
Red Hat Enterprise Linux 6環境の場合
# /etc/init.d/snmptrapd stop # /etc/init.d/snmptrapd start
注意
snmptrapd.confファイルをカスタマイズしたあとに、ServerView AlarmServiceなどのsnmptrapdを利用するアプリケーションをインストール、アンインストールまたは設定変更を実施した場合は、snmptrapd.confファイルのカスタマイズ内容が変更されていないか確認してください。
ポイント
ServerViewトラップ転送プログラムを使用している環境の場合は、snmptrapdデーモンとtrpsrvdデーモンを再起動してください。
参考
snmptrapd.confファイルの詳細は『Storage Cruiser 運用ガイド』の「snmptrapd.confファイル説明」を参照してください。
続いて、「SNMPトラップデーモン用SELinuxポリシーモジュールのインストール」に記載されている作業を実施してください。
SNMPv3プロトコルだけを利用して装置を監視する場合、またはSNMPv1プロトコルおよびSNMPv3プロトコルを利用して装置を監視する場合
ETERNUS SF Managerのインストール直後は、SNMPv1プロトコルの装置だけを監視する設定になっています。このため、以下の手順で、OS標準のnet-snmpパッケージに含まれるsnmptrapdからの変更を行ってください。
以下のコマンドを実行して、ETERNUS SF Managerを停止します。
# /opt/FJSVesfcm/bin/stopesf.sh
OS標準のSNMPトラップデーモン(net-snmpパッケージのsnmptrapd)を起動している場合は、以下のコマンドを実行して停止します。
Red Hat Enterprise Linux 8またはRed Hat Enterprise Linux 7環境の場合
# systemctl stop snmptrapd.service
Red Hat Enterprise Linux 6環境の場合
# /etc/init.d/snmptrapd stop
OS標準のSNMPトラップデーモンをシステム起動時に自動起動している場合は、以下のコマンドを実行して自動起動を停止します。
Red Hat Enterprise Linux 8またはRed Hat Enterprise Linux 7環境の場合
# systemctl disable snmptrapd.service
Red Hat Enterprise Linux 6環境の場合
# chkconfig snmptrapd off # chkconfig --list snmptrapd
SNMPトラップデーモンパッケージのインストールと設定を行います。
パッケージのインストール
以下のコマンドを実行して、/opt/FJSVssmgr/etc/pkgディレクトリにあるFJSVswstt-XXXX.rpmパッケージをインストールしてください。
# rpm -i /opt/FJSVssmgr/etc/pkg/FJSVswstt-XXXX.rpm
指定するパッケージファイルのXXXX部分は、OSによって異なります。
OS | パッケージファイル名 |
---|---|
Red Hat Enterprise Linux 8 | FJSVswstt-V15.3.0-1.x86_64.rpm |
Red Hat Enterprise Linux 7 | FJSVswstt-V13.7.0-1.x86_64.rpm |
自動起動の設定
Red Hat Enterprise Linux 8またはRed Hat Enterprise Linux 7環境の場合は、以下のコマンドを実行して、SNMPトラップデーモンの自動起動を設定してください。
# cp -p /opt/FJSVssmgr/etc/pkg/startsc-snmptrapd.service /usr/lib/systemd/system # systemctl enable startsc-snmptrapd.service
以下のコマンドを実行して、ETERNUS SF Managerを起動してください。
# /opt/FJSVesfcm/bin/startesf.sh
注意
Systemwalker Centric Managerと同一サーバ上で混在して使用している環境において、Systemwalker Centric Managerをアンインストールすると、SNMPトラップデーモンが停止する場合があります。
混在環境からSystemwalker Centric Managerをアンインストールした場合は、以下の作業を実施してください。
以下のコマンドを実行して、nwsnmp-trapdが動作していることを確認します。
Red Hat Enterprise Linux 8またはRed Hat Enterprise Linux 7環境の場合
# systemctl status startsc-snmptrapd.service
Red Hat Enterprise Linux 6環境の場合
# ps -ef | grep nwsnmp-trapd
nwsnmp-trapdが動作していない場合は、システムを再起動または以下のコマンドを実行します。
Red Hat Enterprise Linux 8またはRed Hat Enterprise Linux 7環境の場合
# systemctl start startsc-snmptrapd.service
Red Hat Enterprise Linux 6環境の場合
# /opt/FJSVswstt/bin/mpnm-trapd stop # /opt/FJSVswstt/bin/mpnm-trapd start
続いて、「SNMPトラップデーモン用SELinuxポリシーモジュールのインストール」に記載されている作業を実施してください。
SNMPトラップデーモン用SELinuxポリシーモジュールのインストール
SELinux=Enforcingの場合、以下の手順に従って、ポリシーモジュールを適用してください。
Red Hat Enterprise Linux 8またはRed Hat Enterprise Linux 7環境の場合は、デフォルトでSELinux=Enforcingになります。
本手順を実施することで、snmptrapdデーモンのSELinuxポリシーモジュールは自動的にインストールされ、SNMP トラップによるイベント受信が可能になります。
注意
snmptrapdデーモンに本製品のポリシーを適用する前に、ほかの製品がsnmptrapdデーモンのポリシー設定を変更していないか確認します。必要であれば本製品で設定するポリシーをカスタマイズしてください。
正しく設定できていない場合、snmptrapdデーモンが正しく動作しないことがあります。
SELinuxポリシーモジュールをカスタマイズしない場合
以下のコマンドを実行し、SELinuxポリシーモジュールを適用してください。
# /opt/FJSVssmgr/etc/selinux/esfsepolicy_setup.sh
SELinuxポリシーモジュールをカスタマイズする場合
本手順を実施することで、snmptrapdデーモンに対するSELinuxのポリシーを変更できます。
SELinuxポリシーモジュールと対応するポリシー定義ファイルは以下のとおりです。
監視する装置のIPアドレス環境 | 装置の障害監視で利用するプロトコル | ポリシー定義ファイル | SELinuxポリシーモジュール名 | ファイルコンテキスト名 |
---|---|---|---|---|
IPv4 | SNMPv1 | /opt/FJSVssmgr/etc/selinux/snmptrapd.te | snmptrapd.pp | snmptrapd.fc |
SNMPv3 | /opt/FJSVssmgr/etc/selinux/nwsnmp-trapd.te | nwsnmp-trapd.pp | nwsnmp-trapd.fc |
Red Hat Enterprise Linux 8またはRed Hat Enterprise Linux 7環境の場合、デフォルトのSELinuxポリシーモジュール定義ファイルの内容は以下です。
moduleポリシーモジュール名1.0;
require {
type unconfined_t;
type snmpd_t;
type var_t;
type initrc_t;
type init_t;
class sock_file write;
class unix_stream_socket connectto;
}
#============= snmpd_t ==============
allow snmpd_t initrc_t:unix_stream_socket connectto;
allow snmpd_t init_t:unix_stream_socket connectto;
allow snmpd_t unconfined_t:unix_stream_socket connectto;
allow snmpd_t var_t:sock_file write;
カスタマイズは、以下の手順で実施してください。
「表4.6 SELinuxポリシーモジュールのカスタマイズファイル」を参照し、利用するファイル名を確認してください。
利用するシステムに対応するポリシー定義ファイルを任意のディレクトリへコピーし、修正します。
ファイルコンテキストの定義を変更する場合は、ファイルコンテキストを作成します。
作成したファイルコンテキストを修正したポリシー定義ファイルが存在するディレクトリに格納します。
修正したポリシー定義ファイルが存在するディレクトリに移動します。
以下のコマンドを実行します。カレントディレクトリにSELinuxポリシーモジュールが作成されます。
# make -f /usr/share/selinux/devel/Makefile
以下のコマンドを実行して、設定を「SELinux=Permissive」に変更します。
# setenforce 0
以下のコマンドを実行して、ポリシーモジュールを適用します。
# /usr/sbin/semodule -i ポリシーモジュール名
以下のコマンドを実行して、ポリシーモジュール名が表示されることを確認します。
Red Hat Enterprise Linux 8環境の場合
# /usr/sbin/semodule -l | grep ポリシーモジュール名
Red Hat Enterprise Linux 7またはRed Hat Enterprise Linux 6環境の場合
# ls /etc/selinux/targeted/modules/active/modules/ | grep ポリシーモジュール名
以下のコマンドを実行して、設定を「SELinux=Enforcing」に戻します。
# setenforce 1
注意
SELinuxポリシーを作成する場合、selinux-policy-develパッケージが必要となります。
インストールされていない場合、パッケージをインストールしたあとにポリシーを作成してください。