6.2.5 Linux・HP-UX・AIXを管理対象にするための設定

ここでは,JP1/ITRMで物理ホストとしてLinux,HP-UX,AIXがインストールされているホスト,または仮想ホストとしてLinuxがインストールされているホストを管理するために必要な設定について説明します。

仮想ホストを設定する場合は,あわせて次の個所を参照してください。

<この項の構成>
(1) ログインshellの設定
(2) 自動起動スクリプトファイルの設定
(3) IP接続許可の設定
(4) SSH接続をするためのソフトウェアのインストール(AIXの場合)
(5) SSHの設定
(6) 必要なコマンドの登録
(7) kudzuサービスの無効化
(8) ネットワーク設定を特定のNICに固定する指定の無効化
(9) OSの構成についての注意事項

(1) ログインshellの設定

JP1/ITRM接続用アカウントとして,一定期間経過しても,情報収集やタスク実行の操作時にログインできるアカウントを用意してください。

なお,このホストを仮想イメージテンプレートにする場合は,仮想イメージテンプレートの作成からデプロイするまでの期間が経過することになります。

JP1/ITRM接続用アカウントのログインshellを次のとおり設定します。

Linuxの場合
bashまたはtcshに変更します。
HP-UXの場合
/sbin/shに変更します。
AIXの場合
/usr/bin/kshに変更します。

ログインshellがすでにこのとおりに設定されている場合は,この手順は不要です。

ログインshellを変更する方法の例を次に示します。

Linuxの場合
  • 既存のアカウントを使用する場合
    usermod -sコマンドを実行してログインshellを/bin/bashまたは/bin/tcshに変更してください。
  • 新規アカウントを作成する場合
    useraddコマンドの実行時に,ログインshellを-sオプションで/bin/bashまたは/bin/tcshに指定してください。
HP-UXの場合
  • 既存のアカウントを使用する場合
    usermod -sコマンドを実行してログインshellを/sbin/shに変更してください。
  • 新規アカウントを作成する場合
    useraddコマンドの実行時に,ログインshellを-sオプションで/sbin/shに指定してください。
AIXの場合
  • 既存のアカウントを使用する場合
    usermod -sコマンドを実行してログインshellを/usr/bin/kshに変更してください。
  • 新規アカウントを作成する場合
    useraddコマンドの実行時に,ログインshellを-sオプションで/usr/bin/kshに指定してください。

(2) 自動起動スクリプトファイルの設定

通常,ログイン時に自動起動スクリプトが実行され,エイリアスや環境変数が自動で設定されます。自動起動スクリプトはアカウントごとに設定できます。

アカウントごとの自動起動スクリプトがない場合,システム標準の自動起動スクリプトが実行されます。システム標準の自動起動スクリプトでエイリアスなどが設定されると動作に支障をきたすため,JP1/ITRM接続用アカウントに空の自動起動スクリプトを設定する必要があります。

自動起動スクリプトファイルには,ログインShellが起動したときにだけ起動するログイン用と,そのあとShellからほかのShellを起動したときにも起動するShell起動用の自動起動スクリプトと,設定が有効なOSの場合はログアウト時にOSによって自動起動されるスクリプトがあります。

また,bashとtcshではファイル名が異なります。

システム標準とアカウント個別,ログイン用とShell起動用とログアウト用の組み合わせに応じたファイル名を次の表に示します。

表6-5 自動起動スクリプトのファイル名(Linuxの場合)

自動起動スクリプトの種類自動起動スクリプトのファイル名
bashtcsh
標準ログイン用/etc/profile
/etc/bash.bash_login
/etc/csh.login
Shell起動用/etc/csh.cshrc
ログアウト用/etc/bash.bash_logout
個別ログイン用~/.bash_profile~/.login
Shell起動用~/.bashrc~/.cshrc
(凡例)
-:該当しない。

表6-6 初期化スクリプトのファイル名(HP-UXの場合)

初期化スクリプトの種類初期化スクリプトのファイル名
/sbin/sh
標準ログイン用/etc/profile
Shell起動用
個別ログイン用~/.profile
Shell起動用
(凡例)
-:該当しない。

表6-7 初期化スクリプトのファイル名(AIXの場合)

初期化スクリプトの種類初期化スクリプトのファイル名
/usr/bin/ksh
標準ログイン用/etc/profile
Shell起動用
個別ログイン用~/.profile
Shell起動用
(凡例)
-:該当しない。

(3) IP接続許可の設定

