如何配置Ubuntu系统防火墙以安全开启Telnet服务,确保远程登录的安全性?

更新于
2026-08-10 18:30:59
5阅读来源:SEO资讯
  • 内容介绍
  • 文章标签
  • 相关推荐

一、前置说明与风险

使用者痛点:很多管理员仍然需要使用 Telnet 进行设备调试。但又担心明文传输会被窃听、密码被抓取,甚至因为防火墙配置错误导致服务不可用。下面先把这些潜在风险说清楚,再给出安全的方法。

1. Telnet 的固有安全缺陷

  • 所有数据以明文方式在网络中传输。
  • 容易成为中间人攻击或嗅探工具的目标。
  • 默认使用 23 端口。若未加限制,任何人都能尝试登录。

2. 防火墙配置失误的后果

  • 误放通全部 IP,等同于把大门敞开。
  • 规则写错导致 Telnet 服务根本无法访问,影响业务调试。
  • 防火墙未启用时程序暴露在公网,安全隐患倍增。

二、准备工作:确保环境干净且可控

1. 更新程序软件源

# sudo apt update && sudo apt upgrade -y

2. 安装 Telnet 服务器及 xinetd

# sudo apt install -y xinetd telnet

3. 检查是否已安装 inetd 系列工具

# dpkg -l | grep inetd
# 若已安装,可直接跳过;若未安装,则执行:
# sudo apt install -y inetutils-inetd

三、UFW 防火墙精细化配置

1. 开启 UFW 并设置默认策略

# sudo ufw default deny incoming
# sudo ufw default allow outgoing

2. 只允许可信 IP 访问 Telnet

替换为实际需要远程登录的机器 IP 地址。

如何配置Ubuntu系统防火墙以安全开启Telnet服务,确保远程登录的安全性?
# sudo ufw allow from  to any port 23 proto tcp comment 'Allow trusted host for Telnet'

3. 启用防火墙并验证规则生效情况

# sudo ufw enable
# sudo ufw status numbered
# 应看到类似以下输出:
# 23/tcp ALLOW IN FROM 

四、编辑 xinetd 的 Telnet 配置文件。实现细粒度控制

1. 打开配置文件并启用服务

# sudo nano /etc/xinetd.d/telnet
# 将其中的
# disable = yes
# 改为
# disable = no

2. 增加访问控制——可选但推荐看看

在同一文件中加入如下块:

如何配置Ubuntu系统防火墙以安全开启Telnet服务,确保远程登录的安全性?
# only_from = 
# 或者使用多个地址:
# only_from = 192.168.1.100,10.0.0.5

3. 重启 xinetd 生效修改

# sudo systemctl restart xinetd
# 或者旧版使用:
# sudo service xinetd restart

五、测试 Telnet 连通性——确认安全与可用性兼顾

Pain point:很多管理员在部署完毕后忘记做连通性验证,导致实际业务上线时才发现“无法登录”。下面提供两种常见的验证方式:

a) 本机自检

# telnet localhost 23
# 若出现 “Connected to localhost.” 则说明服务已启动。

b) 远程主机验证

$ telnet  23
# 输入使用者名/密码后应能进入交互界面。
# 若连接超时请检查 UFW 是否放通了正确的 IP 与端口。

六、进一步强化安全——从“只能用”到“更好用”

  • Pain point:即使防火墙已限制 IP。Telnet 本身仍是明文协议,一旦内部机器被攻破,攻击者仍能轻易抓取凭证。建议同时部署 SSH,并将内部业务迁移至 SSH。
  • Pain point:CVE 漏洞更新不及时会让旧版 Telnet 暴露于已知攻击。务必保持程序定期更新:
# sudo apt update && sudo apt upgrade -y
# 可配合 unattended-upgrades 自动安全更新:
# sudo apt install -y unattended-upgrades
# 编辑 /etc/apt/apt.conf.d/50unattended-upgrades 开启对 security 仓库的自动更新。
  • Pain point:SLA 要求日志审计,但默认情况下 xinetd 不记录详细日志。开启日志功能便于事后追溯:

