root 役割では、初期ユーザーにすべての管理権限が与えられます。このユーザーは root として、役割、権利プロファイル、特定の特権などの管理権利と承認を信頼できるユーザーに割り当てることができます。このセクションでは、このようなユーザーが各自に割り当てられている権利を使用する方法を説明します。
管理タスクを実行するには、端末ウィンドウを開いて次のオプションのいずれかを選択します。
sudo を使用する場合は、sudo コマンドを入力します。
sudo コマンドを使い慣れている管理者の場合は、sudoers ファイルで管理者に割り当てられている管理コマンドの名前を使用してこのコマンドを実行します。詳細は、sudo(1m) および sudoers(4) のマニュアルページを参照してください。
タスクにスーパーユーザー特権が必要な場合は、root になります。
% su - Password: xxxxxxxx #
タスクが役割に割り当てられている場合、そのタスクを実行できる役割を引き受けます。
次の例では、監査構成の役割になります。この役割には、Audit Configuration 権利プロファイルが含まれています。管理者からこの役割のパスワードを受け取っています。
% su - audadmin Password: xxxxxxxx #
このコマンドを入力したシェルは、プロファイルシェルになりました。このシェルでは、auditconfig コマンドを実行できます。プロファイルシェルの詳細については、プロファイルシェルと権利の検証を参照してください。
自身のタスクがユーザーとして自身に直接割り当てられ、使用例 71で説明しているようにプロファイルシェルを実行していない場合は、次のいずれかの方法でプロファイルシェルを作成してください。
pfbash コマンドを使用して、管理権利を評価するシェルを作成します。
次の例では、Audit Configuration 権利プロファイルがユーザーに直接割り当てられています。次のコマンドセットにより、pfbash プロファイルシェルで監査事前選択値と監査ポリシーを表示できます。
% pfbash # auditconfig -getflags active user default audit flags = ua,ap,lo(0x45000,0x45000) configured user default audit flags = ua,ap,lo(0x45000,0x45000) # auditconfig -getpolicy configured audit policies = cnt active audit policies = cnt
1 つの管理コマンドを実行するには、pfexec コマンドを使用します。
次の例では、Audit Configuration 権利プロファイルが認証権利プロファイルとしてユーザーに直接割り当てられています。特権付きコマンドの名前を指定した pfexec コマンドを使用して、このプロファイルからその特権付きコマンドを実行できます。たとえば、ユーザーの事前選択監査フラグを表示できます。
% pfexec auditconfig -getflags
Enter password: Type your user password
active user default audit flags = ua,ap,lo(0x45000,0x45000)
configured user default audit flags = ua,ap,lo(0x45000,0x45000)
一般に、権利に含まれている別の特権付きコマンドを実行するには、その特権付きコマンドを入力する前に、pfexec を再度入力する必要があります。詳細は、pfexec(1) のマニュアルページを参照してください。パスワードキャッシュを使用して構成されている場合は、使用例 41に示すように、構成可能な期間内ではパスワードを入力せずに後続のコマンドを実行できます。
0 の UID を持つ root でない場合は、デフォルトでは、システムファイルを編集できません。ただし、solaris.admin.edit/path-to-system-file 承認が割り当てられている場合は、system-file を編集できます。たとえば solaris.admin.edit/etc/security/audit_warn 承認が割り当てられている場合は、pfedit コマンドを使用して audit_warn ファイルを編集できます。
# pfedit /etc/security/audit_warn
詳細は、 pfedit (4) のマニュアルページを参照してください。このコマンドは、すべての管理者が使用できます。
使用例 41 役割の使用を容易にするために認証をキャッシュするこの例では、監査構成を管理するための役割を管理者が構成しますが、ユーザーの認証をキャッシュすることで使用が容易になります。最初に、管理者は役割を作成して割り当てます。
# roleadd -K roleauth=user -K profiles="Audit Configuration" audadmin # usermod -R +audadmin jdoe
jdoe が、その役割に切り替えるときに –c オプションを使用した場合は、auditconfig の出力が表示される前にパスワードが必要になります。
% su - audadmin -c auditconfig option
Password: xxxxxxxx
auditconfig output
認証がキャッシュされない場合は、jdoe がコマンドを再度実行するときにパスワードプロンプトが表示されます。
管理者が、認証のキャッシュを有効にする su スタックを保持するファイルを、pam.d ディレクトリに作成します。認証をキャッシュするときには、初回はパスワードが必要ですが、その後は一定の時間が経過するまでは、パスワードは不要です。
# pfedit /etc/pam.d/su ## Cache authentication for switched user # auth required pam_unix_cred.so.1 auth sufficient pam_tty_tickets.so.1 auth requisite pam_authtok_get.so.1 auth required pam_dhkeys.so.1 auth required pam_unix_auth.so.1
このファイルを作成したあと、管理者は、各エントリにタイポ、脱字、または繰り返しがないかチェックします。
管理者は、前の su スタック全体を提供する必要があります。pam_tty_tickets.so.1 モジュールにはキャッシュが実装されています。PAM の詳細については、pam_tty_tickets(5) および pam.conf(4) のマニュアルページとOracle Solaris 11.3 での Kerberos およびその他の認証サービスの管理 の 第 1 章, プラグイン可能認証モジュールの使用を参照してください。
管理者が su PAM ファイルを追加してシステムをリブートしたあと、audadmin 役割を含むすべての役割は、一連のコマンドを実行しているときに 1 回だけパスワードの入力を要求されます。
% su - audadmin -c auditconfig option Password: xxxxxxxx auditconfig output % su - audadmin -c auditconfig option auditconfig output ...使用例 42 root 役割になる
次の例では、最初のユーザーが root 役割になり、その役割のシェルで特権を一覧表示します。
% roles
root
% su - root
Password: xxxxxxxx
# Prompt changes to root prompt
# ppriv $$
1200: pfksh
flags = <none>
E: all
I: basic
P: all
L: all
特権については、プロセス権管理および ppriv(1) のマニュアルページを参照してください。
使用例 43 ARMOR 役割の引き受けこの例では、ユーザーは管理者が割り当てた ARMOR 役割を引き受けます。
端末ウィンドウで、ユーザーは割り当てられている役割を確認します。
% roles fsadm sysop
その後ユーザーは fsadm 役割を引き受け、ユーザーパスワードを入力します。
% su - fsadm Password: xxxxxxxx #
su - rolename コマンドは、端末のシェルをプロファイルシェルに変更します。これでユーザーは、この端末ウィンドウで fsadm 役割になりました。
この役割で実行できるコマンドを確認するため、ユーザーは 権利プロファイルの一覧表示の手順に従います。