IP接続を許可するかどうかは,/etc/hosts.allowファイルおよび/etc/hosts.denyファイルで設定します。

デフォルトでは,すべてのIPアドレスからの接続が許可されています。/etc/hosts.denyファイルでの設定内容に応じて,/etc/hosts.allowファイルでの設定内容が変わります。必要に応じて,/etc/hosts.allowファイルを編集してください。

/etc/hosts.denyファイルによって,SSHプロトコルが拒否されている場合
状況に応じて,次のとおり/etc/hosts.allowファイルを編集してください。
/etc/hosts.allowファイルに,すでにSSHプロトコルの定義がある場合
次のとおり内容を編集してください。
in.sshd:他IPアドレス,ITRMサーバのIPアドレス
/etc/hosts.allowファイルに,SSHプロトコルの定義がない場合
次のとおり内容を追加してください。
in.sshd:ITRMサーバのIPアドレス
/etc/hosts.denyファイルによって,SSHプロトコルが拒否されていない場合
状況に応じて,次のとおり/etc/hosts.allowファイルを編集してください。
/etc/hosts.allowファイルに,すでにSSHプロトコルの定義がある場合
次のとおり内容を編集してください。
in.sshd:他IPアドレス,ITRMサーバのIPアドレス
/etc/hosts.allowファイルに,SSHプロトコルの定義がない場合
SSHプロトコルに対して,すべてのIPアドレスが許可されているため,ファイルの編集は不要です。

(4) SSH接続をするためのソフトウェアのインストール(AIXの場合)

AIXの場合,OSを新規インストールした環境では,SSH接続をするためのソフトウェアがインストールされていません。そのため,OSに付属する媒体内に収録されているソフトウェア(OpenSSH)をインストールする必要があります。

OpenSSHをインストールする手順を次に示します。

  1. OpenSSHの前提であるOpenSSLのインストールに必要なファイルを準備する。
    インストールに必要なファイルを次に示します。
    • openssl.base
    • openssl.license
    • openssl.man.en_US
  2. root権限で次のコマンドを実行してOpenSSLをインストールする。

    # smit install_latest

    格納したファイルの絶対パスやライセンスに関する同意など,必要事項を入力して,インストールを実行します。
  3. OpenSSHのインストールに必要なファイルを準備する。
    インストールに必要なファイルを次に示します。
    • openssh.base
    • openssh.man.en_US
    • openssh.msg.EN_US
    • openssh.msg.JA_JP
  4. root権限で次のコマンドを実行して,OpenSSHをインストールする。

    # smit install_latest

    格納したファイルの絶対パスやライセンスに関する同意など,必要事項を入力して,インストールを実行します。

(5) SSHの設定

管理対象のホストでSSHデーモンが自動起動する設定にしてください。また,ITRMからSSH接続するための追加の設定手順を次に示します。この手順はroot権限で実行してください。

  1. ほかのユーザーがSSH接続を使用していないことを確認する。
  2. viなどのテキストエディタで,設定ファイルを編集する。
    設定ファイルは次のファイルを使用します。
    Linuxの場合
    /etc/ssh/sshd_config
    HP-UXの場合
    /opt/ssh/etc/sshd_config
    AIXの場合
    /etc/ssh/sshd_config
    設定内容を次の表に示します。

    表6-8 SSHの設定内容

    設定項目設定値設定内容
    PermitRootLoginYesrootユーザーで認証する場合は,Yesを設定しroot接続を許可します。一般ユーザーで認証する場合は,設定は不要です。デフォルトはYesです。
    PasswordAuthenticationYesパスワード認証を許可するよう設定します。
    デフォルトはYesです。
    Protocol"2,1"または"2"使用するSSHバージョンを設定します。デフォルトはバージョン2を許可する設定です。
    RequiredAuthentications2passwordオプションが有効なOSの場合,使用する認証方法を設定します。
    デフォルトは"password"です。
    注※
    "2,1"は,バージョン1および2のどちらかを使用する場合に設定します。また,"2"はバージョン2だけを使用する場合に設定します。JP1/ITRMでは,バージョン2を使用するので,2を含めた値を設定してください。

  3. 次のコマンドを実行してSSHデーモンを再起動する。
    Linuxの場合

    /etc/rc.d/init.d/sshd restart

    HP-UXの場合

    /sbin/init.d/secsh stop
    /sbin/init.d/secsh start

    AIXの場合

    /usr/bin/stopsrc -g ssh
    /usr/bin/startsrc -g ssh

