sftp与匿名用户

我如何设置匿名sftp用户?

我生成ssh密钥对,在/etc/password中将/usr/lib/sftp-server为shell,并共享私钥(id_rsa),并使用此命令获得访问权限

  sftp -oIdentityFile=id_rsa public_sftp@host 

是个好主意?

你不能。

sftp通过sshlogin您 – 必须有一个您login的帐户。
你可以共享这个帐号(创build多个密钥对,或者只是把私钥传给需要访问的每个人),但是没有相当于普通的FTP的“匿名”用户,也没有密码。

可以使用FTPS (简单的旧的FTP,封装在SSL)来做到这一点,虽然。

SFTP不具有与FTP相同的匿名访问方法,但可以在不进行身份validation的情况下启用匿名访问。

SFTP协议在SSH2传输层上工作,authentication也使用SSH2协议完成。 SSH Tectia Server可以configuration为允许指定用户(例如“匿名”)login,而不需要任何身份validation。 也可以将login限制在一定范围的IP地址或服务器上的特定接口(有关详细信息,请参阅服务器pipe理员手册)。

可以通过对sftp会话进行chroot并拒绝terminal,命令和隧道访问来限制该用户的访问。 用户下载和上传文件的能力取决于操作系统对文件和目录的权限。 如果允许上传,build议在单独的文件系统上拥有写访问权限的目录,以便匿名用户不可能通过填充系统或其他用户使用的文件系统来损害系统。