web-dev-qa-db-ja.com

「ユーザーはsudoersファイルにありません」が実際には


特定のユーザーに対してSudoアクセスを有効にすることについての投稿をすでにたくさん読んでいますが、今のところそれらは役に立ちませんでした。
状況は次のとおりです。
Debianテストを実行しています。システムには、「root」とユーザーアカウント「benny」の2つのアカウントしかありません。ユーザー「benny」は、Sudoを使用してroot権限でコマンドを実行できるはずです(もちろん、最初にSudoをインストールしました)。そのため、visudoを使用して「/ etc/sudoers」ファイルを次のように編集しました。

Defaults        env_reset
Defaults        mail_badpass
Defaults        secure_path="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin"

# Host alias specification

# User alias specification

# Cmnd alias specification

# User privilege specification
root    ALL=(ALL:ALL) ALL
benny   ALL=(ALL:ALL) ALL #<<<<<<<<<<<<<<< EDIT HERE!

# Allow members of group Sudo to execute any command
%Sudo   ALL=(ALL:ALL) ALL

# See sudoers(5) for more information on "#include" directives:

#includedir /etc/sudoers.d
ALL ALL= NOPASSWD: /usr/sbin/g15daemon

これはまったく機能しませんでした。「Sudo」コマンドを発行すると、「bennyはsudoersファイルにありません」と表示され続けます。この事件は報告されます。そこで、よく提案されたように、グループ「Sudo」にbennyを追加しました。

usermod -aG Sudo benny

'benny'として再ログインした後、コマンド

groups

ショー

benny cdrom Sudo Fuse

それは私には問題ないようです。また

 cat /etc/group | grep Sudo 

ショー

 Sudo:x:27:benny

しかし、私が試してみると、例えば

Sudo apt update

それでも、bennyはsudoersファイルに含まれていなかったと言い続けています。
[。
ここで何が欠けていますか?本当にバカだと思いますが、見えません。どんな助けでも大歓迎です!前もって感謝します!

7

Sudoのソースコードをプルダウンしましたが、これが発生する可能性があるのは、SudoがLDAPまたはSSSDメソッドを使用してアクセス許可を決定するように構成されている場合のようです。これらのいずれかが使用可能な場合は、fileメソッドの前にチェックされます。これはおそらく、このマシンが企業環境などでセットアップされた場合にのみ意味がありますか?このような場合でも、sudoersの「ファイル」を参照しているため、エラーメッセージは少し不正確です。

私はこれにどちらも使用したことはありませんが、/ etc/Sudo.confファイルで構成されているように見えるので、そのようなものがあるかどうかを確認できます。見つめている man SudoLDAPプラグインとman Sudo.confプラグインがFWIWで構成されていることに関する情報を提供します。

2
Geoff Gustafson