如何将ProFTPD配置为具有系统用户,PK身份验证和自定义umask的仅SFTP服务器?

Morpheu5

因此,我设法将ProFTPD配置为允许系统用户登录密码。我有两个问题:umaskpk auth

Include /etc/proftpd/modules.conf

UseIPv6             on
ServerName          "Debian"
ServerType          standalone
MultilineRFC2228    on
DefaultServer       on
Port                21
PassivePorts        49152 49407
MaxInstances        30
SystemLog           /var/log/proftpd/proftpd.log

<IfModule mod_ctrls.c>
    ControlsEngine      off
    ControlsMaxClients  2
    ControlsLog         /var/log/proftpd/controls.log
    ControlsInterval    5
    ControlsSocket      /var/run/proftpd/proftpd.sock
</IfModule>

<IfModule mod_ctrls_admin.c>
    AdminControlsEngine off
</IfModule>

<Global>
    UseFtpUsers         on
    IdentLookups        off
    DeferWelcome        off
    ShowSymlinks        on
    TimeoutNoTransfer   600
    TimeoutStalled      600
    TimeoutIdle         1200
    DisplayLogin        welcome.msg
    DisplayChdir        .message true
    ListOptions         "-l"
    DenyFilter          \*.*/
    DefaultRoot         ~
    RequireValidShell   off
    User                proftpd
    Group               nogroup
    Umask               007 007
    AllowOverwrite      on
    # AuthOrder           mod_sql.c
    CreateHome          on
    TransferLog         /var/log/proftpd/xferlog

    <IfModule mod_quotatab.c>
        QuotaEngine off
    </IfModule>

    <IfModule mod_ratio.c>
        Ratios off
    </IfModule>

    <IfModule mod_delay.c>
        DelayEngine on
    </IfModule>

    <IfModule mod_xfer.c>
        MaxStoreFileSize    70 Mb
        HiddenStores        on
        DeleteAbortedStores on
    </IfModule mod_xfer.c>

    <Directory /htdocs/*/>
        Umask 0007
        <Limit MKD XMKD RMD XRMD SITE_CHMOD>
            DenyUser !ftpadmin
        </Limit>
    </Directory>
</Global>

Include /etc/proftpd/sftp.conf

并且sftp.conf是如下

<IfModule mod_sftp.c>
    <VirtualHost $(hostname)>
        Port 23
        SFTPEngine on
        SFTPAuthorizedUserKeys file:/home/%u/.ssh/authorized_keys
        SFTPHostKey /etc/ssh/ssh_host_dsa_key
        SFTPHostKey /etc/ssh/ssh_host_rsa_key
        SFTPHostKey /etc/ssh/ssh_host_ecdsa_key
        SFTPCompression delayed
        SFTPLog /var/log/proftpd/sftp.log
    </VirtualHost>
</IfModule mod_sftp.c>

[umask]但是,当用户登录put一个sa文件时,上载的文件将获得其最初拥有的权限(我正在使用OS X和Linux作为客户端进行测试,因此很有意义)。我没有测试过纯FTP解决方案,但我希望提供SFTP。

[pk auth]当我尝试PK身份验证时,客户端正确提供了正确的密钥,并说

debug2: we sent a publickey packet, wait for reply
debug1: Server accepts key: pkalg ssh-rsa blen 535
debug2: input_userauth_pk_ok: fp SHA256:Eft1LIOozSylL20lfMc9gUdl3gKtd0zEdeyNtCb1p8Q

但最后得出结论

debug1: Authentications that can continue: password

这使我无休止。在服务器端,我有

no account for user 'sftpuser' found
sending userauth failure; remaining userauth methods: password

这很有趣,因为用户确实存在(并且可以成功执行密码登录)。我什至将我的OpenSSH密钥转换为ProFTPD似乎更喜欢的RFC4716格式。

我承认我总共有大约4个小时的ProFTPD使用经验,但是我一直在阅读所有可能的内容,并且配置文件对我来说很有意义。所有这些都在Docker容器中运行。我想念什么?

卡斯塔利亚天气

与FTP不同,SFTP上传通常包含自己的权限,这是SFTPOPEN请求的一部分要使SFTP上传的行为更像FTP上传,就ProFTPD配置(例如 Umask)而言,您想使用以下命令配置mod_sftp忽略上传权限IgnoreSFTPUploadPerms SFTPOptions

<IfModule mod_sftp.c>
  ...
  SFTPOptions IgnoreSFTPUploadPerms
  ...
</IfModule>

对于公钥身份验证问题,SFTPLog您配置的内容应该有更多关于可能是问题的线索。可能配置的文件不存在,或者没有必要的权限?请记住,~/.ssh/authorized_keysOpenSSH经常使用该文件并且该文件的格式与ProFTPD所需的格式不同。因此,我经常使用:

SFTPAuthorizedUserKeys file:~/.sftp/authorized_keys

一个不同的OpenSSH需要什么文件,以不同的格式(RFC 4716),以避免任何可能的混乱/冲突。

希望这可以帮助!

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如何在WCF服务中为自定义绑定配置Windows身份验证?

来自分类Dev

Symfony:根据LDAP服务器对用户进行身份验证,但仅当用户名位于自定义db表中时才允许登录

来自分类Dev

如何在Bot框架中使用自定义身份验证服务器?

来自分类Dev

具有Django 1.5,自定义字段和共享身份验证的多种用户类型

来自分类Dev

如何使用java config将Spring Security 3.2配置为使用Dao身份验证和自定义身份验证过滤器

来自分类Dev

将具有自定义架构的 mysql 用户存储添加到 WSO2 身份服务器

来自分类Dev

SFTP服务器多用户身份验证

来自分类Dev

带有自定义服务器身份验证的Ember简单身份验证(凭据未定义)

来自分类Dev

“将此文件复制到您的身份验证服务器”- Firebase 自定义身份验证

来自分类Dev

如何将Dante socks5配置为仅使用特定用户进行身份验证

来自分类Dev

Docker容器上的解析服务器的自定义身份验证(OAuth2)

来自分类Dev

将配置文件模型连接到远程用户(自定义身份验证后端)

来自分类Dev

具有LDAP身份验证的自定义权限

来自分类Dev

具有自定义JWT身份验证的OAuth

来自分类Dev

具有自定义身份验证筛选器的WebSecurityConfigurerAdapter-依赖问题

来自分类Dev

带有Django 1.5,自定义字段和共享身份验证的多种用户类型

来自分类Dev

如何将自定义信息从App Engine身份验证器传递到端点?

来自分类Dev

具有Spring Security和Java Config的自定义身份验证提供程序

来自分类Dev

如何将自定义对象从自定义身份验证提供程序传递到控制器?

来自分类Dev

如何在ember cli中使用自定义授权者和自定义身份验证器进行ember简单身份验证

来自分类Dev

我们是否可以仅将Firebase与flutter一起用于身份验证,并将自定义服务器用于其他所有功能?

来自分类Dev

如何通过具有身份验证的代理访问TFS服务器?

来自分类Dev

EMR Hue:不支持自定义服务器身份验证。有效的是 ['NONE'、'KERBEROS'、'PAM'、'NOSASL'、'LDAP']

来自分类Dev

自定义服务器上的本地软件包存储库无法通过身份验证

来自分类Dev

领域对象服务器:使用自定义身份验证成功登录后访问被拒绝错误

来自分类Dev

具有多个资源服务器的OAuth 2.0身份验证服务器

来自分类Dev

通过具有自定义用户的数据库进行Spring安全身份验证

来自分类Dev

带有NTLM身份验证和自定义用户名和密码的BizTalk发送端口

来自分类Dev

TomEE ORA-01017 服务器尝试与操作系统用户进行身份验证

Related 相关文章

  1. 1

    如何在WCF服务中为自定义绑定配置Windows身份验证?

  2. 2

    Symfony:根据LDAP服务器对用户进行身份验证,但仅当用户名位于自定义db表中时才允许登录

  3. 3

    如何在Bot框架中使用自定义身份验证服务器?

  4. 4

    具有Django 1.5,自定义字段和共享身份验证的多种用户类型

  5. 5

    如何使用java config将Spring Security 3.2配置为使用Dao身份验证和自定义身份验证过滤器

  6. 6

    将具有自定义架构的 mysql 用户存储添加到 WSO2 身份服务器

  7. 7

    SFTP服务器多用户身份验证

  8. 8

    带有自定义服务器身份验证的Ember简单身份验证(凭据未定义)

  9. 9

    “将此文件复制到您的身份验证服务器”- Firebase 自定义身份验证

  10. 10

    如何将Dante socks5配置为仅使用特定用户进行身份验证

  11. 11

    Docker容器上的解析服务器的自定义身份验证(OAuth2)

  12. 12

    将配置文件模型连接到远程用户(自定义身份验证后端)

  13. 13

    具有LDAP身份验证的自定义权限

  14. 14

    具有自定义JWT身份验证的OAuth

  15. 15

    具有自定义身份验证筛选器的WebSecurityConfigurerAdapter-依赖问题

  16. 16

    带有Django 1.5,自定义字段和共享身份验证的多种用户类型

  17. 17

    如何将自定义信息从App Engine身份验证器传递到端点?

  18. 18

    具有Spring Security和Java Config的自定义身份验证提供程序

  19. 19

    如何将自定义对象从自定义身份验证提供程序传递到控制器?

  20. 20

    如何在ember cli中使用自定义授权者和自定义身份验证器进行ember简单身份验证

  21. 21

    我们是否可以仅将Firebase与flutter一起用于身份验证,并将自定义服务器用于其他所有功能?

  22. 22

    如何通过具有身份验证的代理访问TFS服务器?

  23. 23

    EMR Hue:不支持自定义服务器身份验证。有效的是 ['NONE'、'KERBEROS'、'PAM'、'NOSASL'、'LDAP']

  24. 24

    自定义服务器上的本地软件包存储库无法通过身份验证

  25. 25

    领域对象服务器:使用自定义身份验证成功登录后访问被拒绝错误

  26. 26

    具有多个资源服务器的OAuth 2.0身份验证服务器

  27. 27

    通过具有自定义用户的数据库进行Spring安全身份验证

  28. 28

    带有NTLM身份验证和自定义用户名和密码的BizTalk发送端口

  29. 29

    TomEE ORA-01017 服务器尝试与操作系统用户进行身份验证

热门标签

归档