可以的。Ubuntu 上的 vsftpd 本身不直接支持 LDAP,但可以通过 系统 PAM + NSS 集成 LDAP 的方式,让 vsftpd 使用 LDAP 用户进行认证和登录。
下面给你一个清晰的概念和可行方案。
先把 LDAP 集成到 Ubuntu 系统
再让 vsftpd 使用系统认证
LDAP Server
↓
nslcd / sssd
↓
Ubuntu 用户体系
↓
vsftpd (PAM)
常用两种:
vsftpd 使用:
/etc/pam.d/vsftpd
local_enable=YES
pam_service_name=vsftpd
sudo apt install vsftpd sssd ldap-utils
[domain/default]
ldap_uri = ldap://ldap.example.com
ldap_search_base = dc=example,dc=com
id_provider = ldap
auth_provider = ldap
getent passwd ldapuser
local_enable=YES
write_enable=YES
pam_service_name=vsftpd
sudo systemctl restart sssd
sudo systemctl restart vsftpd
| 方案 | 说明 |
|---|---|
| pure-ftpd + LDAP | 原生支持 LDAP |
| proftpd + LDAP | 原生支持 LDAP |
| vsftpd + 脚本同步 | 定期从 LDAP 同步到本地用户 |
✅ Ubuntu + vsftpd 可以集成 LDAP
✅ 正确方式是通过 系统级 LDAP(NSS/PAM)
❌ vsftpd 没有原生 LDAP 模块
如果你愿意,我可以:
你现在是 测试环境 还是 生产服务器?