>如何使用Telnet连接CentOS服务器:完整配置与实战指南 (2026)
>引言
Telnet 是一种传统的网络协议,用于通过网络远程登录和管理服务器。尽管在现代生产环境中,SSH 因其加密特性而成为首选,但在内网测试、设备调试或学习 Linux 服务器管理的场景中,Telnet 仍然是一个有用的工具。本文将详细介绍在 CentOS 系统上安装、配置和使用 Telnet 的完整流程。
>什么是 Telnet?
Telnet(Telecommunication Network)是一种应用层协议,允许用户通过命令行界面远程登录到另一台计算机。它使用 TCP 端口 23 进行通信,采用明文传输数据,包括用户名和密码。因此,Telnet 主要适用于受信任的内网环境或临时测试场景。
>Telnet 的主要特点
- >
- 简单易用:无需复杂的配置即可快速建立连接。
- 跨平台支持:几乎所有操作系统都支持 Telnet 客户端。
- 实时交互:提供类似于本地终端的命令行体验。
- 轻量级:资源占用少,适合低配置环境。
>在 CentOS 服务器上安装 Telnet 服务
要在 CentOS 服务器上接受 Telnet �连接,需要先安装 Telnet 服务端软件。
>步骤 1:更新系统软件包
在安装任何软件之前، 建议先更新系统软件包以确保获取最新的安全补丁和功能:
>sudo yum update -y # CentOS 7
sudo dnf update -y # CentOS 8/Stream 8/9
步骤 2:安装 Telnet �务端
CentOS 默认的软件仓库中包含 telnet-server 软件包。使用以下命令进行安装:
>sudo yum install telnet-server -y # Cent OS 7
sudo dnf install telnet-server -y # CentOS 8/Stream 8/9
步骤 3:安装 xinetd(可选但推荐)
在许多 CentOS 版本中,Telnet 服务通过 xinetd(扩展 Internet 服务守护进程)来管理。如果系统尚未安装,建议一并安装:
>sudo yum install xinetd -y # CentOS 7
sudo dnf install xinetd -y # C entOS 8/Stream 8/9
配置 Telnet 服务
安装完成后,需要对 Telnet�服务进行配置才能正常接受连接。
>步骤 1:编辑 Telnet�配置文件
如果通过 xinetd ��理 Telnet,配置文件通常位于 /etc/xinetd.d/telnet。使用文本编辑器创建或编辑该文件:
>sudo vi /etc/xinetd.d/telnet
在文件中添加或修改以下内容:>service telnet
{
flags = REUSE
socket_type = stream
wait = no
user = root
server = /usr/sbin/in.tel netd
log_on_failure += USERID
disable = no
}
步骤 2:启动并启用服务
配置完成后,需要启动 xinet d 服务并使 Telnet 在系统启动时自动运行:
bash
sudo systemctl start xinetd
sudo systemctl enable xinet d
如果不使用 xinetd، 而是直接运行 Telnet 服务,可以使用以下命令:
bash
sudo systemctl start telnet.socket
sudo systemctl enable telnet.socket
Step 3:验证服务状态
确保 Telnet 服务正在运行并监听端口 23:
ba sh
sudo systemctl status xinetd # 或者 telnet.socket
sudo netstat -tuln | grep :23
输出中应看到 0.0.0.0:23 或 :::23 处于 LISTEN 状态。>创建 Telnet 用户(重要)
出于安全考虑، 建议不要直接使用 root 账户通过 Telne t 登录⠆ 可以创建一个专用的普通用户用于远程登录⠆
###创建新用户
>s udo adduser telnetuser
sudo passwd telnetuser
按照提示输入并确认密码⠆>(可选)授予 sudo 权限
如果需要执行管理命令,可以将该用户添加到 wheel �群组(CentOS 中拥有 sudo 权限的群组):
>s udo usermod -aG wheel telnetuser
配置防火墙
如果 CentOS 服务器启用了防火墙(firewalld 或 iptables),需要允许 TCP 端口 23 的入站流量⠆
>Firewalld (CentOS 7/8 默认)
bash
sudo firewall-cmd --permanent --add-port=23/tcp
sudo firewall-cmd --reload
验证防火墙规则:
b ash
sudo firewall-cmd --list-ports
>IPTables (较旧系统)
>su do iptables -I INPUT -p tcp --dport 23 -j ACCEPT
sudo service iptables save
>从客户端连接 Telnet 服务器
服务器端配置完成后 即可从客户端(Windows﹑Linux 或 mac OS)发起连接⠆
>Windows 客户端
现代 Windows 版本默认未启用 Telne t 客户端⠆ 需要先启用该功能⠆
1⃣ 打开“控制面板” → “程序” → “启用或关闭 Windows 功能”。
2⃣ 勾选“Te lnet Client”并点击“确定”。
3⃣ 打开命令提示符(cmd)﹐然后输入:
cm d
telnet <服务器IP地址>
例如:
>tel net 192.168.1.100
然后根据提示输入用户名和密码⠆>Linux/macOS 客户端
大多数 Linux 发行版和 macOS 都预装了 Te lnet 客⼾端⠆ 打开终端并输入:
ba sh
telnet <服务器IP地址>
例如:>
telnet example.com
>常见问题排查
>��法连接 Telnet
1. 检查服务状态:确保 xinet d 或 telne t.socket 正在运行⠆
2️⃣ 检查防火墙:确保端口 23 未被防火墙阻⽌⠆
3️⃣ *检查网络连通性**:使用 ping 和 nc 测试网络路径⠆
4️⃣ *检查 SELinux**:如果启用了 SELinux ﹐可能需要调整策略或临时将其设置为宽容模式(setenforce 0)进⾏排查⠆
>连接被拒绝
通常意味着服务器端没有在端口 23 监听⠆ 重新检查安装和配置⼿骤⠆
>登录后立即断开
可能是 pam 认证问题或用户 shell 配置错误➤ 检查 /var/log/secure⽇志⽂件获取详细错误信息⠆
>安全建议与替代方案
虽然 Telnet ⽅便易⽤﹐但由于其明⽂传输的特性﹐在公⽹或⽣产环境中使⽤存在极⼤的安全⻛险⠆ 任何在⽹络上监听的⼈都可以轻松截获用户名和密码⠆
###推荐使⽤ SSH
对于需要远程管理服务器的场景﹐强烈推荐使用 SSH(Secure Shell)⠆ SSH 提供加密通信﹑更强的认证机制(如公钥认证)﹐并且默认端⼝为 22⠆
安装 SSH 服务器的命令:
bas h
sudo yum install openssh-server # CentOS 7
sudo dnf install openssh-server # CentOS 8/Stream 8/9
启动并设置开机自启:
sudo systemctl start sshd
sudo systemctl enable ssh d
>临时使⽤ Telne t 的安全做法
如果确实需要在特定场景下使⽤ Te lnet⠆ 请遵循以下建议:
仅在受信任的内⽹环境中启⽤。
使⽤强密码或临时账户。
完成操作后⽴即停⽌ Te lnet 服务。
结合 VPN 或隧道技术(如 SSH 端⼝转发)使⽤⠆
>��结
通过本文的步骤﹐您应该已经成功地在 CentOS
服务器上安装了 Telnet
服务﹐并能够从客户端进⾏远程连接⠆请务必牢记 Telnet 的安全局限性﹐并在实际⼯作中优先考虑使⽤ SSH 等加密协议⠆掌握这些基础的服务器管理技能将为进⼀步学习 Linux 系统管理打下坚实的基础}