IBM Support

【TF】【IBMPower】【AIX】Smart Answer FAQ集 - AIXのハードニング -

News


Abstract

Smart Answerでよく聞かれるAIXのハードニング関連の質問を中心に、FAQ集としてまとめました。

Content

Smart Answerでよく聞かれるAIXのハードニング関連の質問を中心に、FAQ集としてまとめました。
不要なサービス、デーモンの停止
システムの要件によって必要なサービスは異なります。
ご使用のシステムで必要かどうかを判断していただき、不要であれば止めていただいて問題はありません。
不要なサービスを停止する場合、該当ファイルにおいて停止対象のサービスをコメントアウトしてください。
サービスの停止方法
/etc/inetd.conf、/etc/rc.nfsや/etc/rc.tcpipでは停止対象のサービスをコメントアウトします。
/etc/inetd.confファイルでftpをコメントアウト
# vi /etc/inetd.conf
#ftp stream tcp6 nowait root /usr/sbin/ftpd ftpd ftpの行頭に#を挿入しコメントアウトする
/etc/inittabのサービスを停止する場合は、chitabコマンドで停止対象サービスのactionフィールドをoffに変更します。
/etc/inittabのpiobeをoffにする
# chitab "piobe:2:off:/usr/lib/lpd/pio/etc/pioinit > /dev/null 2>&1"
以下は主なサービスとそれに必要なデーモンの説明です。
テスト用サービス:chargen,daytime,discard,echo
設定ファイル
/etc/inetd.conf
通常は不要なので使用不可にします。
CDE:cmsd,dtspc,ttdbserver,dt,dt_nogb
設定ファイル
/etc/inetd.conf :cmsd,dtspc,ttdbserver
/etc/inittab :dt,dt_nogb
CDEを使用しない場合は使用不可にします。
使用不可にするにはdtconfigコマンドかsmit dtconfigを使用します。
# dtconfig -d
または
# smit dtconfig
システム・ログイン・ユーザー・インターフェースの選択 コマンド行
この作業を実行後、システムを再起動します。
RPC:keyserv,portmap
設定ファイル
/etc/rc.nfs :keyserv
/etc/rc.tcpip :portmap
RPCサービスを使用する場合、portmapは必須です。
セキュアRPCを使用しない場合はkeyservを使用不可にします。
NFS:quotad,pcnfsd,sprayd,rcnfs,automountd,biod,nfsd,rpc.lockd,rpc.statd,rpc.mountd
設定ファイル
/etc/inetd.conf :quotad,pcnfsd,sprayd
/etc/inittab :rcnfs
/etc/rc.nfs :automountd,biod,nfsd,rpc.lockd,rpc.statd,rpc.mountd
pcnfsdはPC-NFSを使用しない場合は使用不可にします。
spraydはNFSを使用しない場合は使用不可にします。
quotadはNFSクライアントでquotaコマンドを使用しない場合は使用不可にします。
automountdは自動マウントの機能を使用しない場合は使用不可にします。
NFSサーバーでは、nfsd,rpc.lock,rpc.statd,rpc.mountdが必要です。
NFSクライアントでは、biod1),rpc.lockd,rpc.statdが必要です。
NFSサーバー、クライアントともにportmapが必要です。
1)biodは、AIX 5.3より実質的な役割を果たさなくなりました。現在は後方互換性のために用意されています。
 現在使用していないことが確認できるのであれば、停止することが出来ます。
