我正在准备将 CentOS 6 服务器升级到 CentOS 7,并想知道 pam_mysql(来自 EPEL)去哪儿了(yum 搜索 - 未找到)。然后我听说了 SSSD,听起来真的很不错,但发现它只与 LDAP 有关 - 我很想使用它,但根本不能,因为我有一个管理面板(froxlor)正在运行,它将用户数据存储在 mysql-db 中(这也是 proftpd w/mod_sql 和 libnss-mysql 的后端),并且想要为用户提供 SSH 登录,我需要通过 mysql 进行 SSH 身份验证。
libnss-mysql 已经在运行 - 但我无法通过 SSH 登录。
由于 pam_mysql 已经消失,如何在 CentOS 7 中实现这一点?非常感谢!
答案1
这项目似乎已经死了,最后一次更新是在 2006 年。自然,它已因此从 EPEL 中删除。
然而,https://github.com/NigelCunningham/pam-MySQL. 也许可以尝试一下,但是我会谨慎地在标准 repo 之外使用如此重要的模块。
也许您可以向 EPEL 人员建议用这个分叉作为替代品。
答案2
虽然使用 Fedora RPM 在大多数情况下是没问题的,但如果你想为 Centos 7 构建自己的 RPM,基于Fedora 源 RPM,这是步骤:
# Install required build packages
yum install make gcc-c++ autoconf automake libtool rpm-build pam-devel mysql-devel openssl-devel
# Download the fedora source rpm
wget "ftp://ftp.pbone.net/mirror/archive.fedoraproject.org/fedora-secondary/releases/23/Everything/source/SRPMS/p/pam_mysql-0.7-0.20.rc1.fc23.src.rpm"
# Rebuild the RPM, it should say "Wrote blah blah.rpm" at the end
rpmbuild --rebuild pam_mysql-0.7-0.20.rc1.fc23.src.rpm
# Install the Centos Specific RPM
yum localinstall /home/you/rpmbuild/RPMS/x86_64/pam_mysql-0.7-0.20.rc1.el7.centos.x86_64.rpm
当然,您应该使用 Centos 7 服务器来进行重建。
对于任何未来的 Centos 7 设置,现在您有了兼容的 RPM,您可以将其放在您自己的 Yum 服务器或仅放在 webserver/s3 存储桶上并通过自定义 URL 进行安装:
yum localinstall http://www.example.com/path/to/pam_mysql-0.7-0.20.rc1.el7.centos.x86_64.rpm
答案3
我刚刚配置了一个新的 CentOS 7 机器,想使用 mysql 和 vsftpd。我尝试了 Cristian 的建议,并搜索了:pam_mysql-0.7-0.16.rc1.fc20.x86_64.rpm
我在这里找到了一个镜像列表: http://rpm.pbone.net/index.php3/stat/4/idpl/25165183/dir/fedora_20/com/pam_mysql-0.7-0.16.rc1.fc20.x86_64.rpm.html
我已经使用 vsftp 测试过,一切正常。
答案4
遇到此问题的人比您想象的要多。我看不出有什么理由不使用 pam_mysql。尝试使用 Fedora Everything 中的 pam_mysql-0.7-0.15.rc1.fc19.x86_64.rpm(或 pam_mysql-0.7-0.16.rc1.fc20.x86_64.rpm)。检查 libnss-mysql 版本(libnss-mysql-1.5-20.fc20.x86_64.rpm、libnss-mysql-1.5-19.fc19.x86_64.rpm libnss-mysql-1.5-19.el7.x86_64.rpm)。似乎可以工作,但请先测试一下。