这里的端口转发是指全部端口转发种类,-D
动态端口转发(现在适用于 socks4 和 socks5),-L
本地端口转发到远程,-R
远程端口转发到本地。如何分别细粒度控制它们?我知道还有permitopen
选项只允许指定的转发到主机和端口。
我想知道AllowTcpForwarding
在 sshd_config 中会做-L
什么-R
,但是没有-D
?
如何允许-D
,但不允许-L
或-R
,或者这是不可能的?我已经添加command="/bin/echo no-command"
到authorized_keys文件中。
答案1
允许-D
但不允许-L
是不可能的,因为它们仅在客户端上有所不同 - 就协议而言,两者完全相同(它们都direct-tcpip
通过 SSH 打开通道)。
它们之间的唯一区别是 ssh 客户端如何决定连接哪个地址(在命令行中指定,或通过 SOCKS 获取)。