单一用途的SSH帐户,专用于反向端口转发

在我的Debian系统中,我想创build一个允许从机器向我的服务器进行反向端口转发的用户,但是我不确定如何创build专门用于此用途的受限用户。

例如,我们将打电话给我的服务器“Sam”和我的笔记本电脑“Luke”。 我希望Luke上的一个用户能够执行一个反向端口转发ssh命令给Sam,以便Sam上的端口4321被路由到Luke上的4321端口。 例如:

ssh -fnR 4321:localhost:4321 -l limitedUser Sam 

如何在Sam上创build一个只允许执行这个命令的用户?

我经常看到的复杂的SSH文件就是这样做的无密码SSH的权利 。

重要的事情是限制与command=.ssh/authorized_keys和设置他们的shell到/ bin / nologin。 我不确定我的头顶上是什么反向前进命令的名字。 你可能甚至不需要一个,在这种情况下只需要命令nologin或注销什么的。

更准确地说,只需添加permitopen =“host:port”ssh-rsa yourrsakey。 这将限制端口转发到一个主机端口

您可能还对sshd_config中的Match关键字感兴趣: http : //www.openbsd.org/cgi-bin/man.cgi? query = sshd_config

如果你有很多拥有类似权限的用户,并且在某些情况下比较安全,可能会更好一些,因为/ etc / sshd_config只能是可写的,但是〜/ .ssh /并不总是只读的。