我们可以让虚拟用户使用SFTP服务器吗?

时间:2020-03-05 18:46:21  来源:igfitidea点击:

我已经设置了一段时间的虚拟用户FTP服务器(Mac OS X,但不是服务器版本),即用户不是服务器操作系统中的实际用户帐户,而是由FTP服务器软件处理的帐户-在操作系统上,它们看起来都像是" ftp"用户帐户。我想停用FTP服务器软件,而改为使用SFTP。

有没有一种设置SFTP / SSH的方法,以便我可以创建虚拟用户并同时将其沙箱化?

我想要虚拟用户的原因是因为我会不时添加和删除帐户,并且使用适当的用户帐户进行操作常常会变得凌乱,而且我不知道将其沙盒化的好方法。总是有一些文件,每个用户都有自己的用户目录(很多文件只有在他们坐在机器前实际登录到计算机时才有意义),在删除帐户后会被隔离,因此我们拥有手动将其删除,依此类推。

解决方案

回答

Unix上通常的通用答案是" PAM"。如果我们希望普通的旧版OpenSSH SSHD处理SFTP,则需要在SSHD的PAM堆栈(/etc/pam.d/sshd)中插入一些可以满足我们需要的内容,而不必使用那些不需要的内容。这可能是一台通用目录服务器(可能是LDAP),该服务器将所有虚拟用户映射到一个主目录,并为他们提供一种受限的或者外壳式的外壳。

如果要查看也可以执行FTP-ssl的FTP服务器(与SFTP不同),那么像Pure-ftpd或者vsftp这样的ftp服务器就可以做到。 FTP-ssl服务器具有更简单的虚拟用户支持。

http://www.bsdguides.org/guides/freebsd/networking/pure-ftpd_virtual_users.php

回答

如果我们愿意使用商业产品,则可以在Unix / Linux / Windows上使用Van Dyke Software的VShell Server,它通过SSH和SFTP协议支持虚拟用户(多个后端):

VShell服务器