温馨提示×

Debian系统如何用SecureCRT进行网络诊断

小樊
40
2025-12-18 18:09:28
栏目: 智能运维

用 SecureCRT 对 Debian 进行网络诊断的实用流程

一、准备与连通性验证

  • SecureCRT 中新建会话:协议选 SSH2,主机填 Debian 的 IP,端口 22;保存后连接。若连接失败,先核对 IP、端口与协议是否一致。
  • 连通性三步:
    1. 在本地终端执行:ping <Debian_IP>(检查 ICMP 可达)。
    2. 在本地终端执行:tracert/traceroute <Debian_IP>(Windows 用 tracert,Linux/macOS 用 traceroute,查看路径丢包/延迟)。
    3. 在本地终端执行:mtr <Debian_IP> --report(持续采样,定位不稳定跳点)。
  • 若以上任一步异常,优先排查物理链路、路由与中间防火墙策略,再回到 SecureCRT 继续深入。

二、在 Debian 上执行深入诊断

  • 登录到 Debian 后,按顺序执行以下命令并观察输出:
目标 命令 关键关注
接口与地址 ip addr; ip route 是否获取到 IP、默认路由是否存在
连通性 ping -c 4 8.8.8.8; ping -c 4 <网关_IP> 区分外网与网关可达性
端口可达 ss -lntp sshd 是否在 22 端口监听
路由跟踪 traceroute 8.8.8.8; mtr --report 8.8.8.8 丢包位置与延迟尖峰
服务状态 sudo systemctl status ssh Active: active (running)
防火墙放行 sudo ufw status; sudo ufw allow ssh(若用 UFW) 22/tcp 是否允许
连接日志 sudo tail -n 50 /var/log/auth.log 认证失败、密钥交换失败等线索
  • ping 不通网关ss 看不到 22 端口监听,优先检查网线/虚拟网络模式、IP/掩码/网关配置与 SSH 服务是否启动。

三、SecureCRT 侧的诊断与配置技巧

  • 会话日志:在会话属性的 Log File 指定路径,开启日志记录,便于回溯命令与输出。
  • 连接参数核查:确认 IP/端口/协议/用户名/认证方式 与目标一致;必要时在 Session Options > Connection > SSH > Key Exchange 中勾选与服务器匹配的密钥交换算法(如 curve25519-sha256、ecdh-sha2-nistp256、diffie-hellman-group14-sha1 等),解决 “Key exchange failed”。
  • 版本与兼容性:保持 SecureCRT 为最新版本,旧版本可能存在兼容性问题。
  • 自动化脚本:利用 TCL/TK 脚本 将“登录 → 执行 ping/traceroute/mtr → 保存结果”串联,提升重复诊断效率。
  • 文件传输校验:通过 Xmodem/Ymodem/Kermit 小文件传输测试链路稳定性与权限配置。

四、常见故障快速定位表

症状 快速检查 修复建议
连接超时/拒绝 ss -lntp 启动 SSH:sudo systemctl start ssh;如未安装:sudo apt update && sudo apt install openssh-server
Key exchange failed /var/log/auth.log;SecureCRT 的 Key Exchange 设置 升级 SecureCRT;在服务器或客户端启用兼容算法(如 curve25519/ecdh/diffie-hellman-group14-sha1)
认证失败 tail /var/log/auth.log 核对用户名/密码/密钥;必要时在 /etc/ssh/sshd_config 中临时启用 PasswordAuthentication yes 测试,再恢复更安全的配置
能 ping 通网关,ping 不通外网 ip route 检查默认路由是否存在;必要时添加:sudo ip route add default via <网关_IP>
端口不通 sudo ufw status; ss -lntp 放行端口:sudo ufw allow ssh;或关闭防火墙做 A/B 测试:sudo ufw disable(测试后恢复)

五、一键诊断脚本示例(可选)

  • 将以下脚本保存为 netdiag.sh,在 SecureCRT 会话中执行:bash netdiag.sh
  • 作用:输出接口、路由、连通性、监听端口、路由跟踪与简要结论,便于复制留存。
#!/usr/bin/env bash
echo "=== 接口与地址 ==="
ip addr
echo
echo "=== 路由表 ==="
ip route
echo
echo "=== 默认网关 ==="
ip route | awk '/default/ {print $3}'
echo
echo "=== 外网连通性 ==="
ping -c 4 8.8.8.8 && echo "  OK" || echo "  FAILED"
echo
echo "=== 网关连通性 ==="
GW=$(ip route | awk '/default/ {print $3; exit}')
[ -n "$GW" ] && ping -c 4 "$GW" && echo "  OK" || echo "  FAILED"
echo
echo "=== 监听端口 ==="
ss -lntp | grep ':22'
echo
echo "=== 路由跟踪 ==="
traceroute -m 15 8.8.8.8
echo
echo "=== 结论 ==="
ping -c 1 8.8.8.8 >/dev/null 2>&1 && echo "外网连通性: OK" || echo "外网连通性: FAILED"
ss -lntp | grep -q ':22' && echo "SSH 监听: OK" || echo "SSH 监听: FAILED"

0