⚠️ 重要安全提示:请先阅读
Telnet 协议是明文传输的,这意味着您的用户名、密码和所有操作都会以纯文本形式在网络中传输,非常不安全! 任何能够截获您网络流量的人都可以轻易地获取您的凭据。

强烈建议:
- 仅在完全受信任的内网环境中使用 Telnet。
- 对于需要远程管理服务器的生产环境,请务必使用 SSH (Secure Shell),SSH 是加密的,是 Telnet 的安全替代品,Ubuntu 默认已安装 SSH 服务器。
如果您仍然需要安装 Telnet,请继续下面的步骤。
使用 xinetd (传统方式,适用于需要同时管理多个服务的场景)
这是最经典和常见的方式。xinetd (Internet services daemon) 是一个超级服务器,它负责监听特定端口,并在有请求时启动相应的服务程序。
更新软件包列表
更新您的 APT 包管理器缓存,以确保您能获取到最新的软件包信息。

sudo apt update
安装 xinetd 和 telnetd
telnetd 是 Telnet 服务器的守护进程,我们将其与 xinetd 一起安装。
sudo apt install xinetd telnetd
系统会自动处理依赖关系,并完成安装。
配置 xinetd 以启用 Telnet
安装完成后,我们需要创建一个配置文件来告诉 xinetd 如何管理 Telnet 服务。
创建一个新的配置文件:

sudo nano /etc/xinetd.d/telnet
粘贴到文件中,这个配置文件告诉 xinetd 在 23 端口(Telnet 的标准端口)上监听,并启用 telnetd 服务。
# 默认情况下,此服务是禁用的。
# 要启用它,请将 'disable = yes' 改为 'disable = no'
service telnet
{
flags = REUSE
socket_type = stream
wait = no
user = root
server = /usr/sbin/in.telnetd
log_on_success += USERID
log_on_failure += USERID
disable = no # <-- 关键:将 'yes' 改为 'no' 来启用服务
}
关键点:
disable = no:这一行是启用 Telnet 服务的核心。server = /usr/sbin/in.telnetd:指定了 Telnet 服务器的可执行文件路径。
保存并关闭文件,在 nano 中,按 Ctrl+X,然后按 Y,最后按 Enter。
重启 xinetd 服务以应用更改
配置文件修改后,需要重启 xinetd 服务才能使新配置生效。
sudo systemctl restart xinetd
检查 xinetd 和 Telnet 服务状态
确保 xinetd 服务正在运行,Telnet 端口处于监听状态。
# 检查 xinetd 服务状态 sudo systemctl status xinetd # 检查端口 23 是否正在被监听 sudo netstat -tuln | grep :23
如果看到类似 tcp 0 0 0.0.0.0:23 0.0.0.0:* LISTEN 的输出,说明 Telnet 服务器已经成功启动并正在监听所有网络接口。
直接安装 telnetd (独立运行方式)
如果您不想使用 xinetd,也可以安装一个可以独立运行的 telnetd 服务器。
安装 telnetd
sudo apt install telnetd-ssl
telnetd-ssl是一个支持 SSL 加密的 Telnetd 服务器,比纯明文的telnetd更安全一些(但仍不如 SSH)。- 如果你坚持用最原始的,可以尝试
sudo apt install telnetd,但在很多现代 Ubuntu 版本中,这个包可能已经不存在或不可用了,telnetd-ssl是更好的选择。
启动并启用服务
安装后,服务通常不会自动启动,您需要手动启动并设置为开机自启。
# 启动 telnetd 服务 sudo systemctl start telnetd # 设置为开机自启 sudo systemctl enable telnetd
检查服务状态
# 检查 telnetd 服务状态 sudo systemctl status telnetd # 检查端口 23 是否正在被监听 sudo netstat -tuln | grep :23
如果服务状态是 active (running) 并且端口 23 在监听,则安装成功。
如何使用 Telnet 客户端连接
您可以从另一台计算机(或在同一台 Ubuntu 服务器上)使用 Telnet 客户端进行连接。
-
安装 Telnet 客户端 (如果您的机器上没有)
sudo apt install telnet
-
执行连接命令 假设您的 Ubuntu 服务器的 IP 地址是
168.1.100,执行以下命令:telnet 192.168.1.100
或者使用主机名:
telnet your-server-hostname
-
登录 连接成功后,您会看到类似
login:的提示,输入您的用户名和密码即可登录。Trying 192.168.1.100... Connected to 192.168.1.100. Escape character is '^]'. Ubuntu 22.04 LTS your-server-hostname tty1 login: your_username Password: (输入密码,不会显示任何字符) Welcome to Ubuntu 22.04 LTS ... ... your_username@your-server-hostname:~$
如何卸载 Telnet 服务器
如果您不再需要 Telnet 服务器,可以按照以下步骤卸载。
停止并禁用服务
# 如果使用 xinetd sudo systemctl stop xinetd sudo systemctl disable xinetd # 如果使用独立 telnetd sudo systemctl stop telnetd sudo systemctl disable telnetd
卸载软件包
sudo apt remove --purge telnetd xinetd
remove会卸载软件包。--purge会同时删除配置文件,确保彻底清理。
删除配置文件 (可选)
如果您手动创建了其他配置文件,可以手动删除它们。
# 删除 xinetd 的 telnet 配置文件 sudo rm /etc/xinetd.d/telnet
更新系统
sudo apt autoremove # 自动删除不再需要的依赖包 sudo apt update
希望这个详细的指南对您有帮助!再次强调,请务必在安全的环境中使用 Telnet。
