LDAP と PAM は GUI ログインでは機能しますが、SSH では機能しません。

LDAP と PAM は GUI ログインでは機能しますが、SSH では機能しません。

2つのDebian仮想マシンがあります。そのうちの1つはLDAPサーバーを実行しており、もう1つはlibpam_ldapを使用するようにしてください。

クライアントシステムはLDAPからユーザーのGUIログイン画面を取得できますが、LDAPのユーザーのみを使用して仮想マシンにSSH接続することはできません。私はrootユーザー(ローカル)からLDAPユーザーに行くことができませんが、su同じ問題だと思います。

クライアントコンピュータで私がldapsearch望むユーザーを見つけるために使用できます。

ldapsearch  -x -D "cn=admin,dc=mydomain,dc=com" -W -b "uid=testuser,ou=People,dc=mydomain,dc=com"

これにより、管理者のLDAPパスワードの入力を求められ、ユーザー履歴が返されます。

dn: uid=testuser,ou=People,dc=mydomain,dc=com
uid: testuser
cn: Test User
objectClass: account
objectClass: posixAccount
objectClass: top
objectClass: shadowAccount
userPassword:: [removed for stackexchange posting ]
shadowLastChange: 17543
shadowMax: 99999
shadowWarning: 7
loginShell: /bin/bash
uidNumber: 1001
gidNumber: 1001
homeDirectory: /home/dwill
gecos: Test User,,,

(私のドメイン名は実際に「mydomain.com」。今回の投稿のために修正しました)

しかし、これを行うとgetent passwd testuser何も返されません。

/etc/nsswitch.confこんなラインがあります。

passwd:         files ldap
group:          files ldap
shadow:         files ldap

以前はそんなことがありましたが、ガイドがそんなことがあってcompat ldap変えようとしました。filesどちらも動作しません。

決定した。/etc/ssh/sshd_configUsePAM yes

Googleを介して見つけることができるすべてのガイドに従いましたが、それでも機能しません。

どんな提案がありますか?

ベストアンサー1

問題を発見しました。 Googleで見つけたガイドの1つがこれを行うように指示しました。

apt-get libnss-ldap libpam-ldap nslcd

libpam-ldapd後で私もそれより最新という記事を発見してインストールlibpam-ldapしました。

libnss-ldapいくつかの構成を実行し、/etc/libnss-ldap.confファイルを生成するように求められます。その後、libpam-ldap削除しますlibnss-ldapが、設定ファイルはそのままにしてください。明らかに、設定ファイルはそれを使用しており、そのファイルのバインディングでエラーが発生するため、まだ意味があります。 bindnを修正した後に機能しました。

なぜこれらの2つのLDAPモジュールをインストールしたいのかわかりません。最初のクライアントVMが機能した後、libpam-ldapdとnslcdのみを使用して別のクライアントVMを設定しましたが、初めて機能しました。

おすすめ記事