現在のauth.logダンプ

現在のauth.logダンプ

PAMを使用してログインしたときとは異なるsudoパスワードを試してみました。

私はもともとこの記事を書きました。

sudoパスワードをログインパスワードとは異なる設定にしてください。

残念ながら、これを行うたびに認証エラーが発生し、何が問題なのかわかりません。パスワードを誤ってハッシュしたか、データベースに誤って追加した可能性がありますが、問題が何であるかわかりません。

sudoで読んだ設定

session    required   pam_env.so readenv=1 user_readenv=0

session    required   pam_env.so readenv=1 envfile=/etc/default/locale user_readenv=0

auth required pam_userdb.so crypt=crypt db=/var/local/sudopass/passwd.db

\#@include common-auth

@include common-account

@include common-session-noninteractive

テスト目的でパスワードを設定し、passwd -m des passworddb5.3を使用してpasswd.dbデータベースを作成しました。

db5.3_load -h /var/local/sudopass -t hash -T passwd.db

私のユーザー名

73o8ECeyEW3Y2(パスワードハッシュ)

これにより認証エラーが発生します。このデータベースを自分のホームディレクトリに配置すると、PAMは権限の設定方法に関係なくデータベースを見つけることができません。 )

現在のauth.logダンプ

認証エラーが発生するのに問題がありますが、これは Oct 18 12:07:43 az-GlAdOS-mk11-m sudo: pam_userdb(sudo:auth): Verify userパスワードを含むauth.log az 'の現在の問題です。

Oct 18 12:07:43 az-GlAdOS-mk11-m sudo: pam_userdb(sudo:auth): user_lookup: `/var/local/sudopass/passwd.db' データベースを開くことができません。そのファイルまたはディレクトリはありません。

10月18日 12:07:43 az-GlAdOS-mk11-m sudo: az: PAM 認証エラー: TTY=pts/4; user = root;空/ナノ/etc/pam.d/sudo`

答え1

targetpwのオプションを使用すると、sudoerssudoは自分のパスワードを要求せず、代わりにコマンドを実行したいユーザーのパスワードを要求します(ほとんどの場合root)。その後、自分のユーザーとユーザーアカウントにroot異なるパスワードを使用できます。

sudoersファイルで、次のスニペットを使用してこの動作をグローバルに有効にします(を使用して編集visudo)。

Defaults targetpw
ALL ALL=(ALL) ALL

2行目は、システム内のすべてのユーザーがターゲットユーザーのパスワードを知っている場合はsudoを使用できることを意味します。省略した場合は、グループメンバーシップとターゲットのパスワードを設定する必要があります。 (suこの設定はサポートされていないため、アクセス権がある場合はグループ要件を回避できます。)

targetpw特定のユーザーまたはグループにのみディレクティブを適用する2つのバリエーションのいずれかを使用することもできます。

Defaults:username targetpw
username ALL=(ALL) ALL

Defaults:%groupname targetpw
%groupname ALL=(ALL) ALL

(するいいえALL ALL=(ALL) ALL次のいずれかを使用する場合は明記してください。 )

答え2

あなたがリンクしたガイドは5年前のガイドです。 PAMはもはやDESを使用しません。パスワードハッシュを生成するには、以下を試してください。

echo pass|mkpasswd -s -m sha-512

関連情報