# 在 /etc/xinetd.d/telnet 中添加或取消注释:
logonsuccess += USERID

  • Pain point:CIDR 大段放通容易误伤其他子网。使用 UFW 的 “limit” 功能对同一 IP 的频繁尝试进行速率限制:

# 限制每分钟最多尝试 6 次登录:

七、步骤汇总表格

序号操作内容 关键命令
1️⃣ 更新程序并安装常用软件
# sudo apt update && sudo apt install -y xinetd telnet
# dpkg -l | grep inetd # 确认安装状态 

2️⃣ 配置 UFW 默认策略并仅放通可信 IP

# sudo ufw default deny incoming
# sudo ufw default allow outgoing
# sudo ufw allow from  to any port 23 proto tcp comment 'Allow trusted host for Telnet'

3️⃣ 启用防火墙并检查状态

#sudo ufw enable
pre>

4️⃣ 编辑 xinetd 配置。使 Telnet 可用且受限

#sudo nano /etc/xinetd.d/telnet
disable = no
only_from = 

5️⃣ 重启 xinetd 并验证服务运行

#sudo systemctl restart xinetd
telnet localhost 23

6️⃣ 远程连通性测试

$ telnet  23
7️⃣ 日志审计与速率限制
# 在 /etc/xinetd.d/telnet 加 logonsuccess += USERID
# 限制暴力:sudo ufw limit from  to any port 23 proto tcp
8️⃣ 定期安全更新与自动升级设置
#sudo apt update && sudo apt upgrade -y
#sudo apt install unattended-upgrades

八、结论与常用方法建议

  • 最小化暴露仅在必须时才开启 TelNet,并严格限定来源 IP。
  • 层层加固UFW + xinetd + 日志 + 限速,多重防护比单一措施更可靠。
  • 尽快迁移如果业务允许。请优先考虑 SSH 或基于 TLS 的管理协议,以彻底消除明文传输风险。
  • 持续监控通过 syslog 或专属 SIEM 程序实时监控 TelNet 登录行为,一旦异常立刻封禁。

标签:Ubuntu

一、前置说明与风险

使用者痛点:很多管理员仍然需要使用 Telnet 进行设备调试。但又担心明文传输会被窃听、密码被抓取,甚至因为防火墙配置错误导致服务不可用。下面先把这些潜在风险说清楚,再给出安全的方法。

1. Telnet 的固有安全缺陷

  • 所有数据以明文方式在网络中传输。
  • 容易成为中间人攻击或嗅探工具的目标。
  • 默认使用 23 端口。若未加限制,任何人都能尝试登录。

2. 防火墙配置失误的后果

  • 误放通全部 IP,等同于把大门敞开。
  • 规则写错导致 Telnet 服务根本无法访问,影响业务调试。
  • 防火墙未启用时程序暴露在公网,安全隐患倍增。

二、准备工作:确保环境干净且可控

1. 更新程序软件源

# sudo apt update && sudo apt upgrade -y

2. 安装 Telnet 服务器及 xinetd

# sudo apt install -y xinetd telnet

3. 检查是否已安装 inetd 系列工具

# dpkg -l | grep inetd
# 若已安装,可直接跳过;若未安装,则执行:
# sudo apt install -y inetutils-inetd

三、UFW 防火墙精细化配置

1. 开启 UFW 并设置默认策略

# sudo ufw default deny incoming
# sudo ufw default allow outgoing

2. 只允许可信 IP 访问 Telnet

替换为实际需要远程登录的机器 IP 地址。

如何配置Ubuntu系统防火墙以安全开启Telnet服务,确保远程登录的安全性?
# sudo ufw allow from  to any port 23 proto tcp comment 'Allow trusted host for Telnet'

3. 启用防火墙并验证规则生效情况

# sudo ufw enable
# sudo ufw status numbered
# 应看到类似以下输出:
# 23/tcp ALLOW IN FROM 

四、编辑 xinetd 的 Telnet 配置文件。实现细粒度控制

