Ftp
VsFTPd - LDAP - PAM
我正在嘗試配置 VsFTPd 伺服器以再次對 LDAP 伺服器進行身份驗證。這可能很容易,但由於這是我第一次同時使用 LDAP 和 PAM,所以我遇到了一些困難。VsFTPd 在 Ubuntu Server 11.04 上執行,LDAP 是 10.10 Ubuntu Server 上的 OpenLDAP。我在第一個上禁用了 AppArmor。VsFTPd 無法連接到 LDAP 伺服器,在我的系統日誌中我有:
vsftpd: pam_ldap: ldap_simple_bind Can't contact LDAP server
LDAP 伺服器沒問題,因為我可以做一個
ldapsearch
.這是我的
/etc/pam.d/vsftpd
文件:auth required pam_listfile.so item=user sense=deny file=/etc/ftpusers onerr=succeed @include common-account @include common-session @include common-auth auth required pam_ldap.so account required pam_ldap.so session required pam_ldap.so password required pam_ldap.so
這是我的
/etc/ldap.conf
文件:base dc=example,dc=com uri ldapi:///ldap.example.com ldap_version 3 rootbinddn cn=admin,dc=example,dc=com pam_password md5 nss_initgroups_ignoreusers a_bunch_of_system_users
誰能幫幫我?謝謝你。
編輯:文件的新版本
/etc/pam.d/vsftpd
:auth required pam_listfile.so item=user sense=deny file=/etc/ftpusers onerr=succeed account required pam_unix.so account sufficient pam_ldap.so session required pam_limits.so session required pam_unix.so session optimal pam_ldap.so auth required pam_env.so auth sufficient pam_unix.so nullok_secure auth sufficient pam_ldap.so use_first_pass auth required pam_shells.so
根據
man ldap.conf
:URI <ldap[si]://[name[:port]] ...>
URI 方案可以是ldap、ldaps或ldapi中的任何一個,它們分別指的是 LDAP over TCP、LDAP over SSL (TLS) 和 LDAP over IPC(UNIX 域套接字)。
所以,換成
uri ldapi:///ldap.example.com
再試uri ldap:///ldap.example.com
一次。
好的,這部分問題解決了。這是工作
/etc/pam.d/vsftpd
文件:auth required pam_ldap.so account required pam_ldap.so password required pam_ldap.so
您必須將此行添加到
/etc/vsftpd.conf
:guest_enable=YES
在此之後,仍有一些工作可以在 FTP 伺服器中正確 chroot LDAP 使用者,但他們現在可以登錄了。
再次感謝 Rilindo 的幫助。畢竟,ACL 不是這裡的問題。