遗憾的是,我需要为 Linux 机器上的单个用户启用 telnet。其他所有人都必须使用 ssh。
如何配置 PAM 来限制哪些用户可以通过 telnet 服务器登录?
答案1
您可以使用成功时在您的/etc/pam.d/telnet
或类似的文件中:
auth required pam_suceed_if.so user = ${telnet_user} quiet
其中 ${telnet_user} 是允许使用 telnet 的用户。
但是,如果您不知道,telnet 是一件坏事。允许的帐户的详细信息很容易被嗅探到,并可能使其他人能够使用该帐户。如果可能的话,请真正使用 SSH。
编辑:哎呀,逻辑混乱了。谢谢 joeforker。
答案2
您可以使用 pam_localuser:
http://www.kernel.org/pub/linux/libs/pam/Linux-PAM-html/sag-pam_localuser.html
对于更灵活的方法,pam_listfile:
http://www.kernel.org/pub/linux/libs/pam/Linux-PAM-html/sag-pam_listfile.html
两者基本上都在本地文件中查找允许/禁止的用户名,并据此检查登录。
答案3
我发现在 RHEL 5 上这是不可能的,因为“telnet-server”和“krb5-telnet”都与 PAM 不兼容。在这些二进制文件上运行“ldd”不会提供 pam 库引用。用户必须使用 PAM 支持编译 telnet-server 本身。