1. 打开配置文件并启用服务

# sudo nano /etc/xinetd.d/telnet
# 将其中的
# disable = yes
# 改为
# disable = no

2. 增加访问控制——可选但推荐看看

在同一文件中加入如下块:

如何配置Ubuntu系统防火墙以安全开启Telnet服务,确保远程登录的安全性?
# only_from = 
# 或者使用多个地址:
# only_from = 192.168.1.100,10.0.0.5

3. 重启 xinetd 生效修改

# sudo systemctl restart xinetd
# 或者旧版使用:
# sudo service xinetd restart

五、测试 Telnet 连通性——确认安全与可用性兼顾

Pain point:很多管理员在部署完毕后忘记做连通性验证,导致实际业务上线时才发现“无法登录”。下面提供两种常见的验证方式:

a) 本机自检

# telnet localhost 23
# 若出现 “Connected to localhost.” 则说明服务已启动。

b) 远程主机验证

$ telnet  23
# 输入使用者名/密码后应能进入交互界面。
# 若连接超时请检查 UFW 是否放通了正确的 IP 与端口。

六、进一步强化安全——从“只能用”到“更好用”

  • Pain point:即使防火墙已限制 IP。Telnet 本身仍是明文协议,一旦内部机器被攻破,攻击者仍能轻易抓取凭证。建议同时部署 SSH,并将内部业务迁移至 SSH。
  • Pain point:CVE 漏洞更新不及时会让旧版 Telnet 暴露于已知攻击。务必保持程序定期更新:
# sudo apt update && sudo apt upgrade -y
# 可配合 unattended-upgrades 自动安全更新:
# sudo apt install -y unattended-upgrades
# 编辑 /etc/apt/apt.conf.d/50unattended-upgrades 开启对 security 仓库的自动更新。
  • Pain point:SLA 要求日志审计,但默认情况下 xinetd 不记录详细日志。开启日志功能便于事后追溯:

# 在 /etc/xinetd.d/telnet 中添加或取消注释:
logonsuccess += USERID

  • Pain point:CIDR 大段放通容易误伤其他子网。使用 UFW 的 “limit” 功能对同一 IP 的频繁尝试进行速率限制:

# 限制每分钟最多尝试 6 次登录:

七、步骤汇总表格

序号操作内容 关键命令
1️⃣ 更新程序并安装常用软件
# sudo apt update && sudo apt install -y xinetd telnet
# dpkg -l | grep inetd # 确认安装状态 

2️⃣ 配置 UFW 默认策略并仅放通可信 IP

# sudo ufw default deny incoming
# sudo ufw default allow outgoing
# sudo ufw allow from  to any port 23 proto tcp comment 'Allow trusted host for Telnet'

3️⃣ 启用防火墙并检查状态

#sudo ufw enable
pre>

4️⃣ 编辑 xinetd 配置。使 Telnet 可用且受限

#sudo nano /etc/xinetd.d/telnet
disable = no
only_from = 

5️⃣ 重启 xinetd 并验证服务运行

#sudo systemctl restart xinetd
telnet localhost 23

6️⃣ 远程连通性测试

$ telnet  23
7️⃣ 日志审计与速率限制
# 在 /etc/xinetd.d/telnet 加 logonsuccess += USERID
# 限制暴力:sudo ufw limit from  to any port 23 proto tcp
8️⃣ 定期安全更新与自动升级设置
#sudo apt update && sudo apt upgrade -y
#sudo apt install unattended-upgrades

八、结论与常用方法建议

  • 最小化暴露仅在必须时才开启 TelNet,并严格限定来源 IP。
  • 层层加固UFW + xinetd + 日志 + 限速,多重防护比单一措施更可靠。
  • 尽快迁移如果业务允许。请优先考虑 SSH 或基于 TLS 的管理协议,以彻底消除明文传输风险。
  • 持续监控通过 syslog 或专属 SIEM 程序实时监控 TelNet 登录行为,一旦异常立刻封禁。

标签:Ubuntu