【问题标题】:Password authentication for specific ftp account特定 ftp 帐户的密码验证
【发布时间】:2014-12-05 08:04:15
【问题描述】:

我使用公钥/私钥认证通过ftp(vsftpd)登录,密码认证从sshd_config关闭。现在,我想创建一个 ftp 帐户,我可以通过 ftp 连接而无需私钥,因此,只需使用用户名和密码。如果可能的话,我该怎么做?

我使用的是 debian 7。

谢谢

【问题讨论】:

    标签: linux ssh ftp


    【解决方案1】:

    我认为您不能对不同的系统用户使用不同的身份验证方法,因为他们的登录是由 SSH 处理的。使用 PAM 或许可行,但很容易出错并引入安全漏洞。

    一个简单的解决方案是在 vsftpd 中设置独立定义的虚拟用户(有很多指南)。缺点是这些用户将无法通过 SFTP 连接,因为没有关联的 SSH 帐户,因此他们需要连接到不同的端口(例如 21)。您还需要分别管理这些帐户和密码。

    如果您选择采用这种方式,您还需要安装 libpam-pwdfile,这是一个 PAM 身份验证模块,可从 htpasswd 样式文件中读取密码。
    然后将/etc/pam.d/vsftpd的内容替换为:

    auth        required    pam_listfile.so item=user sense=deny file=/etc/ftpusers onerr=succeed
    auth        required    pam_pwdfile.so pwdfile=/etc/vsftpd/passwd
    account     required    pam_permit.so
    session     required    pam_permit.so
    password    required    pam_deny.so
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2021-10-19
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-04-18
      • 2018-06-02
      • 2013-07-27
      • 2019-07-27
      相关资源
      最近更新 更多