(6) 必要なコマンドの登録

(a) Linuxの場合

sudoで,root権限で実行が必要なコマンドを登録する手順の例について説明します。この手順はroot権限で実行してください。

なお,次のアカウントだけでSSH接続を使用する場合,この設定は不要です。

  1. visudoコマンドを起動する。
  2. sudoの設定に次の内容を追加する。

    JP1/ITRM接続用アカウント ホスト名 =NOPASSWD: /usr/sbin/dmidecode
    JP1/ITRM接続用アカウント ホスト名 =NOPASSWD: /usr/sbin/smartctl
    JP1/ITRM接続用アカウント ホスト名 =NOPASSWD: /sbin/multipath
    JP1/ITRM接続用アカウント ホスト名 =NOPASSWD: /sbin/shutdown

    また,/opt/DynamicLinkManager/bin/dlnkmgrコマンド,または/sbin/dlmcfgmgrコマンドがサーバ上にある場合は,さらに次の内容を追加します。

    JP1/ITRM接続用アカウント ホスト名 =NOPASSWD: /opt/DynamicLinkManager/bin/dlnkmgr
    JP1/ITRM接続用アカウント ホスト名 =NOPASSWD: /sbin/dlmcfgmgr

    このLinuxを仮想イメージテンプレートにする場合は,デプロイするときに指定するホスト名について,JP1/ITRMが接続時に使用するアカウントの組み合わせで,sudoの設定に追加してください。
    デプロイ時に使用するホスト名を特定できない場合は,ホスト名に「ALL」を指定すると,全ホストを対象にすることが可能です。
  3. 設定内容を保存する。
    記述に誤りがあると保存できません。その場合は,再度編集して保存し直してください。
(b) HP-UXの場合

RBACで必要なコマンドを登録する手順について説明します。この手順はroot権限で実行してください。

なお,次のアカウントだけでSSH接続を使用する場合,この設定は不要です。

  1. 次のコマンドを実行して,JP1/ITRM接続用アカウントにAdministratorロールを登録する。

    # roleadm assign JP1/ITRM接続用アカウント Administrator
    # cat /etc/rbac/user_role
    root:   Administrator
    JP1/ITRM接続用アカウント: Administrator

    コマンド実行後,JP1/ITRM接続用アカウントにAdministratorロールが登録されたことを確認してください。
  2. 次のコマンドを実行して,Administratorロールが実行できる操作を確認する。

    # authadm list
    Administrator: (hpux.*, *)

    「(hpux.*, *)」が表示されることを確認してください。
  3. 次のコマンドを実行して,JP1/ITRM接続用アカウントが実行できるコマンドをRBACデータベースに追加する。

    # cmdprivadm add cmd="/usr/sbin/diskinfo" ruid=0 euid=0 op=hpux.device.read
    # cmdprivadm add cmd="/opt/fcms/bin/fcmsutil" ruid=0 euid=0 op=hpux.device.read
    # cmdprivadm add cmd="/usr/sbin/shutdown" ruid=0 euid=0 op=hpux.admin.reboot

    コマンドに指定する「ruid(実ユーザーID)」および「euid(実行ユーザーID)」には,スーパーユーザー(root)のIDである0を指定してください。
  4. /usr/sbin/nwmgrコマンドが管理対象のホストにある場合は,さらに次の内容を追加する。

    # cmdprivadm add cmd="/usr/sbin/nwmgr" ruid=0 euid=0 op=hpux.network.config

    /usr/sbin/nwmgrコマンドがサーバ上にない場合,次に示すエラーが表示されます。この場合,手順4の設定は不要なので,次の手順に進んでください。

    # cmdprivadm add cmd="/usr/sbin/nwmgr" ruid=0 euid=0 op=hpux.network.config
    cmdprivadm: warning: /usr/sbin/nwmgr is not a valid command.
    Please double check to make sure this is a intended command to add into the database file.
    /usr/sbin/nwmgr::(hpux.network.config,*):0/0/-1/-1::::
    cmdprivadm added the entry to /etc/rbac/cmd_priv

  5. /etc/rbac/cmd_privファイルの末尾に,次の内容が追加されていることを確認する。

    /usr/sbin/diskinfo:dflt:(hpux.device.read,*):0/0//:dflt:dflt:dflt:
    /opt/fcms/bin/fcmsutil:dflt:(hpux.device.read,*):0/0//:dflt:dflt:dflt:
    /sbin/shutdown:dflt:(hpux.admin.reboot,*):0/0//:dflt:dflt:dflt:
    /usr/sbin/nwmgr:dflt:(hpux.network.config,*):0/0//:dflt:dflt:dflt:

