ユーザー・アカウント制御
ユーザー・アカウントには変更できる属性があります。
それぞれのユーザー・アカウントごとに、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.default の user エントリーを変更します。
拡張ユーザー・パスワード属性については、パスワードを参照してください。
ユーザー属性の影響を受ける、ログインに関連したコマンド
ユーザー属性 | コマンド |
---|---|
account_locked | rexec、rsh、rcp、ssh、scp、rlogin、telnet、ftp、login |
login | コンソールからのログインにのみ影響します。 login 属性の値は、リモート・ログイン・コマンド、リモート・シェル・コマンド、またはリモート・コピー・コマンド (rexec、rsh、 rcp、ssh、scp、rlogin、telnet、および ftp) には影響しません。 |
logintimes | rexec、rsh、rcp、ssh、scp、rlogin、telnet、ftp、login |
rlogin | リモート・ログイン・コマンド、特定のリモート・シェル・コマンド、および特定のリモート・コピー・コマンド (ssh、scp、rlogin、および telnet) にのみ影響します。 |
loginretries | rexec、rsh、rcp、ssh、scp、rlogin、telnet、ftp、login |
/etc/nologin | rexec、rsh、rcp、ssh、scp、rlogin、telnet、ftp、login |
rcmds=deny | rexec、rsh、rcp、ssh、scp |
rcmds=hostlogincontrol and hostsdeniedlogin=<target_hosts> | rexec、rsh、rcp、ssh、scp、rlogin、telnet、ftp、login |
ttys = !REXEC、!RSH | rexec、rsh、rcp、ssh、scp、rlogin、telnet、ftp、login |
ttys = !REXEC、!RSH、/dev/pts | rexec、rsh |
ttys = !REXEC、!RSH、ALL | rexec、rsh |
expires | rexec、rsh、rcp、ssh、scp、rlogin、telnet、ftp、login |