根据此serverfault.com答案允许SCP,但不能使用SSH实际登录,当前受支持的一种方式是使用rssh
,可从universe
存储库中获得:
sudo apt-add-repository universe
sudo apt-get install rssh
要允许SCP,您必须取消注释文件中的相应行/etc/rssh.conf
(以及您希望启用的任何其他协议):
allowscp
#allowsftp
#allowcvs
#allowrdist
#allowrsync
#allowsvnserve
然后,只需将用户的登录shell更改为rssh shell,例如
sudo chsh -s /usr/bin/rssh steeldriver
然后您可以测试SCP是否有效,例如
$ scp steeldriver@localhost:~/Pictures/somefile.png ./
steeldriver@localhost's password:
somefile.png 100% 34KB 33.7KB/s 00:00
$
但是SSH应该失败,并显示拒绝消息,例如
$ ssh steeldriver@localhost
steeldriver@localhost's password:
Welcome to Ubuntu 14.04.4 LTS (GNU/Linux 3.13.0-88-generic x86_64)
* Documentation: https://help.ubuntu.com/
Last login: Wed Jul 6 16:23:47 2016 from localhost
This account is restricted by rssh.
Allowed commands: scp
If you believe this is in error, please contact your system administrator.
Connection to localhost closed.
注意,似乎没有必要添加/usr/bin/rssh
到/ etc / shells中的允许登录shell列表中