Telnet服务在Ubuntu中默认未安装,需手动安装客户端(用于连接)和服务端(用于提供服务)。执行以下命令安装:
sudo apt update
sudo apt install telnet telnetd xinetd # telnet为客户端,telnetd为服务端,xinetd为Telnet的服务管理工具
安装完成后,需确认telnetd(服务端)和xinetd(服务管理)是否安装成功:
dpkg -l | grep -E 'telnetd|xinetd'
若未安装,重复上述安装命令。
使用systemctl命令检查Telnet服务(telnet.socket或xinetd)的运行状态:
sudo systemctl status telnet.socket # 检查Telnet socket状态(Ubuntu 18.04+常用)
sudo systemctl status xinetd # 检查xinetd服务状态(部分系统通过xinetd管理Telnet)
sudo systemctl start telnet.socket # 启动Telnet socket
sudo systemctl enable telnet.socket # 设置开机自启
或通过xinetd启动:sudo systemctl start xinetd
sudo systemctl enable xinetd
Telnet默认使用23端口,需确认服务是否在监听该端口。使用以下命令检查:
sudo netstat -tulnp | grep 23 # 传统命令,查看端口监听情况
sudo ss -tulnp | grep 23 # 更现代的命令,功能与netstat类似
tcp 0 0 0.0.0.0:23 0.0.0.0:* LISTEN),说明端口正在监听;Ubuntu的防火墙(如ufw)可能阻止Telnet连接(23端口)。执行以下命令允许Telnet端口:
sudo ufw status # 查看防火墙状态(需开启ufw:sudo ufw enable)
sudo ufw allow 23/tcp # 允许Telnet端口
sudo ufw reload # 重新加载防火墙规则
若使用iptables,可执行:
sudo iptables -A INPUT -p tcp --dport 23 -j ACCEPT # 添加23端口规则
sudo service iptables save # 保存规则(部分系统需安装iptables-persistent)
Telnet服务的配置文件通常位于/etc/xinetd.d/telnet,需确保其内容正确。使用文本编辑器查看:
sudo nano /etc/xinetd.d/telnet
disable参数设置为no(表示启用服务),示例配置:service telnet {
disable = no
flags = REUSE
socket_type = stream
wait = no
user = root
server = /usr/sbin/in.telnetd
log_on_failure += USERID
}
xinetd服务使配置生效:sudo systemctl restart xinetd
使用telnet命令测试本地或远程连接:
telnet localhost 23 # 测试本地连接
telnet <服务器IP地址> 23 # 测试远程连接(替换为实际IP)
Connected to localhost或远程主机信息;若以上步骤均无法解决,可通过系统日志获取详细错误信息:
sudo journalctl -u telnet.socket # 查看Telnet socket日志(Ubuntu 18.04+)
sudo journalctl -u xinetd # 查看xinetd服务日志
sudo tail -f /var/log/syslog # 实时查看系统日志(部分系统日志在此)
日志中可能包含服务启动失败原因(如依赖缺失、配置文件语法错误、权限问题),根据日志提示针对性解决。
sudo apt install openssh-server);ping <服务器IP>测试)。