You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何确认Linux SSH隧道是否已成功激活并正常工作?

验证SSH隧道是否正确初始化的方法

一、本地主机验证

1. 检查本地监听端口

SSH本地隧道启动后会在本地监听指定端口,可通过以下命令确认端口是否处于监听状态:

# 推荐使用ss命令
ss -tuln | grep 3338
# 或使用netstat命令
netstat -tuln | grep 3338

输出中若包含LISTEN状态,说明本地端口已成功监听,隧道的本地端初始化完成。

2. 测试隧道连通性

发起实际连接请求触发SSH隧道的后端连接尝试,验证整个链路是否通畅:

# 使用netcat测试
nc -zv localhost 3338
# 或使用telnet测试
telnet localhost 3338
  • 返回succeeded(nc)或进入telnet交互界面,说明隧道可正常转发流量;
  • 返回Connection refused或超时,说明隧道后端连接失败(大概率是堡垒机无法访问目标地址)。

注:SSH本地转发在启动时仅完成本地端口监听和向堡垒机注册转发请求,不会立即验证目标地址的可达性,只有当首次有流量通过隧道时,才会尝试建立堡垒机到目标地址的连接——这也是你初始化时verbose输出无差异的核心原因。

二、bastion1堡垒机验证

1. 直接验证堡垒机到目标地址的连通性

登录堡垒机后,测试其与目标地址的网络连通性(这是隧道正常工作的前提):

# 测试可达目标
nc -zv <reachable-ip-adress> 4000
# 测试不可达目标
nc -zv <unreachable-ip-adress> 4001

如果堡垒机无法访问目标地址,隧道必然无法正常工作。

2. 检查堡垒机上的SSH转发状态

登录堡垒机后,查看SSH进程相关的网络连接,确认转发是否已注册:

# 查看SSH相关的网络连接
sudo lsof -i -n | grep ssh
# 或检查是否有到目标地址的连接(有流量通过后才会出现)
ss -tuln | grep <目标端口>

3. 查看SSH服务日志

堡垒机的SSH日志会记录转发相关的错误信息,例如目标地址不可达时的报错:

# Debian/Ubuntu系统
sudo tail -f /var/log/auth.log
# RHEL/CentOS系统
sudo tail -f /var/log/secure

当有流量尝试通过隧道时,若目标不可达,日志中会出现类似connect to address <unreachable-ip-adress> port 4001: Connection refused的错误信息。

内容的提问来源于stack exchange,提问作者it.drive.view

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.20 01:10:37