ノート:

Oracle Linuxでのユーザーおよびグループの作成

イントロダクション

次のチュートリアルでは、Oracle Linuxでユーザーおよびグループの管理を実行するための手順について説明します。ユーザーとグループを作成し、ユーザー・プライベート・グループを実装し、ユーザーに昇格された権限を付与します。このチュートリアルはOracle Linux 8ユーザーを対象としていますが、コマンドは他のOracle Linuxリリースでも入手できます。

目的

この演習では、次のことを行います。

必要事項

ノート:無料の演習環境を使用する場合は、接続やその他の使用方法の手順について、Oracle Linuxの演習の基本を参照してください。

ユーザー・アカウントの管理

この項では、コマンドライン・ユーティリティを使用して、新規ユーザー・アカウントの作成、新規ユーザーの追加時に更新されるファイルの表示、ユーザー・アカウントの変更、新規ユーザーのパスワードの設定、新規ユーザーとしてログインします。

  1. 端末を開き、Oracle Linux 8インスタンスに接続します。

  2. rootユーザーになります。

    sudo su -
    
  3. rootユーザーとして、aliceという名前のユーザーを追加します。

    useradd alice
    

    ユーザーが/etc/passwdファイルに追加されます。

  4. /etc/passwdファイルのaliceエントリを表示します。

    grep alice /etc/passwd
    

    grep出力

    次が出力に表示されます。

    • 新しいユーザーのUIDとGIDは同じです(1001)。
    • 新規ユーザー(/home/alice)に対してホーム・ディレクトリが作成されました。
    • 新規ユーザーのデフォルト・シェルは/bin/bashです。
  5. ホーム・ディレクトリを表示します。

    ls -l /home
    

    ls出力

    この例では、opcユーザーがすでに存在します。
    /etc/login.defsCREATE_HOMEパラメータがyesに設定されているため、新規ユーザーのホーム・ディレクトリが作成されました。

  6. /etc/login.defsファイルのCREATE_HOMEパラメータを表示します。

    grep CREATE_HOME /etc/login.defs
    

    grep出力

  7. /etc/default/useraddに格納されている新規ユーザーのデフォルト設定を表示します。

    cat /etc/default/useradd
    

    デフォルト設定

    SKELパラメータは/etc/skelに設定されています。

  8. /etc/skelディレクトリの内容を表示します。

    ls -la /etc/skel
    

    スケルトンファイル

  9. aliceホームディレクトリの内容を表示します。

    ls -la /home/alice
    

    モミ

    SKEL (/etc/skel)の内容は、新しいユーザーのホームディレクトリにコピーされます。

  10. /etc/groupファイルの新しいaliceエントリを表示します。

    grep alice /etc/group
    

    グループファイル

    Oracle Linux 8はユーザープライベートグループ(UPG)スキームを使用するため、aliceユーザーの作成時に新しいプライベートグループ(aliceGID=1001)が作成されました。

  11. aliceユーザーのGECOS情報を変更します。GECOS情報の変更の前後に、/etc/passwdファイルのaliceエントリを表示します。

    grep alice /etc/passwd
    usermod -c "Alice Smith" alice
    grep alice /etc/passwd
    

    利用者

  12. aliceユーザーのパスワードAB*gh246を作成します。aliceのパスワードの作成前および作成後に、/etc/shadowファイルのaliceエントリを表示します。

    grep alice /etc/shadow
    passwd alice
    grep alice /etc/shadow
    

    合い言葉

    alice!!は、ハッシュされたパスワード値に置き換えられます。

  13. rootログインを終了し、aliceユーザーとしてログインします。プロンプトが表示されたら、AB*gh246のパスワードを指定します。

    exit
    su - alice
    

    ログイン

  14. aliceユーザーであり、現在のディレクトリが aliceユーザーのホームディレクトリであることを確認します。

    whoami
    pwd
    

    検証

  15. aliceユーザーのシェルを終了し、rootユーザーになります。

    exit
    sudo su -
    

    ルート

  16. rootユーザーとして、この演習の後半で使用する oracleという名前のユーザーを追加します。

    useradd oracle
    
  17. oracleユーザーのパスワードXY*gh579を作成します。

    passwd oracle
    

    oracle pwd

グループ・アカウントの管理

