su コマンド

目的

セッションに関連するユーザー ID を変更します。

構文

su [ - ] [ 名前 [ 引数 ... ]]

説明

su コマンドは、ユーザー資格情報を root ユーザーまたは Name パラメーターで指定されたユーザーのユーザー資格情報に変更し、新しいセッションを開始します。 ユーザー名に、分散コンピューティング環境 (DCE) のセル仕様を組み込む場合があります。
注: root ユーザーは、DCE ユーザーへの切り替え時に DCE 認証を満たす必要はありません。 この場合、ユーザーの DCE 資格情報は不要です。
Arguments パラメーターで指定されたフラグまたはパラメーターなどの引数は、Name パラメーターで指定されたユーザー用のログイン・シェルと関連付けされていなければなりません。 これらの引数は、指定されたユーザーのログイン・シェルに渡されます。 例えば、ユーザーのログイン・シェルがFred/usr/bin/cshの場合は、 -f フラグなど、 csh コマンドの任意のフラグを組み込むことができます。 su コマンドを実行すると、-f フラグが csh コマンドに渡されます。 csh コマンドを実行すると、-f フラグは .cshrc 始動スクリプトを省略します。
注: domainlessgroups 属性が /etc/secvars.cfg ファイルに設定されていて、ユーザーが Lightweight Directory Access Protocol (LDAP) ドメインまたはファイル・ドメインに属している場合、 すべてのグループ ID は、LDAP ドメインおよびファイル・ドメインからフェッチされます。

以下の機能が、su コマンドで実行されます。

項目 説明
アカウントの検査 ユーザー・アカウントが存在すること、ユーザー・アカウントが su コマンドに対し使用可能であること、現行ユーザーが su コマンドでこのアカウントに切り替えが許可されているグループ内にあること、およびそのユーザー・アカウントが現行制御端末から使用できることを確認します。
ユーザー認証 システム定義されたユーザー用の 1 次確認メソッドを使用して、ユーザー ID を確認します。 パスワードが期限切れである場合は、ユーザーは新しいパスワードを与えなければなりません。
クレデンシャルの確定 ユーザー・データベース内の値を使用して、初期ユーザー・クレデンシャルを確定します。 これらのクリデンシャルは、システム上でのユーザーのアクセス権と責任能力を定義します。
セッション開始 - フラグが指定されると、su コマンドはユーザー・データベース内の値、および /etc/environment ファイルの値を基にしてユーザー環境を初期化します。 - フラグが使用されないと、su コマンドはディレクトリーを変更しません。

これらの機能は、上記の順序で実行されます。 ある機能が異常終了すると、次の機能は実行されません。 これらの機能のセマンティクスについては、 ckuseracctckuserIDauthenticatesetpcred、 および setpenv の各サブルーチンを参照してください。

前のセッションを復元するには, 次のように入力してくださいexitまたは、Ctrl-D キー・シーケンスを押します。 このアクションは、su コマンドによって呼び出されたシェルを終了し、前のシェル、前のユーザー ID、前の環境に戻します。

su コマンドが /usr/bin/tsh シェル、つまりトラステッド・シェルから実行された場合は、ユーザーはシェルを終了します。 su コマンドは、制御端末のセキュリティー特性を変更しません。

su コマンドが実行されるたびに、/var/adm/sulog ファイル内にエントリーが作成されます。 /var/adm/sulog ファイルは、日付、時刻、システム名、ログイン名の情報を記録します。 さらに /var/adm/sulog ファイルは、そのログインの試行が成功したかどうかも記録します。 + (正符号) はログインが成功したことを示し、- (負符号) はログインが成功しなかったことを示します。

注: スー コマンドを正常に使用すると、ユーザーの RLogin 属性と ログイン 属性の両方が /etc/security/user に設定されている場合にのみ、 /etc/security/lastlog ファイル内の ログイン・カウントが正常に完了しません 属性がリセットされます。 それ以外の場合は、su コマンドは、unsuccessful_login_count をリセットしません。これは、管理者がユーザー・アカウントの問題を修正するために su コマンドを使用することがよくあるためです。 ユーザーは、ローカルまたはリモートのログインを用いてこの属性をリセットできます。

フラグ

項目 説明
- ユーザーが login コマンドを使ってシステムにログインしたかのような処理環境を設定するように指定します。 新しいシェルには、現在の環境は伝搬されません。
注: この動作は、Name パラメーターの前にフラグ・オプションが許可されている代替 UNIX シェル環境との互換性を目的としています。

セキュリティー

