我可以设置吗?
我现在不想给用户纯SSH帐户。
任何其他上传,下载,删除文件的安全方式也不错。 nginx可用不是apache2。
尝试使用scponly
编辑:
设置示例:
1)使用scponly
创build账户:
sudo useradd joe
2)更改帐户的默认shell:
sudo chsh joe
用/usr/bin/scponly
,(确保/usr/bin/scponly
在/etc/shells
)
3)你可以在/etc/passwd
中将joe的主目录修改为/my/web/site/dir
sudo vim /etc/passwd
4)修改权限:
sudo chgrp -R joe /my/web/site/dir sudo chmod -R g+w /my/web/site/dir
5)如果您在/etc/ssh/sshd_config
中使用AllowUsers
指令,请将joe添加到可以login的用户列表中。
6)重新启动ssh:
sudo /etc/init.d/ssh restart
7)从另一个主机testing:
scp web_site_stuff.html [email protected]:
为新用户创build一个主目录,然后符号链接另外两个目录。 在那个家里,给那两个文件夹适当的许可。
我相信你可以使用rssh来设置一个受限的shell来通过sftp来访问,而不是通过ssh来访问。 我也相信你可以通过使用chroot将用户“locking”到特定的文件夹。 这里有两个链接进一步解释了这一点:
如何:将用户限制到SCP和SFTP并使用rssh阻止SSH Shell访问
Linuxconfigurationrssh Chroot Jail将用户locking到他们的主目录
请注意,我自己从来没有这样做过。
编辑:正如Zoredache指出,这可能是一个更好的解决scheme,直接在sshdconfiguration中做chroot,而不是像上面的链接build议那样在rsshconfiguration中进行。
最后我在Debian和Ubuntu上使用SFTP Jails进行限制访问
最后我用TLS支持pure-FTPd