telnet [IP地址] [端口]
,注意:数据传输未加密。如何通过 Telnet 连接到 Linux 服务器
重要安全提示
在开始操作前,请务必了解:Telnet 是一种不安全的协议,它会以明文传输所有数据(包括用户名和密码),极易被黑客截获,强烈建议使用 SSH(Secure Shell) 替代 Telnet,本文仅出于技术研究目的提供 Telnet 操作指南,实际生产环境中应避免使用。
Telnet 连接前的准备工作
Linux 服务器端配置
-
步骤 1:安装 Telnet 服务端
在 Linux 服务器上执行以下命令(以 Ubuntu/Debian 为例):sudo apt update sudo apt install telnetd # 安装 Telnet 服务 sudo systemctl start inetd # 启动服务(部分系统为 `xinetd`)
注:CentOS/RHEL 使用
sudo yum install telnet-server
。 -
步骤 2:允许防火墙端口
Telnet 默认使用 23 端口,需开放防火墙:sudo ufw allow 23/tcp # Ubuntu # 或 sudo firewall-cmd --add-port=23/tcp --permanent # CentOS sudo firewall-cmd --reload
-
步骤 3:创建测试用户(可选)
为安全起见,避免使用 root 账户登录:sudo useradd testuser sudo passwd testuser # 设置密码
本地计算机准备
- Windows 系统:
自带 Telnet 客户端,若未启用,通过:控制面板 → 程序 → 启用或关闭 Windows 功能 → 勾选 "Telnet Client"
- Linux/macOS 系统:
终端直接使用telnet
命令(未安装则运行sudo apt install telnet
或brew install telnet
)。
通过 Telnet 连接 Linux 服务器的步骤
-
打开本地终端或命令提示符
- Windows:按
Win+R
输入cmd
; - Linux/macOS:打开终端。
- Windows:按
-
执行 Telnet 连接命令
telnet [服务器IP地址] 23
示例:
telnet 192.168.1.100 23
若服务器端口非默认(23),需替换为实际端口号。
-
输入登录凭据
- 连接成功后,按提示输入用户名和密码:
login: testuser password: ********
- 登录成功后将显示服务器终端,
Welcome to Ubuntu 22.04 LTS testuser@server:~$
- 连接成功后,按提示输入用户名和密码:
-
执行基础命令测试
输入ls
或pwd
验证操作权限:testuser@server:~$ ls Documents Downloads
连接失败常见原因与排查
- 错误:
Connection refused
- 服务器未安装 Telnet 服务端(检查
telnetd
是否安装)。 - 防火墙拦截(运行
sudo ufw status
检查)。
- 服务器未安装 Telnet 服务端(检查
- 错误:
Unable to connect
- 服务器 IP 或端口错误(使用
ping [IP]
测试网络连通性)。 - Telnet 服务未启动(运行
sudo systemctl status inetd
)。
- 服务器 IP 或端口错误(使用
- 登录被拒绝
- 用户名/密码错误(确保账户已创建且密码正确)。
- 服务器禁止 Telnet 登录(检查
/etc/securetty
是否包含pts/0
)。
安全警告与替代方案
🔒 为什么必须停用 Telnet?
- 明文传输风险:所有数据可被同一网络中的攻击者窃取。
- 无加密验证:服务器和客户端身份无法验证。
- 现代 Linux 系统已弃用:默认不安装且被视为重大安全漏洞。
✅ 安全替代方案:使用 SSH
- 连接命令:
ssh username@server_ip
- 优势:
- 通过加密隧道传输数据(AES-256 加密)。
- 支持密钥认证(彻底避免密码泄露)。
- 默认端口 22,可通过
sshd_config
自定义。
立即迁移到 SSH:
- 服务器安装 OpenSSH:
sudo apt install openssh-server
- 本地使用 PuTTY(Windows)或终端(Linux/macOS)。
Telnet 是早期远程登录工具,但已不适合当今网络安全环境,本文仅作为技术参考,强烈建议所有用户切换到 SSH,如需临时使用 Telnet,请在测试后立即关闭服务:
sudo systemctl stop inetd && sudo ufw deny 23/tcp
引用说明:
- Linux 系统管理指南(《Linux命令行与Shell脚本编程大全》)
- 网络安全协议分析(RFC 854: Telnet Protocol Specification)
- Ubuntu 官方文档:https://help.ubuntu.com
- NIST 安全建议(SP 800-123): https://csrc.nist.gov
原创文章,发布者:酷盾叔,转转请注明出处:https://www.kd.cn/ask/22452.html