Debian VPSでユーザーにSudo権限を追加、削除、および付与する方法
紹介
新しいサーバーを立ち上げると、rootという名前のデフォルトアカウントが作成されます。このユーザーは完全なシステムアクセス権を持ち、管理タスクのみに使用するべきです。rootユーザーとしてシステムに対してできることに基本的に制限はありませんが、これは非常に強力であり、非常に危険です。Linuxには「元に戻す」ボタンはありません。
このリスクを軽減するために、権限が少なく、日常業務により適した新しいユーザーを作成することができます。管理者ユーザーの権限が必要な場合は、sudoと呼ばれるコマンドを使用することで、その機能に一時的にアクセスでき、単一のコマンドの権限を一時的に昇格させることができます。
このガイドでは、Debianシステムに新しいユーザーを作成する方法について説明します。また、管理者権限が必要な場合にユーザーにsudoコマンドへのアクセスを許可する方法と、もはや必要でないユーザーを削除する方法についても説明します。
サーバーにログインする
このガイドの手順を完了するには、root ユーザーとして Debian サーバーにログインする必要があります。
SSHキーを選択せずにサーバーインスタンスを作成した場合、通常はrootユーザーのパスワードが記載されたメールが届きます。この情報を使用して、ターミナルで次のようにrootユーザーとしてサーバーにログインできます:
- ssh root@your_server_ip_address
メールで送信されたパスワードを入力してください(パスワードを入力している間、画面に何も表示されません。これは、近くにいる人がその長さに基づいてパスワードを推測できないようにするためのセキュリティ機能です)。
サーバーをSSHキーで認証するように設定した場合、上記と同じSSH手順を使用できますが、パスワードを求められることなく自動的にログインされます。また、パスワードが記載されたメールも送信されないことに注意してください。
新しいユーザーの追加
最初のステップは、新しいユーザーを追加することです。新しいユーザーはデフォルトで権限がありません。つまり、彼らは自分のホームディレクトリ内のファイルのみを変更できるということです。これが私たちが望んでいることです。
これがあなたの初めての新しいユーザーであり、現在ルートユーザーとしてログインしている場合は、新しいユーザーを作成するために次の構文を使用できます:
- adduser newuser
以前に追加してsudo権限を与えたユーザーでログインしている場合、同じコマンドでsudoを呼び出すことで新しいユーザーを作成できます:
- sudo adduser newuser
いずれにせよ、Debianは作成しているユーザーに関するさらなる情報を求めてきます。必要な最初の情報は、新しいユーザーのパスワードを選択することです。
パスワードを選択し、それを繰り返して確認するように求められます(セキュリティのため、入力した文字はウィンドウに表示されません)。
その後、ユーザーに関する個人情報を求められます。この情報は自由に記入しても空白のままにしておいても構いません。ユーザーはあなたの決定に関係なく、全く同じ方法で操作します。これらのプロンプトをスキップして入力された値を受け入れるには、ENTERを押してください。
新規ユーザーにアクセスする
これらのステップが完了したら、新しいユーザーが利用可能になります。新しいユーザーにログインするには、次のように入力します:
- exit
これにより、現在の root セッションが終了し、新しいユーザーとしてSSHを通じてログインできるように、次のように入力します:
- ssh newuser@your_server_ip_address
今回は、このユーザーのために設定した新しいパスワードを入力してください。
別のユーザーに素早く切り替える方法は、まずログアウトせずにsuコマンドを使用することです。このコマンドは「ユーザーを置き換える」という意味で、切り替えたいユーザーを入力することができます。次のように使用できます:
- su - newuser
これは新しいユーザーのパスワードを要求します。正しく入力すると、新しいユーザーに切り替わります。元のセッションに戻りたい場合は、単にexitコマンドを再度発行してください:
- exit
ユーザーに管理者権限を付与する
新しいユーザーがシステムに追加されたので、このユーザーがsudoを使って管理タスクを実行できるかどうかを決定する必要があります。
システム上で作成したユーザーがあなたの主要なユーザーになる場合、通常はルーチンの設定やメンテナンスを行えるようにsudo権限を有効にしたいでしょう。
これらの権限を新しいユーザーに追加するには、新しいユーザーをsudoグループに追加する必要があります。デフォルトでは、sudoグループに属するユーザーはsudoコマンドを使用することが許可されています。
rootとして、このコマンドを実行して新しいユーザーをsudoグループに追加します(強調表示された単語をあなたの新しいユーザーに置き換えてください)。
- usermod -aG sudo sammy
今、通常のユーザーとしてログインしているときに、次のように入力することで特定のコマンドをルート権限で実行できます:
- sudo command_name
ユーザーのパスワード(ルートユーザーのパスワードではなく)を入力するように促されます。その後、コマンドは昇格したアクセス権で実行されます。
ユーザーを削除する
複数の人があなたのサーバーを使用している場合、それぞれにログイン用のユーザーを与えるべきです。もはや必要ないユーザーを作成した場合、それを削除するのは非常に簡単です。
sudo権限を持つ通常のユーザーとして、次の構文を使用してユーザーを削除できます:
- sudo deluser --remove-home username
--remove-homeオプションは、ユーザーのホームディレクトリも削除します。
ルートとしてログインしている場合、コマンドの前にsudoを追加する必要はありません:
- deluser --remove-home username
結論
ユーザーの追加、削除、およびsudo権限の割り当ては、どのサーバーでも設定する必要がある基本的な作業です。これらのプロセスに慣れることで、初期環境をより速く、より自信を持って設定できるようになります。
