Ubuntu Telnet 网络连接问题排查手册
一 快速定位思路
二 本机作为客户端连不上的排查
sudo apt-get update && sudo apt-get install -y telnettelnet 目标IP 端口(如 telnet 192.168.1.10 23);若只是域名不通,先 nslookup 域名 检查 DNS。nc -vz 目标IP 端口(成功会显示 succeeded,失败显示 Connection refused/timeout)。ip route、ping 目标IP;若跨网段,确认网关可达。三 本机作为服务端被连不上的排查
netstat -tulnp | grep -E '(:23|:<你的端口>)'sudo apt-get install -y telnetd openbsd-inetdgrep telnet /etc/inetd.conf 应能看到类似telnet stream tcp nowait telnetd /usr/sbin/tcpd /usr/sbin/in.telnetdsudo systemctl restart openbsd-inetdss -tulnp | grep :23 应出现 0.0.0.0:23 的 LISTEN。sudo ufw allow <端口>/tcp,或临时全关验证 sudo ufw disable(验证后请恢复策略)。sudo firewall-cmd --list-ports 与 sudo firewall-cmd --add-port=<端口>/tcp --permanent && sudo firewall-cmd --reload四 Docker 场景的专项排查
docker ps 查看 0.0.0.0:<主机端口>-><容器端口>/tcp 是否正确;若仅 127.0.0.1 绑定,外部不可达。docker port <容器名/ID>docker inspect -f '{{range .NetworkSettings.Networks}}{{.IPAddress}}{{end}}' <容器名/ID>,然后 telnet <容器IP> <容器端口> 排除宿主机转发问题。五 常见报错对照与修复建议
| 现象 | 含义 | 快速检查 | 修复建议 |
|---|---|---|---|
| Connection refused | 目标端口无监听或被拒绝 | `ss -tulnp | grep <端口>;telnet 127.0.0.1 <端口>` |
| 超时 | 网络/防火墙丢弃 SYN | ping、ip route、nc -vz;检查云安全组/UFW |
放行对应 TCP 端口;核对路由与云安全组规则 |
| 仅本机能连,外部不能连 | 监听在 127.0.0.1 或仅内网口 | ss -tulnp 看监听地址 |
改为监听 0.0.0.0;调整服务 bind/安全组 |
| 能连上但立刻断开 | 服务主动拒绝或认证失败 | 查看服务日志(如 /var/log/*) |
修正服务配置与认证策略 |
| 域名连不通 | DNS 解析失败 | nslookup 域名 |
更换 DNS(如 223.5.5.5/1.1.1.1),清缓存后再试 |
| Docker 端口连不通 | 端口未映射或仅 127.0.0.1 | docker ps、docker port、容器 IP 直连 |
正确映射 -p <主机端口>:<容器端口>;放行防火墙/安全组 |
六 安全与替代建议