ssh远程No route to host问题解决
·
ssh远程No route to host问题解决
问题描述
服务器ssh 端口设为10022
主机A192.168.237.1/24 远程登录虚拟
主机B192.168.237.138
报错:ssh: connect to host 192.168.237.136 port 10022: No route to host
解决思路
- ssh端口设置是否正确
- 网络是否可达
- 防火墙策略是否合理
1.ssh端口检查
主机B测试本地:
ssh -p 10022 root@localhost

- 网络是否可达
主机Aping主机B
ping 192.168.237.138

- 防火墙策略是否合理
cat /etc/sysconfig/iptables

iptables部分参数解释:
详细资料参考REDHAT6-IPTABLES
ACCEPT:匹配的数据包指定了目标,则该数据包将跳过其余的规则检查,并允许其继续到达其目的地。
DROP:则将拒绝该数据包访问系统,并且不会将任何内容发送回发送该数据包的主机。
QUEUE:则将数据包传递到用户空间。
REJECT:则将丢弃数据包,但会将错误数据包发送到数据包的始发者。
考虑到数据包在接受的过程中匹配防火墙REJECT规则,直接丢弃数据包的可能性。
试着将-A INPUT -p tcp -m tcp --dport 10022 -j ACCEPT策略往上挪至:REJECT 前
重启iptables:
/etc/init.d/iptables restart
测试:
ssh -p 10022 root@192.168.237.138
远程登录 成功
总结
防火墙策略执行顺序由上至下,依次匹配;在做防火墙配置时注意策略顺序。但我在firewallctl设置下没有出现这种情况,大多是基于iptables设置。
AtomGit 是由开放原子开源基金会联合 CSDN 等生态伙伴共同推出的新一代开源与人工智能协作平台。平台坚持“开放、中立、公益”的理念,把代码托管、模型共享、数据集托管、智能体开发体验和算力服务整合在一起,为开发者提供从开发、训练到部署的一站式体验。
更多推荐



所有评论(0)