SSSD + 暗号化された /home は、ログイン時に自動マウントされなくなりました

SSSD + 暗号化された /home は、ログイン時に自動マウントされなくなりました

いくつかのボックスを切り替えましたSSSD、これで中央の LDAP サーバーに対して認証が行われ、オフラインのときに資格情報がキャッシュされるようになりました。これは問題なく動作し、Ubuntu パッケージも正常にインストールされました。

しかし、ログインすると、ホーム ディレクトリは自動的に復号化/マウントされなくなりました。GDM から抜けてコンソールでログインすると、次のエラーが表示されます。

keyctl_seach Required key not avaliable

提案されたコマンドを実行すると(ecryptfs マウントプライベート) を入力してパスワードを入力すると、ホーム ディレクトリのロックが解除されます。

ログインプロセスがどのように変更されたのか理解しようとしています。パスワードで暗号化キーが自動的にロック解除されなくなりました。PAMの問題だと思ったので、共通認証以下のファイルを参照してください。

パスワードは SSSD に渡され、その後キーのロックを解除するために通常実行される手順がスキップされるものと思われます。通常どのように行われるのか説明していただけますか?

auth    [success=3 default=ignore]  pam_sss.so
auth    [success=2 default=ignore]  pam_unix.so nullok_secure try_first_pass
auth    [success=1 default=ignore]  pam_winbind.so krb5_auth krb5_ccache_type=FILE cached_login try_first_pass

auth    requisite           pam_deny.so
auth    required            pam_permit.so
auth    optional            pam_ecryptfs.so unwrap

更新1:

ユーザーがログインすると、auth.log に次のエラーが報告されます:

login[14202]: NULL passphrase; aborting

Google では、pam_ecryptfs.so のソースでのみこのエラーが見つかり、受信した PAM_AUTHTOK が NULL の場合にトリガーされます。

rc = pam_get_item(pamh, PAM_AUTHTOK, (const void **)&passphrase);
[...]
if (passphrase == NULL) {
    [...]
    syslog(LOG_ERR, "NULL passphrase; aborting\n");
    [...]
}

したがって、少なくとも pam_ecryptfs.so は呼び出されます (つまり、SSSD が配置されているためにスキップされるわけではありません)。しかし、なぜ NULL パスフレーズが取得されるのでしょうか?


更新2:

PAMについてさらに詳しく知ったので、私のコピーを投稿に追加しました。共通認証ログイン時に使用されるファイルなので(共通パスワード

答え1

結局、答えはドキュメントにありました。まずは何が問題なのかを理解し、それからセットアップの各要素をもう一度確認する必要がありました。

http://manpages.ubuntu.com/manpages/natty/man8/pam_sss.8.html

オプション「転送パス「」を pam_sss.so に追加すると、SSSD モジュールに、入力されたパスフレーズをスタックに配置するように指示し、他のモジュール (つまり、pam_ecryptfs.so) が情報を使用できるようになります。

したがって、ecryptfs + SSSD が有効になっている /etc/pam.d/common-auth ファイルは次のようになります。

auth    [success=3 default=ignore]  pam_sss.so forward_pass
auth    [success=2 default=ignore]  pam_unix.so nullok_secure try_first_pass
auth    [success=1 default=ignore]  pam_winbind.so krb5_auth krb5_ccache_type=FILE cached_login try_first_pass

auth    requisite   pam_deny.so
auth    required    pam_permit.so
auth    optional    pam_ecryptfs.so unwrap

注記:pam_ecryptfs.so の行の最後に「debug」という単語があると、問題も発生します。

今日は、PAM、ecryptfs、gnome-keyring について多くのことを学びました。これが将来的に人々の役に立つことを願っています。また、これをデフォルト設定として追加するための機能リクエストを送信するかもしれません。

関連情報