この項では、新規グループ・アカウントを作成し、この新規グループにユーザーを追加します。

  1. rootユーザーとして、staffという名前のグループを追加します。

    groupadd staff
    

    グループが/etc/groupファイルに追加されます。

  2. /etc/groupファイルの最後の10エントリを表示します。

    tail /etc/group
    

    カスタマイズ出力

    新しいグループのGID (1003)は1ずつ増分されます。

  3. aliceユーザーを staffグループに追加します。/etc/groupファイルの staffグループエントリを表示します。

    usermod -aG 1003 alice
    grep staff /etc/group
    

    ユーザーの追加

    aliceユーザーは、staffグループにセカンダリグループメンバーシップを持っています。

  4. aliceのプライマリグループメンバーシップを表示します。

    grep alice /etc/passwd
    

    grep出力

    aliceユーザーのプライマリ・グループは1001のままです。

ユーザー・プライベート・グループの実装

この項では、ユーザー・プライベート・グループ・スキームを使用して、異なるユーザーに単一のディレクトリ内のファイルへの書込みアクセス権を付与します。

  1. rootユーザーとして、/staffディレクトリを作成します。

    mkdir /staff
    
  2. /staffディレクトリとその権限を表示します。

    ls -ld /staff
    

    ls出力

  3. /staffディレクトリのグループ所有権を staffグループに変更します。-Rオプション(再帰的)は、/staff内のファイルおよびディレクトリのグループを設定します。グループ所有権の変更後に、/staffディレクトリとその権限を表示します。

    chgrp -R staff /staff
    ls -ld /staff
    

    chgrp

    /staffディレクトリの所有者はrootのままですが、グループは現在はstaffです。

  4. /staffディレクトリで setgidビットを設定します。次に、/staffディレクトリの権限を表示します。

    chmod -R 2775 /staff
    ls -ld /staff
    

    setgid

    /staffディレクトリのグループ権限が変更されました。

  5. oracleユーザーを staffグループに追加します。oracleユーザーを追加した後、/etc/groupファイルのstaffエントリを表示します。

    usermod -aG staff oracle
    grep staff /etc/group
    

    grep出力

    aliceユーザーと oracleユーザーはどちらも、staffグループにセカンダリグループメンバーシップを持っています。

  6. oracleユーザーになります。現在 rootユーザーであるため、oracleユーザーのパスワードの入力を求められません。oracleユーザーであり、現在のディレクトリがoracleユーザーのホーム・ディレクトリであることを確認します。

    su - oracle
    whoami
    pwd
    

    oracleユーザー

  7. oracleユーザーのグループ・メンバーシップを表示します。

    groups
    

    グループ

    oracleユーザーは、oraclestaffの2つのグループに属します。

  8. /staffディレクトリに移動します。oracle_fileという名前の/staffディレクトリに新しいファイルを作成します。新しいファイルのアクセス権と所有権を表示します。

    cd /staff
    touch oracle_file
    ls -l oracle_file
    

    oracleファイル

    staffグループのアクセス権は読み取り/書き込み可能です。

  9. aliceユーザーになります。プロンプトが表示されたら、AB*gh246のパスワードを指定します。aliceユーザーであることを確認します。

    su - alice
    whoami
    

    足りる

  10. aliceユーザーのグループ・メンバーシップを表示します。

    groups
    

    アリス群

    aliceユーザーは、alicestaffの2つのグループに属しています。

  11. /staffディレクトリに移動します。alice_fileという名前の/staffディレクトリに新しいファイルを作成します。新しいファイルのアクセス権と所有権を表示します。

    cd /staff
    touch alice_file
    ls -l
    

    ファイル単位

    staffグループの両方のファイルに対する読み取り/書き込み権。

  12. aliceユーザーとして、touchコマンドを使用してoracle_fileのタイムスタンプを更新します。ファイルを表示して時間が変更されたことを確認します。

    touch oracle_file
    ls -l
    

    感動的な

    タイムスタンプを更新すると、ファイルが oracleユーザーによって作成された場合でも、aliceユーザーとしてファイルの書き込みアクセス権が暗黙的に指定されます。

  13. aliceユーザーのシェルと oracleユーザーのシェルの両方を終了して、rootユーザーのシェルに戻ります。rootユーザーであることを確認します。

    exit
    exit
    whoami
    

    ファイル単位

オプション1:ユーザーへの昇格された権限の付与

