温馨提示×

如何通过Telnet进行Linux系统更新

小樊
35
2025-12-23 20:15:31
栏目: 智能运维

通过 Telnet 进行 Linux 系统更新的正确方式

重要说明与风险

  • Telnet 协议以明文传输,用户名、密码及命令都可能被窃听,存在中间人攻击风险;仅可在隔离网络或应急维护场景下临时使用,更新完成后应立即关闭并改用 SSH。若条件允许,优先直接使用 SSH 执行更新操作。

操作步骤

  • 步骤 1 启用 Telnet 临时远程登录

    • 在目标主机安装并启动 Telnet(以 CentOS 7 为例):
      • 安装组件:sudo yum install -y telnet-server xinetd
      • 启用服务:sudo systemctl enable --now xinetd;sudo systemctl enable --now telnet.socket
      • 防火墙放行:sudo firewall-cmd --zone=public --add-port=23/tcp --permanent && sudo firewall-cmd --reload
    • 在客户端连接:telnet 服务器IP 23,登录到系统命令行。
  • 步骤 2 执行系统更新

    • 确认网络连通后,按发行版执行更新命令:
      • Debian/Ubuntu:sudo apt update && sudo apt full-upgrade && sudo reboot
      • RHEL/CentOS 7:sudo yum update && sudo reboot
      • Fedora:sudo dnf update && sudo reboot
      • openSUSE:sudo zypper refresh && sudo zypper dup && sudo reboot
    • 更新过程中保持会话稳定,避免中断导致更新失败。
  • 步骤 3 更新后安全收尾

    • 关闭 Telnet 并恢复安全访问:
      • 停止服务:sudo systemctl disable --now telnet.socket;sudo systemctl disable --now xinetd
      • 关闭防火墙端口:sudo firewall-cmd --zone=public --remove-port=23/tcp --permanent && sudo firewall-cmd --reload
    • 仅使用 SSH 进行后续管理,必要时在 SSH 中禁用 root 密码登录、启用密钥登录。

常见注意事项

  • 许多发行版默认禁止 root 通过 Telnet 登录,可先用普通用户登录再执行 su 或 sudo;也可按需配置 PAM/securetty(不推荐,存在安全风险)。
  • 升级 OpenSSH 等涉及远程登录安全的组件时,建议先保留 Telnet 作为应急通道,完成升级并验证 sshd 正常后再关闭 Telnet。
  • 若使用 Debian/Ubuntu,更新的是 telnetd 软件包本身(而非通过 Telnet 去更新系统);更新后可用 sudo systemctl status telnet.socket 检查状态。

更安全的替代方案

  • 直接使用 SSH 执行更新:将命令中的 telnet 替换为 ssh,例如 ssh user@服务器IP,随后按发行版执行相应的更新命令。SSH 提供加密传输与强身份认证,适合生产环境。

0