NIS:prc.yppasswdd,ypupdated
設定ファイル
/etc/rc.nfs :rpc.yppasswdd,ypupdated
NISを使用しない場合は使用不可にします。
リモートコマンド用サービス:exec,finger,netstat,ntalk,talk,rexd,rstatd,rusersd,rwalld,systat,rwhod
設定ファイル
/etc/inetd.conf :exec,finger,netstat,ntalk,talk,rexd,rstatd,rusersd,rwalld,systat
/etc/rc.tcpip :rwhod
通常は不要なので使用不可にします。
リモートログイン:klogin,kshell,login.shell,telnet
設定ファイル
/etc/inetd.conf :klogin,kshell,login,shell,telnet
klogin,kshellはkerberosを使用する場合は使用可能にします。
リモートログインが必要な場合、login,shell,telnetは使用不可にし、セキュア・シェルを使用します。
メール:sendmail,comsat,imap2,pop3
設定ファイル
/etc/inetd.conf :comsat,imap2,pop3
/etc/rc.tcpip :sendmail
メールサーバーとして使用しない場合は使用不可にします。
NIM:bootps,tftp
設定ファイル
/etc/inetd.conf :bootps,tftp
NIMを使用しない場合は使用不可にします。
ネットワーク:ftp,uucp,autoconf,dhcpcd,dhcpsd,dhcprd,gated,routed,mrouted,named,ndp-host,ndp-router
設定ファイル
/etc/inetd.conf :ftp,uucp
/etc/rc.tcpip :autoconf6,dhcpcd,dhcpsd,dhcprd,gated,routed,mrouted,named,ndp-host,ndp-router
uucpはUUCPアプリケーションを使用しない場合は使用不可にします。
IPv6を使用しない場合は、autoconf6,ndp-host,ndp-routerを使用不可にします。
DHCPを使用しない場合は、dhcpcd,dhcpsd,dhcprdを使用不可にします。
ルーターとして使用しない場合は、gated,routed,mroutedを使用不可にします。
タイムサービス:time,timed,xntpd
設定ファイル
/etc/inetd.conf :time
/etc/rc.tcpip :timed,xntpd
時刻同期サービスが必要な場合はxntpdを使用し、time,timedは使用不可にします。
印刷:pd,piobe,qdaemon
設定ファイル
/etc/inittab :lpd,piobe,qdaemon
システムでプリンターを構成していない場合はlpd,piobeは使用不可にします。
プリンターが必要ない場合はqdaemonも使用不可にします。
SNMP:snmpd,dpid2,hostmibd,snmpmibd,aixmibd,muxatmd
設定ファイル
/etc/rc.tcpip :snmpd,dpid2,hostmibd,snmpmibd,aixmibd,muxatmd
SNMPを使用しない場合は使用不可にします。
SNMPv3を使用する場合は、dpid2は使用不可にします。
/etc/inittabのその他のサービス
mkatmpvc,atmsvcd :ATMを使用するときは必要です。
load64bit :64bitアプリケーションを使用するときは必要です。
sniiinst,ntbl_reset,rcml :High Performance Switchアダプターをサポートするために必要です。
shdaemon :システム・ハング・デーモンを起動します。マニュアル:システムハングの管理を参照してください。
naudio :オーディオを使用するために/dev/paud0デバイスを使用可能にするときは必要です。
itess,httpdlite :文書サービスを使用するときは必要です。
以下のサービスはシステムが稼動するための重要なサービスのため停止しないでください。
停止しないほうがよいサービス
init :初期ランレベルを指定します。
brc :ブート処理を行うのに必要です。
powerfail :電源障害時の動作を指定します。
tunables :ネットワークやVMMなどのオプションを/etc/tunables/nextbootファイルに設定された値に設定します。
rc :マルチユーザーモードに移行します。
fbcheck :OS起動時にfirstbootファイルがあれば実行します。
srcmstr :SRC(System Resource Controller)を起動します。
rctcpip :TCPIP関連のサービスを起動します。
rcnfs :NFS関連のサービスを起動します。
cron :CRONスケジューラーを起動します。
uprintfd :カーネル・メッセージの検索、変換、フォーマット、およびプロセス制御端末への書き出しを行います。
l2,l3,l4,l5,l6,l7,l8,l9 :それぞれのランレベルごとにプロセス起動を行うために必要です。
logsymp :システムダンプに関する処理を行います。
perfstat :Perfstat APIのキャッシュを初期化するために必要です。
diagd :定期的にシステム診断を行います。
不要なユーザー、デフォルトユーザーの削除
AIXインストール時に作成されるユーザー/グループはシステムの要件によっては削除可能です。
要件によって削除可能なユーザー/グループ
uucp,nuucp/uucp
Unix to Unix Copy Programを使用しない場合は削除可能です。
lp,lpd/printq
印刷機能を使用しない場合は削除可能です。
guest
guestアカウントが必要でない場合は削除可能です。
ipsec
IPセキュリティの機能を使用しない場合は削除可能です。
invscout
Inventory Scoutの機能を使用しない場合は削除可能です。HMCによって管理されているLPAR上のAIXでは削除しないでください。
imnadm
文書サービスを使用しない場合は削除可能です。
snapp
SNAPP(System Networking, Analysis and Performance Pilot)の機能を使用しない場合は削除可能です。SNAPPはPalmデバイスからシステムを管理する機能です。
デフォルトで作成されるユーザーを削除した場合、削除したユーザーがオーナーであるファイルセットの再導入・更新を行おうとすると失敗することがあります。
ファイルセットを再導入・更新するためには削除したユーザーを再作成する必要があります。
その他のデフォルトで作成される以下のユーザーは削除しないでください。
adm,bin,daemon,nobody,root,sys
パスワード関連
/etc/security/userファイルのdefaultスタンザを使用することで、全てのユーザーに対して共通の制限を設定することが可能です。
個別のユーザーに対して制限する場合は制限をするユーザーのスタンザを編集、もしくはSMITのChange / Show Characterristics of a Userから設定します。
設定できるパスワード制限
属性 デフォルト値 最大値 説明
dictionlist パスワードに使用できない単語を記述したファイル
histexpire 0 260 パスワードが再利用できるまでの週数
histsize 0 50 許可されるパスワードの反復回数
maxage 0 52 パスワードが変更される必要が生じるまでの最大週数
maxexpired -1 52 有効期限が切れたパスワードをユーザーが変更できるmaxageを超えた最大週数
maxrepeats 8 8 パスワードで反復可能な文字の最大数
minage 0 52 パスワードが変更可能になるまでの最小週数
minalpha 0 8 パスワードに必要な英字の最小数
mindiff 0 8 パスワードに入れる必要のある固有文字の最小数
minlen 0 8 パスワードの最小の長さ
minother 0 8 パスワードで必要な非英字の最小数
pwdwarntime 0 システムが、パスワード変更が必要であるという警告を出すまでの日数
AIXで有効なパスワードの桁数は8桁です。
8桁以上のパスワードを与えてもエラーにはなりませんが、passwdコマンドが認識するのは最初の8桁までです。
AIX5.2以前ではユーザー名/グループ名は最大8文字までとなります。AIX5.3ではデフォルトでは8文字、最大255文字となります。
AIX5.3でユーザー名/グループ名の最大文字数を変更する
以下はユーザー名/グループ名を最大20文字に変更する手順です。
1-a. SMITから行う場合
 SMITメインメニュー → System Environment → Change / Show Characteristics of Operating System もしくは smit chgsys
 Maximum login name length at boot time [21]