この項では、/etc/sudoersファイルにエントリを追加して、sudo権限をユーザーに付与します。

  1. aliceユーザーになります。現在 rootユーザーであるため、aliceパスワードの入力を求められません。aliceユーザーであることを確認します。

    su - alice
    whoami
    

    足りる

  2. aliceユーザーとして、newuserを追加しようとします。

    useradd newuser
    

    ユーザーの追加

    aliceユーザーには、newuserを追加する権限がありません。

  3. 前の useraddコマンドの前に sudoコマンドを挿入して、newuserを追加します。プロンプトが表示されたら、AB*gh246のパスワードを指定します。

    sudo useradd newuser
    

    sudo失敗

    適切な認可なしでこの管理者コマンドを発行しようとすると、/var/log/secureファイルにレポートされます。

  4. aliceユーザーのシェルを終了して、rootユーザーのシェルに戻ります。/var/log/secureファイルのsudoersエントリを表示します。

    exit
    grep sudoers /var/log/secure
    

    柔道家

    /sbin/useraddコマンドの使用を試みるためのalice : user NOT in sudoersエントリは、/var/log/secureファイルにあります。この例では、複数のエントリが示されています。エントリは1つだけです。

  5. rootユーザーとして、visudoコマンドを使用して/etc/sudoersファイルを編集します。

    visudo
    

    このコマンドは、vimエディタを使用して/etc/sudoersファイルを開きます。

  6. /etc/sudoersファイルで、次の行を追加して、aliceユーザーに/sbin/useraddコマンドを実行する権限を付与します。

    alice   ALL=(ALL)       /sbin/useradd
    

    新しいエントリが強調表示されます。変更を保存し、visudoコマンドを終了します。

    柔道

  7. aliceユーザーになります。sudoコマンドなしで newuserを追加しようとします。sudoコマンドを挿入し、newuserを2回追加しようとします。プロンプトが表示されたら、AB*gh246のパスワードを指定します。

    su - alice
    useradd newuser
    sudo useradd newuser
    

    柔道工学

  8. newuserが追加されたことを確認します。

    grep newuser /etc/passwd
    ls -l /home
    

    sudoの検証

    現在、newuserが存在します。/etc/sudoersファイルのaliceエントリでは、aliceユーザーは/sbin/useraddコマンドを実行するためのsudo権限を持ちます。

  9. aliceシェルを終了して rootシェルに戻ります。visudoコマンドを使用して、この演習で前に追加した/etc/sudoersファイルからaliceエントリを削除します。

    exit
    visudo
    

    削除するエントリが強調表示されます。行全体を削除するか、この例では#文字を挿入して行をコメント・アウトします。変更を保存し、visudoコマンドを終了します。

    delete エントリ

  10. aliceユーザーが新しいユーザーを追加できなくなったことを確認します。aliceユーザーになります。sudoコマンドを使用して anotheruserを追加しようとします。

    su - alice
    sudo useradd anotheruser
    

    別の失敗

    適切な認可なしでこの管理者コマンドを発行しようとすると、/var/log/secureファイルにレポートされます。

  11. aliceユーザーのシェルを終了して、rootユーザーのシェルに戻ります。

    exit
    

オプション2:ユーザーへの昇格された権限の付与

この項では、wheelグループにユーザーを追加してsudo権限を付与します。

  1. rootユーザーとして、/etc/sudoersファイルのwheelエントリを表示します。

    grep wheel /etc/sudoers
    

    ホイール

    /etc/sudoersファイルの %wheel ALL=(ALL) ALLエントリを使用すると、wheelグループのすべてのメンバーは、sudoの前にある任意のコマンドを実行できます。

  2. aliceユーザーを wheelグループに追加します。aliceユーザーが wheelグループ内にあることを確認します。

    usermod -aG wheel alice
    grep wheel /etc/group
    

    ハンドルを追加する

    ユーザー aliceには、wheelグループにセカンダリグループメンバーシップがあります。

  3. aliceユーザーになります。現在 rootユーザーであるため、aliceパスワードの入力を求められません。aliceユーザーであることを確認します。

    su - alice
    whoami
    

    足りる

  4. aliceユーザーとして、sudo useraddコマンドを使用してthirduserを追加します。プロンプトが表示されたら、AB*gh246のパスワードを指定します。

    sudo useradd thirduser
    

    3番目の追加

  5. thirduserが追加されたことを確認します。lsコマンドは、sudoを挿入してaliceパスワードを指定するまで失敗します。これにより、aliceユーザーがsudo権限を持っていることが確認されます。

    grep thirduser /etc/passwd
    ls -la /home/thirduser
    sudo ls -la /home/thirduser
    

    3回目の確認

その他の学習リソース

docs.oracle.com/learnの他のラボを調べるか、Oracle Learning YouTubeチャネルでさらに無料の学習コンテンツにアクセスします。さらに、education.oracle.com/learning-explorerにアクセスしてOracle Learning Explorerにします。

製品ドキュメントは、Oracleヘルプ・センターを参照してください。