web-dev-qa-db-ja.com

ロックされたスクリーンセーバーではログインできません。「ユーザーの切り替え」でログインする必要があります。

しばらくしてデスクトップをロックするようにスクリーンセーバーを設定しました。そして時々、例えばデスクを離れるときは、タイトルバーの[アカウントのロック/切り替え...]機能を使用して自分で画面をロックすることを好みます。

再度ログインするときにパスワードを入力しましたが、パスワードに「無効」というラベルが付いています。

回避策として、マウスを使用してタイトルバーの[ユーザーの切り替え...]メニューに移動し、クリックして、他のログインページが表示されるのを待つ必要があります。 。 (また、選択する他のユーザー名もリストします)

そこで同じパスワードを入力すると、パスワードが受け入れられ、ログインし、統一されたデスクトップが表示されます。

コンソールでのログインも機能します。

問題を診断して解決する方法はありますか?

Linux xxx 3.19.0-28-generic#30-Ubuntu SMP月8月31日15:52:51 UTC 2015 x86_64 x86_64 x86_64 GNU/Linux

統一7.3.2

Compiz 0.9.12.1

Kern.logとsyslogには何も関心がないようですが、ここに/var/log/auth.logからのものがあります

    Sep 17 17:20:29 xxx lightdm: pam_kwallet(lightdm-greeter:setcred): pam_sm_setcred
Sep 17 17:20:29 xxx lightdm: pam_unix(lightdm-greeter:session): session opened for user lightdm by (uid=0)
Sep 17 17:20:29 xxx systemd-logind[843]: New session c13 of user lightdm.
Sep 17 17:20:29 xxx lightdm: pam_ck_connector(lightdm-greeter:session): nox11 mode, ignoring PAM_TTY :2
Sep 17 17:20:29 xxx lightdm: pam_kwallet(lightdm-greeter:session): pam_sm_open_session
Sep 17 17:20:29 xxx lightdm: pam_kwallet(lightdm-greeter:session): pam_kwallet: open_session called without kwallet_key
Sep 17 17:20:30 xxx lightdm: pam_succeed_if(lightdm:auth): requirement "user ingroup nopasswdlogin" not met by user "knb"
Sep 17 17:20:33 xxx CRON[37168]: pam_unix(cron:session): session closed for user munin
Sep 17 17:21:10 xxx lightdm: pam_kwallet(lightdm:auth): pam_sm_authenticate
Sep 17 17:21:10 xxx lightdm: pam_kwallet(lightdm:setcred): pam_sm_setcred
Sep 17 17:21:10 xxx lightdm: pam_unix(lightdm-greeter:session): session closed for user lightdm
Sep 17 17:21:10 xxx lightdm: pam_kwallet(lightdm-greeter:session): pam_sm_close_session
Sep 17 17:21:10 xxx lightdm: pam_kwallet(lightdm-greeter:setcred): pam_sm_setcred

ここに私が通過しなければならない画面のいくつかの写真があります:

Step 1 - locked screensaver

ここで、通常のパスワードの入力に失敗しました。 ASCII文字のみが含まれます。

Step 2 - switch user

ユーザーの切り替え...(自分のアカウントを選択します。別のアカウントに切り替える必要はありません)。

Step 3 - regular login

これは動作します。

編集済み:+150バウンティ期限の終了直前

私はこの問題を自分で解決することができました(これまでのすべてのヒントとリンクは、これまでの5つの回答すべてに広がっていますが)

ファイル/etc/pam.d/lightdmでこの行をコメントアウトする必要がありました。

#auth sufficient pam_succeed_if.so user ingroup nopasswdlogin

その理由は(数か月前、自分がコンピューターに物理的にアクセスできる「唯一」だったとき)、私はパスワードなしでログインできるグループに自分を追加したであり、ブート/リブート後のlightdn。 いつかこれを元に戻しましたを「再起動後にログインが必要」に変更しましたが、何らかの理由で以前のno-login設定がすべての設定ファイルから不適切に削除されました

再びログインできるようになりました:-)

賞金に関する注意/ "評価":

最初の回答者は、「/ etc/pam.dにあるものをよく見る」などのように言って、ソリューションに最も近かった。答えは最も長く、最も徹底的でもありました。しかし、私は他のすべての答えを価値あるものとしてチェックしました。それが今のところできることです。

11
knb

理論的には、/ etc/pam.dの内容を確認し、/ var/log/auth.logの出力と比較して、何が起こっているのかを確認できます。

知らない場合、pam.dの各ファイルは、権限を取得できるかどうかをpamに尋ねる潜在的なエントリポイントです。あなたの場合、lightdm。ログのどの行がpamファイルのどの行に由来するかを把握する限り、ログエントリはかなり自明です。

私が見つけたドキュメントによると、ログの追加情報を取得するには、pam.dファイルの行に「デバッグ」を追加できるはずです。

私の設定では、kdeとkdmを使用していますが、画面をロックして(間違ったパスワードで)ロックを解除しようとすると(kdm:auth)を含む多くの行が表示されますが、ロックが正常に解除されると何も表示されません。 pam.d/kdmとpam.d/lightdmの比較はほとんどないので、私には意味がありません。したがって、lightdm pamモジュールに問題があるかどうかを確認するために、いろいろと交換してみてください。

私が考えた他の唯一の考えは、パスワードに面白い記号や文字が含まれているかどうかです。 lightdmロック画面ボックスが適切にコーディングされていない場合、入力した内容がバックエンドに送信されないことがあります。パスワードを基本的なもの(1234など)に変更してみて、機能するかどうかを確認し、機能する場合は(明らかにパスワードを元に戻してください)、少なくともpamの構成に問題はないことを意味します。

さまざまなpamファイルにpam_debug.soを追加する以外に、これがあまり役に立たない場合は申し訳ありません( http://manpages.ubuntu.com/manpages/hardy/man8/pam_debug.8.html を参照してください) )、何が起こるかを見るために、私は他に何を提案すべきか分かりません。

3
sibaz

ロックスクリーンは通常のユーザーとして認証を実行しますが、ユーザーの切り替えとログイン画面はルートとして実行されます。ルートには、通常のユーザーにはない特別な特権があります。

通常、この問題を見たとき、ファイル/ etc/shadowのアクセス権が変更されていることがわかりました。これは次のようになります。

$ ls -l /etc/shadow
-rw-r----- 1 root shadow 2202 Jun 23 12:39 /etc/shadow

パーマ、所有者、またはグループが間違っている場合、それはあなたの問題です。

3
Stephen M. Webb

おそらく デスクトップログインが失敗し、端末が動作する の解決策はあなたのために働くでしょうか?

〜/ .Xauthorityファイルを削除しました。

それともここ? https://unix.stackexchange.com/questions/64545/suddenly-i-cant-login-with-correct-password-greeter-tty

発生しているのと同じ問題のようです。その2番目のリンクについては、コマンドの最後の部分を実行して、apt-getパージを無視してください:Sudo pam-auth-update

1
hlmtre

(あなたの編集中の)あなたの答えは私の問題を実際には解決しませんでしたが、受け入れられた答えとあなたの編集でのあなたの解決方法は私を次のように導きました:

  • 次の行をコメントする

    #auth sufficient pam_succeed_if.so user ingroup nopasswdlogin

  • 変化

    auth requisite pam_nologin.soからauth requisite pam_permit.so

サイドノート:これらの行を変更した後に再起動する必要はありません:ターミナルにSudo /usr/sbin/pam-auth-updateと入力するだけで、メニューの何も変更せずにキーボードのenterを押します

0
Yamen Nassif