1-b. コマンドラインから行う場合
 # chdev -l sys0 -a max_logname=21
 sys0 changed
 確認にはlsattrコマンドを使用します。
 # lsattr -El sys0 -a max_logname
 max_logname 21 Maximum login name length at boot time True
 注:指定する数字は末端のNULL文字を含む数字を指定します。
2. 設定変更を反映させるためAIXを再起動します。
 最大文字数を増やしてユーザーを作成した後で最大文字数を減らす場合には注意が必要です。
 ユーザー名が変更後の最大文字数より多いユーザーが存在していても変更は警告メッセージなしで行われます。
 最大文字数より多いユーザー名のままAIXの再起動を行い変更が反映されると、そのユーザーはログイン不可能になります。
 AIXのデフォルトユーザーにパスワードを設定することは可能です。
 パスワードが設定されているかどうかは、/etc/passwdファイルの2番目のエントリーの値と/etc/security/passwdファイルのpassword属性で判断できます。
 /etc/passwdと/etc/security/passwd
 /etc/passwdファイルの2番目のエントリーの値は以下の意味を持ちます。
  • * は該当ユーザーはログイン不可であることを示します。
  • ! は/etc/security/passwdファイルにpasswordの属性があることを示します。
 /etc/security/passwdファイルのpassword属性には3つの状態があります。
  • 暗号化されたパスワード :パスワード設定済み
  • 空白 :パスワードなし
  • * :このユーザーでのログイン不可(デフォルト値) 
 例:
 /etc/passwd
 bin:!:2:2::/bin: ← /etc/security/passwdにpasswordの属性がある
 user1:*:202:1::/home/user1:/usr/bin/ksh ← ログイン不可
 user2:!:202:1::/home/user1:/usr/bin/ksh ← /etc/security/passwdにpasswordの属性がある
 user3:!:202:1::/home/user1:/usr/bin/ksh ← /etc/security/passwdにpasswordの属性がある
 /etc/security/passwd
 bin:
 password = * ← binでのログイン不可
 user1のスタンザ無し
 user2:
 password = fH7tFJOXNGJBQ ← 暗号化されたパスワードが設定されている
 user3:
 password = ← パスワードなし
  • binは/etc/security/passwdファイルのpassword属性でログイン不可に設定
  • user1は/etc/passwdファイルでログイン不可に設定
  • user2はパスワードを使用してログイン可能
  • user3はパスワードなしでログイン可能
 デフォルトユーザーは/etc/security/passwdファイルで password = * となっているためログイン不可ですが、パスワードを設 定することによりログイン可能になります。
 これらのユーザーを使用してログインすることは考慮されていないので、パスワードを設定した場合には/etc/passwd, /etc/security/passwd以外の場所でログイン不可に設定を行う必要があります。
ログイン不可の設定
A. SMITから行う場合
  1. SMIT メインメニュー → Security & Users → Users → Change / Show Characteristics of a User もしくは smit chuser
  2. 変更したいユーザー名を入力
  3. 以下の値に変更
    Another user can SU TO USER? false
    User can LOGIN? false
    User can LOGIN REMOTELY(rsh,tn,rlogin)? false
    Password MAX, AGE [0]
    Password MIN, AGE [0]
B. コマンドラインから行う場合
# chuser login=false rlogin=false su=false maxage=0 minage=0 ユーザー名
確認には/etc/security/userファイルを参照します。
該当ユーザーのスタンザに以下の属性が追加されていることを確認してください。
login=false
rlogin=false
su=false
maxage=0
minage=0

[{"Type":"MASTER","Line of Business":{"code":"LOB08","label":"Cognitive Systems"},"Business Unit":{"code":"BU058","label":"IBM Infrastructure w\/TPS"},"Product":{"code":"SWG10","label":"AIX"},"ARM Category":[{"code":"a8m0z000000cw0aAAA","label":"APARS-\u003EAIX 7.2 environment"}],"ARM Case Number":"","Platform":[{"code":"PF025","label":"Platform Independent"}],"Version":"All Versions"}]

Document Information

Modified date:
24 May 2023

UID

ibm16851837