序章

Linuxシステムでのユーザーの追加と削除は、慣れるための最も重要なシステム管理タスクの1つです。 新しいシステムを作成する場合、多くの場合、デフォルトではrootアカウントへのアクセスのみが許可されます。

root ユーザーとして実行している間、システムとそのユーザーを完全に制御できますが、危険であり、破壊的である可能性もあります。 一般的なシステム管理タスクの場合、非特権ユーザーを追加し、root特権なしでそれらのタスクを実行することをお勧めします。 システム上にいる可能性のある他のユーザーのために、追加の非特権アカウントを作成することもできます。 システム上の各ユーザーは、独自の個別のアカウントを持っている必要があります。

管理者権限が必要なタスクには、Ubuntuシステムにインストールされているツールがあります。 sudo. 簡単に言えば、 sudo 管理者権限を持つユーザーを含む別のユーザーとしてコマンドを実行できます。 このガイドでは、ユーザーアカウントを作成し、割り当てる方法を学習します sudo 特権、およびユーザーを削除します。

前提条件

このチュートリアルを完了するには、Ubuntu20.04を実行しているサーバーにアクセスする必要があります。 サーバーとファイアウォールへのrootアクセスが有効になっていることを確認してください。 これを設定するには、 Ubuntu20.04の初期サーバーセットアップガイドに従ってください。

ユーザーの追加

root ユーザーとしてサインインしている場合は、次のコマンドを実行することで、いつでも新しいユーザーを作成できます。

  1. adduser newuser

与えられたroot以外のユーザーとしてサインインしている場合 sudo 特権の場合、次のコマンドを使用して新しいユーザーを追加できます。

  1. sudo adduser newuser

いずれにせよ、一連の質問に答える必要があります。

  • 新しいユーザーのパスワードを割り当てて確認します。
  • 新しいユーザーに関する追加情報を入力します。 これはオプションであり、を押すとスキップできます ENTER これらのフィールドを利用したくない場合。
  • 最後に、提供した情報が正しいことを確認するよう求められます。 プレス Y 続ける。

これで、新しいユーザーを使用する準備が整い、入力したパスワードでログインできるようになりました。

新しいユーザーに管理者権限が必要な場合は、次のセクションに進んでください。

ユーザーにSudo権限を付与する

新しいユーザーがroot(管理)権限でコマンドを実行できるようにする必要がある場合は、新しいユーザーに次のアクセス権を付与する必要があります。 sudo. このタスクへの2つのアプローチを調べてみましょう。1つは、事前定義された sudo ユーザーグループにユーザーを追加する方法、もう1つは、ユーザーごとに特権を指定する方法です。 sudoの構成。

Sudoグループへの新しいユーザーの追加

デフォルトでは、 sudo Ubuntu 20.04システムでは、sudoグループのすべてのユーザーに完全な特権を拡張するように構成されています。

新しいユーザーがどのグループに属しているかを表示できます groups 指図:

  1. groups newuser
Output
newuser : newuser

デフォルトでは、新しいユーザーは自分のグループにのみ存在します。 adduser ユーザープロファイルに加えてこれを作成します。 ユーザーとそのグループは同じ名前を共有します。 ユーザーを新しいグループに追加するには、 usermod 指図:

  1. usermod -aG sudo newuser

The -aG オプションは教えます usermod リストされたグループにユーザーを追加します。

注意してください usermod コマンド自体が必要です sudo 特権。 これは、ユーザーを追加できるのは sudo root ユーザーとして、またはすでにメンバーとして追加されている別のユーザーとしてサインインしている場合は、グループ sudo グループ。 後者の場合、このコマンドの前に sudo、この例のように:

  1. sudo usermod -aG sudo newuser

での明示的なユーザー権限の指定 /etc/sudoers

ユーザーをsudoグループに入れる代わりに、 visudo コマンドは、と呼ばれる構成ファイルを開きます /etc/sudoers システムのデフォルトエディタで、ユーザーごとに特権を明示的に指定します。

使用する visudo に変更を加えるための唯一の推奨される方法です /etc/sudoers 複数の同時編集に対してファイルをロックし、ファイルを上書きする前にその内容の検証チェックを実行するためです。 これは、設定を誤った状況を防ぐのに役立ちます sudo あなたが失ったので問題を解決することはできません sudo 特権。

現在rootとしてサインインしている場合は、次を実行します。

  1. visudo

root以外のユーザーとしてサインインしている場合 sudo 特権、同じコマンドを実行します sudo プレフィックス:

  1. sudo visudo

伝統的に、 visudo オープン /etc/sudoers の中に vi 経験の浅いユーザーを混乱させる可能性のあるエディタ。 デフォルトでは、Ubuntuの新規インストールでは、 visudo を使用します nano より便利でアクセスしやすいテキスト編集エクスペリエンスを提供するテキストエディタ。 矢印キーを使用してカーソルを移動し、次のような行を検索します。

/ etc / sudoers
root    ALL=(ALL:ALL) ALL

この行の下に、次の強調表示された行を追加します。 必ず変更してください newuser 付与するユーザープロファイルの名前に sudo 特権:

/ etc / sudoers
root    ALL=(ALL:ALL) ALL
newuser ALL=(ALL:ALL) ALL

完全に指定する必要があるユーザーごとに、このような新しい行を追加します sudo 特権。 終了したら、を押してファイルを保存して閉じます CTRL + X、 に続く Y、 その後 ENTER 確認するために。

ユーザーのSudo権限のテスト

これで、新しいユーザーは管理者権限でコマンドを実行できるようになります。

新しいユーザーとしてサインインすると、通常どおりコマンドを入力して、通常のユーザーとしてコマンドを実行できます。

  1. some_command

次のように入力すると、管理者権限で同じコマンドを実行できます sudo コマンドの前に:

  1. sudo some_command

これを行うと、サインインしている通常のユーザーアカウントのパスワードを入力するように求められます。

ユーザーの削除

ユーザーが不要になった場合は、古いアカウントを削除することをお勧めします。

root として次のコマンドを実行することにより、ファイルを削除せずにユーザー自体を削除できます。

  1. deluser newuser

root以外の別のユーザーとしてサインインしている場合 sudo 特権の場合、次を使用します。

  1. sudo deluser newuser

代わりに、ユーザーが削除されたときにユーザーのホームディレクトリを削除する場合は、rootとして次のコマンドを発行できます。

  1. deluser --remove-home newuser

これをroot以外のユーザーとして実行している場合 sudo 特権、あなたは同じコマンドを実行します sudo プレフィックス:

  1. sudo deluser --remove-home newuser

以前に構成した場合 sudo 削除したユーザーの権限については、関連する行を再度削除することをお勧めします。

  1. visudo

または、 root 以外のユーザーの場合は、次のコマンドを使用します。 sudo 特権:

  1. sudo visudo
/ etc / sudoers
root    ALL=(ALL:ALL) ALL
newuser ALL=(ALL:ALL) ALL   # DELETE THIS LINE

これにより、同じ名前で作成された新しいユーザーが誤って指定されるのを防ぐことができます sudo 特権。

結論

これで、Ubuntu20.04システムにユーザーを追加および削除する方法をかなりうまく理解できるはずです。 効果的なユーザー管理により、ユーザーを分離し、仕事をするために必要なアクセスのみをユーザーに与えることができます。

構成方法の詳細については sudosudoersファイルの編集方法に関するガイドを確認してください。