1N4*_*001 7 ssh ip dns hostname openssh
我希望我的 ssh 配置中有一个与任何本地 IP 匹配的主机部分:
Host 10.* 192.168.*.* 172.31.* 172.30.* 172.2?.* 172.1?.*
setting
setting
...
Run Code Online (Sandbox Code Playgroud)
只要我直接连接到相关的 IP,这就会起作用。但是,如果我连接到稍后解析为这些 IP 之一的主机名,则该部分将被忽略。
sshd 有我认为可以用于此的匹配地址部分,但它们在 ssh 客户端配置中不起作用。
有没有办法实现这一目标?
你不能只使用ssh_config
选项来做到这一点,但有exec
选项可以为你做到这一点:
Match exec "getent hosts %h | grep -qE '^(192\.168|10\.|172\.1[6789]\.|172\.2[0-9]\.|172\.3[01]\.)'"
setting
Run Code Online (Sandbox Code Playgroud)