su コマンドは、サービス名 su の PAM 使用可能アプリケーションです。 認証に PAM を使用するシステム規模の構成は、 /etc/security/login.cfgusw スタンザにある auth_type 属性の値を、root ユーザーと同じ PAM_AUTH に変更することにより、設定されます。

PAM が使用可能な場合に使用される認証メカニズムは、 /etc/pam.conf内の su サービスの構成によって異なります。 su コマンドには、 authaccountpassword、および session モジュール・タイプの /etc/pam.conf エントリーが必要です。 suコマンドが PAM 認証で標準的なAIX®と同様の動作をするためには、 'pam_allowrootモジュールで十分であり、'authと 'accountsu サービススタックの両方でpam_aix の前に呼び出されなければならない。 /etc/pam.conf における su サービス用の推奨構成を次にリストします。
#
# AIX su configuration
#
su auth sufficient /usr/lib/security/pam_allowroot
su auth required /usr/lib/security/pam_aix

su account sufficient /usr/lib/security/pam_allowroot
su account required /usr/lib/security/pam_aix

su session required /usr/lib/security/pam_aix

su password required /usr/lib/security/pam_aix
RBACユーザーおよびTrustedAIXユーザーに注意:このコマンドは特権操作を実行できます。 特権命令を実行できるのは特権ユーザーのみです。 権限と特権の詳細については、セキュリティの特権コマンドデータベースを参照してください。 このコマンドに関連した特権および権限のリストについては、lssecattr コマンドまたは getcmdattr サブコマンドの項を参照してください。
このコマンドの全機能を使用するためには、役割には accessauths のほかに、aix.security.su 権限も必要です。
TrustedAIXシステムでは、suコマンドが-フラグ付きで起動された場合、感度ラベルと完全性ラベルの両方について、以下の条件が満たされていなければならない:
  • 現行ユーザーの最大クリアランスは、新規ユーザーの最大クリアランスより優勢でなければならない。
  • 新規ユーザーの最小クリアランスは、現行ユーザーの最小クリアランスより優勢でなければならない。
  • 現行ユーザーの有効なクリアランスは、新規ユーザーの最大クリアランスより劣勢であり、新規ユーザーの最小クリアランスより優勢でなければならない。

  1. root ユーザー権限を取得するには、以下のいずれかのコマンドを入力します。
    su
    このコマンドは、root ユーザーの実効ユーザー ID と特権を使用してサブシェルを実行します。 ユーザーは root パスワードを求められます。 サブシェルを終了し、元のシェル・セッションと元の特権に戻るには、EOF、Ctrl+D キー・シーケンスを押します。
    su --
    このコマンドは、以下の有効なユーザー ID と特権を使用してサブシェルを実行します。rootユーザー。 以下を入力してくださいrootプロンプトが出されたときのパスワード。 サブシェルを終了し、元のシェル・セッションと元の特権に戻るには、EOF、Ctrl+D キー・シーケンスを押します。
  2. 特権を取得するには、以下のようにします。jimユーザーは、以下のコマンドを入力します。
    su jim
    このコマンドは、以下の有効ユーザー ID および特権を使用してサブシェルを実行します。jim.
  3. ログインしているかのように環境をセットアップするには、以下のようにします。jimユーザー、入力:
    su  - jim
    これは、以下を使用してサブシェルを開始しますjimのログイン環境。
  4. root ユーザー権限でバックアップ・コマンドを実行してから、元のシェルに戻るには、次のように入力します。
    su root "-c /usr/sbin/backup -9 -u"
    このコマンドは、root ユーザー権限を使用して、root のデフォルト・シェル内で backup コマンドを実行します。 このコマンドを実行するためにパスワードを照会されたら、正確な root パスワードを指定しなければなりません。
  5. 現行セッションのユーザー資格情報を root ユーザーに変更するには、以下のいずれかのコマンドを入力します。

    su -

    su - root

    su - --

    上記のコマンドは、以下を使用してサブシェルを開始します。rootユーザーのログイン環境。

ファイル

項目 説明
/usr/bin/su su コマンドが入っています。
/etc/environment ユーザー環境値が入っています。
/etc/group 基本グループ属性が入っています。
/etc/passwd 基本ユーザー属性が入っています。
/etc/security/user ユーザーの拡張属性が入っています。
/etc/security/environ ユーザーの環境属性が入っています。
/etc/security/limits ユーザーのプロセス・リソース制限が入っています。
/etc/security/passwd パスワード情報が入っています。
/var/adm/sulog ログイン試行に関する情報が入っています。
/etc/security/enc/LabelEncodings TrustedAIXシステムのラベル定義が含まれています。