システムにsudo権限があるかどうか疑問に思っていますか?確認は簡単です。 sudoを使用して任意のコマンドを実行するだけです。 sudo権限がない場合は、出力に表示されます:
[email protected]:~$ sudo -v
Sorry, user standard may not run sudo on linuxhandbook.
カッコいい!しかし、他のユーザーがsudo権限を持っているかどうかを確認するのはどうでしょうか。あなたは完全にそれを行うことができます。方法をお見せしましょう。
Linuxユーザーがsudoを使用できるかどうかを確認する方法はいくつかあります。ここにいくつかあります。
方法1:ユーザーがsudoコマンドでsudoerであるかどうかを確認する
sudoコマンド自体には、ユーザーがsudoを使用してコマンドを実行できるかどうかを確認するオプションがあります。実際、特定のユーザーがsudoで実行できるコマンドを示しています。
ユーザーのsudoアクセスを確認するには、次のコマンドを実行します。
sudo -l -U user_name
ユーザーがsudoを使用していくつかまたはすべてのコマンドを実行できる場合は、次のような出力が表示されます。
Matching Defaults entries for abhi on test-server:
env_reset, mail_badpass,
secure_path=/usr/local/sbin\:/usr/local/bin\:/usr/sbin\:/usr/bin\:/sbin\:/bin\:/snap/bin
User abhi may run the following commands on test-server:
(ALL : ALL) NOPASSWD: ALL
ご覧のとおり、ユーザーabhiはsudoアクセスを使用してすべてのコマンドを実行できます。ユーザーにsudo権限がない場合は、次のような出力が表示されます。
User abhi is not allowed to run sudo on test-server.
sudoer権限があるかどうか、およびsudoで実行できるコマンドを確認する場合は、ユーザー名を指定せずに、同じコマンドを使用できます。
sudo -l
ご存知ですか?
このコマンドは、sudoで実行することが禁止されているコマンドも示します。はい、そうです。 sudoで実行できるコマンドと実行できないコマンドを構成できます。これは、開発チームがsudoを使用して特定のアプリケーションのみを実行する必要がある環境で役立ちます。 sudoの使用をこれらのアプリケーションに限定することで、システムが開発者の手によるsudoの権利の不当な誤用を防ぐことができます。
方法2:ユーザーがsudoグループの一部であるかどうかを確認します
ユーザーがsudoアクセス権を持っているかどうかを確認する別の方法は、そのユーザーがsudoグループのメンバーであるかどうかを確認することです。
Linuxでユーザーのグループをチェックする方法はいくつかあります。最も簡単で私のお気に入りの方法は、次のようなグループコマンドを使用することです。
groups user_name
出力にグループ「sudo」が表示されている場合、そのユーザーはsudoグループのメンバーであり、sudoアクセス権を持っている必要があります。
[email protected]:~$ groups abhi
abhi : abhi sudo
ボーナスのヒント:システム内のすべてのsudoユーザーを検索する方法
さて、ユーザーがsudoアクセス権を持っているかどうかを確認する方法を学びました。 Linuxシステム内のすべてのsudoerを一覧表示するのはどうですか?
これまでの記事を読んでいれば、これは簡単です。 sudoグループのメンバーをリストするだけです。
Linuxでは、同じ結果を達成するための複数の方法があります。当然のことながら、Linuxでグループのメンバーを一覧表示する方法は複数あります。
システムのすべてのsudoユーザーを一覧表示するには、次の方法でsudoグループのメンバーを一覧表示します。
getent group sudo
そして、これはすべてのsudoersをリストします:
[email protected]:~$ getent group sudo
sudo:x:27:abhi,seeni
それでおしまい。自分がsudo権限を持っているかどうか、または他のユーザーがsudoer権限を持っているかどうかを確認する方法を理解できたと思います。
このトピックに関する他のクールなヒントがある場合は、以下にコメントを残してください。