在 SFTP 连接时将用户重定向到目录

在 SFTP 连接时将用户重定向到目录

我有一个 FTP 用户,我通过 SFTP 和密钥文件登录到服务器。太棒了,效果很好。

现在,默认情况下用户登录到 /home/ftp,这很不酷。我想知道是否有办法在连接到目录(例如 /var/www/site.com/public/files/)之前重定向

嗯?:)

答案1

将用户的主目录设置为,/var/www/site.com/public/files一切就绪了。当然,您必须移动他当前主目录的内容。执行此操作的命令是:

usermod -d /path/to/new/homedir/ username 

username您要移动其主目录的用户的名称在哪里。

答案2

另一个可以由用户更改的选项是直接在 SFTP 客户端软件中将起始目录设置为 /var/www/httpd。在多个平台上运行的 FileZilla 有这样的选项,据我所知,大多数 SFTP 客户端程序都有这样的选项。

答案3

您可以修改/重新编译 stfp-server 以仅使用此目录,并修改 sshd_config 文件以使用此 stfp-server。请参阅 sshd-config 文档中的子系统和内部 sftp 选项。

答案4

您需要在服务器上进行更改。由于您没有说明正在运行哪个 sftp 服务器,我猜测该服务器正在运行 vsftpd,因为它是极少数可以同时提供 FTP 和 SFTP 服务的 ftp 服务器之一。

如果正在运行 vsftpd,则需要编辑/etc/vsftpd.conf(或者它可能位于不同位置的不同文件中,尤其是在运行虚拟主机时)。添加或更改行,local_root使其显示为local_root=/var/www/site.com/public/files/。然后使用重新启动服务器service vsftpd restart。以 root 或 sudoer 身份运行是进行这些更改的暗示和要求。此外,不要忘记在上设置适当的权限/var/www/site.com/public/files/

相关内容