ユーザー・アカウント制御

ユーザー・アカウントには変更できる属性があります。

それぞれのユーザー・アカウントごとに、1 組の属性が関連付けられます。 これらの属性は、mkuser コマンドを使用してユーザーを作成するときに、デフォルト値から作成されます。 これらの属性は、chuser コマンドを使用して変更することができます。 以下は、ログインを制御し、パスワードの品質には関連しないユーザー属性です。

account_locked
アカウントを明示的にロックする必要がある場合、この属性を True に設定できます。デフォルトは False です。
admin
True に設定すると、このユーザーはパスワードを変更できません。 変更できるのは管理者だけです。
admgroups
このユーザーが管理権限を持つグループをリストします。 これらのグループに関しては、ユーザーはメンバーを追加したり削除したりできます。
auth1
ユーザー・アクセス権限を付与するのに使用される認証方式。 通常は SYSTEM に設定されます。その場合、より新しいメソッドが使用されます。
注: auth1 属性は推奨されない属性であり、使用すべきではありません。
auth2
auth1 で指定されたメソッドによってユーザーが認証された後に実行されるメソッド。 システムへのアクセスをブロックすることはできません。 通常は NONE に設定されます。
注: auth2 属性は推奨されない属性であり、使用すべきではありません。
daemon
このブール・パラメーターは、ユーザーが startsrc コマンドを使用してデーモンまたはサブシステムを開始できるようにするかどうかを指定します。 また、cron および at 機能の使用も制限します。
login
このユーザーがログインできるかどうかを指定します。 ログインが成功すると、unsuccessful_login_count 属性が 0 の値 (loginsuccess サブルーチンから) にリセットされます。
logintimes
ユーザーがいつログインできるかを制限します。 例えば、ユーザーによるシステムへのアクセスを正規の勤務時間内だけに制限します。
registry
ユーザー・レジストリーを指定します。 システムに、ユーザー情報として、NIS、LDAP、または Kerberos のような 代替レジストリーについて通知するために使用できます。
rlogin
指定されたユーザーが rlogin コマンドまたは telnet コマンドを使用してログインできるかどうかを指定します。このログイン属性は、リモート・ログインを制御するだけです。個別のリモート・コマンドを実行する機能の制御については、rcmds を参照してください。
su
他のユーザーが su コマンドを使用してこの ID に切り替えることができるかどうかを指定します。
sugroups
このユーザー ID を切り替えることができるグループを指定します。
ttys
ある一定のアカウントを物理的に保護されている領域に制限します。
expires
学習者アカウントやゲスト・アカウントを管理します。 これを使用して、アカウントを一時的にオフにすることも可能です。
loginretries
ユーザー ID がシステムによってロックされる前に、連続して失敗するログインの試行の最大数を指定します。 失敗した試行は /etc/security/lastlog ファイルに記録されます。
umask
ユーザーの初期 umask を指定します。
rcmds
指定されたユーザーが、rsh コマンドまたは rexec コマンドを使用して個別コマンドを実行できるかどうかを指定します。値 allow は、rsh コマンドまたは rexec コマンドを使用してリモート側でコマンドを実行できることを示します。値 deny は、リモート側でコマンドを実行できないことを示します。値 hostlogincontrol は、実行するリモート・コマンドが hostallowedlogin 属性および hostsdeniedlogin 属性によって制御されることを示します。リモート・ログインの制御については、 rlogin 属性を参照してください。
hostallowedlogin
ユーザーのログインを許可するホストを指定します。 この属性は、ユーザー属性が複数のホストによって共有されるネットワーク環境で使用されることを目的としています。
hostsdeniedlogin
ユーザーのログインを許可しないホストを指定します。 この属性は、ユーザー属性が複数のホストによって共有されるネットワーク環境で使用されることを目的としています。
maxulogs
ユーザー当たりのログインの最大回数を指定します。 ユーザーがログインの最大許容回数に達すると、ログインは拒否されます。

ユーザー属性の完全セットは、/etc/security/user/etc/security/limits/etc/security/audit/config、および /etc/security/lastlog ファイルに定義されます。 mkuser コマンドを使用するユーザー作成のデフォルトは、/usr/lib/security/mkuser.default ファイルで指定されます。mkuser.default ファイルには、監査クラスのほかに、/etc/security/user ファイルおよび /etc/security/limits ファイルの default スタンザの一般デフォルトをオーバーライドするオプションのみを指定する必要があります。 これらのうちのいくつかの属性がユーザーのログイン方法を制御しますが、 これらの属性は、指定された条件のもとで、 ユーザー・アカウントを自動的にロックする (今後のログインを防止する) よう構成することができます。

ログイン試行が何回も失敗したためにユーザー・アカウントがシステムによってロックされると、システム管理者が /etc/security/lastlog ファイル内のそのユーザーの unsuccessful_login_count 属性をログイン再試行回数より小さい値に再設定するまで、そのユーザーはログインできません。これは chsec コマンドを次のように使用して行うことができます。

chsec -f /etc/security/lastlog -s username -a
unsuccessful_login_count=0

デフォルトを変更するには、chsec コマンドを使用して、/etc/security/user ファイルまたは /etc/security/limits ファイルなど、該当するセキュリティー・ファイルのデフォルトのスタンザを編集します。 多くのデフォルトは、標準の動作をするように定義されています。 新規ユーザーが作成されるたびに設定される属性を明示的に指定するには、/usr/lib/security/mkuser.defaultuser エントリーを変更します。

拡張ユーザー・パスワード属性については、パスワードを参照してください。

ユーザー属性の影響を受ける、ログインに関連したコマンド

以下の表は、ログインを制御する属性と影響を受けるコマンドをリストしたものです。
ユーザー属性 コマンド
account_locked rexecrshrcpsshscprlogintelnetftplogin
login コンソールからのログインにのみ影響します。 login 属性の値は、リモート・ログイン・コマンド、リモート・シェル・コマンド、またはリモート・コピー・コマンド (rexecrshrcpsshscprlogintelnet、および ftp) には影響しません。
logintimes rexecrshrcpsshscprlogintelnetftplogin
rlogin リモート・ログイン・コマンド、特定のリモート・シェル・コマンド、および特定のリモート・コピー・コマンド (sshscprlogin、および telnet) にのみ影響します。
loginretries rexecrshrcpsshscprlogintelnetftplogin
/etc/nologin rexecrshrcpsshscprlogintelnetftplogin
rcmds=deny rexecrshrcpsshscp
rcmds=hostlogincontrol and hostsdeniedlogin=<target_hosts> rexecrshrcpsshscprlogintelnetftplogin
ttys = !REXEC、!RSH rexecrshrcpsshscprlogintelnetftplogin
ttys = !REXEC、!RSH、/dev/pts rexecrsh
ttys = !REXEC、!RSH、ALL rexecrsh
expires rexecrshrcpsshscprlogintelnetftplogin
注: rsh は、リモート・コマンドの実行のみを不許可にします。 リモート・ログインは許可されます。