linux – 让sshd听一个特定的界面

在我的机器上,我使用的是使用tun0接口的OpenVPN.我希望sshd只能在这个界面上收听.

我知道,我可以指定要收听的IP地址

/etc/ssh/sshd_config

用一个

ListenAddress 0.0.0.0

指示.但是我的IP地址会改变,所以我不能在这里选择一个总是有效的IP.我知道只有当VPN启动时我才能启动守护进程 – 这不是问题所在.

如何让sshd只监听特定的接口(tun0)?

解决方法

你不能直接这样做,因为sshd只能理解IP地址.您可以使用openvpn up脚本将某些内容组合在一起

-up cmd
Shell command to run after successful TUN/TAP device open (pre
–user UID change). The up script is useful for specifying
route commands which route IP traffic destined for private
subnets which exist at the other end of the VPN connection into
the tunnel…

另请参阅清除的–down选项以及详细说明脚本安全性等的文档的相关部分.

您会发现tun设备的IP地址作为环境变量传递给脚本.此外,sshd在表单的命令行上获取选项

-oSomeOption=SomeValue

-o选项
可用于以.中使用的格式提供选项
配置文件.这对于指定选项很有用
没有单独的命令行标志.有关详细信息
选项及其值,请参阅sshd_config(5)

所以你可以使用

-o ListenAddress=<some address>

大概你有一些带外方法与你的VPS交谈,所以当这个中断时你可以联系服务器.

相关文章

linux常用进程通信方式包括管道(pipe)、有名管道(FIFO)、...
Linux性能观测工具按类别可分为系统级别和进程级别,系统级别...
本文详细介绍了curl命令基础和高级用法,包括跳过https的证书...
本文包含作者工作中常用到的一些命令,用于诊断网络、磁盘占满...
linux的平均负载表示运行态和就绪态及不可中断状态(正在io)的...
CPU上下文频繁切换会导致系统性能下降,切换分为进程切换、线...