我已设置以下ssh隧道,以便从家里访问办公计算机:
[从办公计算机执行]设置连接Office-> Home(因为Home具有公用IP)。设置从办公计算机到家庭的反向隧道:
func remove(at indices: [Int], from text: inout String) {
let sortedIndices = indices.sorted(by: >)
for index in sortedIndices {
if let anIndex = text.index(text.startIndex, offsetBy: index - 1, limitedBy: text.endIndex) {
text.remove(at: anIndex)
}
}
}
remove(at: [inputLabelOne, inputLabelTwo], from: &text)
[从家用计算机执行]在家连接到办公室。从步骤1开始使用隧道:
ssh -CNR 19999:localhost:22 homeuser@home
现在,我如何从第三台计算机而不是家用计算机访问办公计算机?我可以从互联网上的任何计算机访问我的家用计算机。
谢谢
答案 0 :(得分:-1)
来自SSH文档的-R
参数:
默认情况下,服务器上的TCP侦听套接字将绑定到 仅回送接口。这可以通过指定- 绑定地址。空的bind_address或地址“ *”, 指示远程套接字应该在所有接口上侦听。 只有在以下情况下,指定远程bind_address才会成功 服务器的GatewayPorts选项已启用(请参见sshd_config(5))。
所以您必须使用:
ssh -CNR 0.0.0.0:19999:localhost:22 homeuser@home
如果您在家庭服务器上使用OpenSSH sshd
服务器,则需要将GatewayPorts
中的/etc/ssh/sshd_config
选项设置为yes
。