(c) AIXの場合

RBACで必要なコマンドを登録する手順について説明します。この手順はroot権限で実行してください。

なお,次のアカウントだけでSSH接続を使用する場合,この設定は不要です。

  1. 必要なコマンドを特権コマンドデータベースに登録する。
    JP1/ITRMで必要なAIXの特権コマンドを次の表に示します。

    表6-9 JP1/ITRMで必要なAIXの特権コマンド

    特権コマンド必要な権限
    /usr/sbin/smtctlaix.system.config.dlpar
    /usr/sbin/saraix.system.stat
    /usr/sbin/shutdownaix.system.boot.shutdown
    /usr/sbin/acct/fwtmpaix.system.config.acct
    /usr/bin/dfaix.fs.manage
    注※
    /usr/sbin/acct/fwtmpおよび/usr/bin/dfコマンドは,特権コマンドデータベースにデフォルトで定義がないため,次の手順で定義を追加してください。
    1. 次のコマンドを実行する。
     # smit setsecattr_cmdadd
    2. Command Name,Access Authorizations,Innate Privileges,Security Flagsに次の表に示す値を設定する。

    表6-10 /usr/sbin/acct/fwtmpコマンドの設定

    項目名設定する値
    Command Name/usr/sbin/acct/fwtmp
    Access Authorizationsaix.system.config.acct
    Innate PrivilegesPV_DAC_R
    PV_DAC_X
    PV_KER_WPAR
    Security FlagsFSF_EPS

    表6-11 /usr/bin/dfコマンドの設定

    項目名設定する値
    Command Name/usr/bin/df
    Access Authorizationsaix.fs.manage
    Innate PrivilegesPV_DAC_R
    PV_DAC_X
    PV_KER_WPAR
    Security FlagsFSF_EPS

    ロケールが異なる場合,項目名の表示が異なることがあります。


  2. ITRM用のロールを追加する。
    次のコマンドを実行して,ITRMで必要な特権コマンドの実行権限を持つITRM用のロールを追加します。

    # smit mkrole

    Role NAME,AUTHORIZATIONSに次の表で示す値を設定してください。

    表6-12 ITRM用のロールの設定

    項目名設定する値
    Role NAME任意のロール名
    AUTHORIZATIONSaix.system.config.dlpar
    aix.system.stat
    aix.system.boot.shutdown
    aix.system.config.acct
    aix.fs.manage
    ロケールが異なる場合,項目名の表示が異なることがあります。
  3. ITRM接続用アカウントにロールを設定する。
    次のコマンドを実行して,ITRM接続用アカウントに手順2で追加したロールの設定と,ログイン時のデフォルトのロールを設定します。

    # chuser roles=ITRM用ロール default_roles=ITRM用ロール JP1/ITRM接続用アカウント

    また,次のコマンドを実行して,設定を反映します。

    # setkst

(7) kudzuサービスの無効化

管理対象が仮想ホスト上のRed Hat Enterprise Linux 5の場合,次のコマンドを実行して,kudzuサービスを無効にしてください。この手順はroot権限で実行してください。

/sbin/chkconfig --level 345 kudzu off

なお,管理対象とするホストのOSが次の場合,この手順は不要です。

(8) ネットワーク設定を特定のNICに固定する指定の無効化

管理対象が仮想ホスト上のLinuxの場合,次の操作を実行して,ネットワーク設定を特定のNICに固定する指定を無効にしてください。この手順はroot権限で実行してください。

  1. HWADDRの設定を解除するために,ネットワークの設定ファイル(/etc/sysconfig/network-scripts/ifcfg-ネットワークアダプタ名)の内容を確認する。
  2. 各ネットワークの設定ファイルでHWADDRが有効の場合,設定を解除する。
  3. 管理対象が仮想ホスト上のRed Hat Enterprise Linux 6の場合,udev機能を無効にするために,次のファイルをほかのディレクトリに退避する。
    • /lib/udev/rules.d/75-persistent-net-generator.rules
    • /etc/udev/rules.d/70-persistent-net.rules
  4. 仮想ホストを再起動する。
  5. ネットワーク設定を変更したNICを使用した通信ができることを確認する。

(9) OSの構成についての注意事項

OSの構成についての注意事項を次に示します。

注※
Linuxの場合にだけ該当する注意事項です。HP-UXおよびAIXは該当しません。