我可以设置
- 为某人(不是系统上的当前用户)提供安全 FTP
- 适用于 Ubuntu 上的两个不同目录
- 在 public_html 里面?
我现在不想给用户纯 ssh 帐户。
任何其他上传、下载、删除文件的安全方式也很好。nginx不可用 apache2。
答案1
尝试使用scponly
编辑:
设置示例:
1)创建帐户使用scponly
:
sudo useradd joe
2)更改帐户的默认shell:
sudo chsh joe
回答/usr/bin/scponly
, (确保 在/usr/bin/scponly
中/etc/shells
)
3)你可以修改 joe 的主目录/my/web/site/dir
为/etc/passwd
sudo vim /etc/passwd
4)修改权限:
sudo chgrp -R joe /my/web/site/dir
sudo chmod -R g+w /my/web/site/dir
5)如果您使用AllowUsers
指令,/etc/ssh/sshd_config
请将 joe 添加到可以登录的用户列表中。
6)重新启动ssh:
sudo /etc/init.d/ssh restart
7)从另一台主机测试:
scp web_site_stuff.html [email protected]:
答案2
为新用户创建一个主目录,然后符号链接其他两个目录。在该主目录中,并授予这两个文件夹适当的权限。
答案3
我相信您可以使用 rssh 设置受限 shell,以通过 sftp 提供访问权限,但不能通过 ssh 提供访问权限。我还相信您可以使用 chroot 将用户“锁定”到特定文件夹。以下两个链接进一步解释了这一点:
如何:限制用户使用 SCP 和 SFTP 并使用 rssh 阻止 SSH Shell 访问
Linux 配置 rssh Chroot Jail 以将用户仅锁定在其主目录中
请注意,我实际上自己从未这样做过。
编辑:正如 Zoredache 指出的那样,直接在 sshd 配置中执行 chrooting 可能是一个更好的解决方案,而不是像上面的链接建议的那样在 rssh 配置中执行此操作。
答案4
最后我用了支持 TLS 的纯 FTPd