温馨提示×

CentOS系统Telnet远程登录配置步骤

小樊
42
2025-11-27 16:01:03
栏目: 智能运维

CentOS 系统 Telnet 远程登录配置步骤

一 适用版本与准备

  • 适用于 CentOS 7/8(使用 firewalldxinetd 管理 Telnet),亦给出 CentOS 6(使用 iptablesxinetd)的差异点。
  • 默认仅安装 telnet 客户端,远程登录需安装 telnet-server 并由 xinetd 托管;Telnet 使用 TCP 23 端口,数据以明文传输,生产环境建议仅作临时应急,用完即关闭并恢复 SSH。如系统启用 SELinux,必要时需调整策略以允许 Telnet 服务。

二 CentOS 7/8 配置步骤

  • 1 安装软件包
    • 执行:sudo yum install -y telnet-server xinetd
  • 2 启用 Telnet 服务
    • 方式 A(推荐,xinetd 托管)
      • 编辑:sudo vi /etc/xinetd.d/telnet,将 disable = yes 改为 disable = no,确保包含:server = /usr/sbin/in.telnetd
      • 启动:sudo systemctl restart xinetd && sudo systemctl enable xinetd
    • 方式 B(socket 激活)
      • 启动:sudo systemctl start telnet.socket && sudo systemctl enable telnet.socket
      • 如采用 socket 激活,通常仍需确保 xinetd 处于可用状态(部分环境两者可并存)
  • 3 防火墙放行
    • 执行:sudo firewall-cmd --permanent --add-port=23/tcp && sudo firewall-cmd --reload
    • 验证:sudo firewall-cmd --query-port=23/tcp(应返回 yes
  • 4 允许 root 远程登录(可选,安全性较低)
    • 方法一(修改 securetty):echo "pts/0" | sudo tee -a /etc/securetty(可按需添加 pts/1…pts/10)
    • 方法二(PAM 放行):编辑 /etc/pam.d/login 与(或)/etc/pam.d/remote,注释行:#auth required pam_securetty.so
  • 5 客户端测试
    • 在其他主机执行:telnet <服务器IP>,输入用户名与密码验证登录。

三 CentOS 6 配置差异

  • 1 安装与启用
    • 安装:yum -y install telnet-server xinetd
    • 编辑:/etc/xinetd.d/telnet,设 disable = no
    • 启动:service xinetd restart;自启:chkconfig xinetd on
  • 2 防火墙放行(iptables)
    • /etc/sysconfig/iptables 添加:-A INPUT -m state --state NEW -m tcp -p tcp --dport 23 -j ACCEPT
    • 重启:service iptables restart
  • 3 root 登录
    • 可编辑 /etc/securetty 添加 pts/*,或在 /etc/pam.d/remote 注释 auth required pam_securetty.so 后重启 xinetd。

四 验证与故障排查

  • 端口与服务状态
    • 查看端口:sudo firewall-cmd --query-port=23/tcp(CentOS 7/8);或 nmap <IP> -p 23(应显示 open
    • 服务状态:systemctl status xinetd(或 systemctl status telnet.socket
  • 登录失败排查
    • 查看日志:tail -f /var/log/secure,若出现 “pts/X not secure”,将对应 pts/X 加入 /etc/securetty
    • 若使用 PAM 限制,核对 /etc/pam.d/login/etc/pam.d/remotepam_securetty.so 的状态
    • 客户端提示 “Connection refused” 多为未放行 23 端口或服务未启动,按上文放行与启动步骤修复。

五 安全建议与收尾

  • 风险提示:Telnet 明文传输,不建议在生产环境长期开启;完成维护后应立即关闭并恢复 SSH
  • 关闭命令(CentOS 7/8 示例)
    • sudo systemctl stop telnet.socket && sudo systemctl disable telnet.socket
    • sudo systemctl stop xinetd && sudo systemctl disable xinetd
    • sudo firewall-cmd --permanent --remove-port=23/tcp && sudo firewall-cmd --reload
  • 临时替代场景(如升级 OpenSSH 期间)建议限制来源网段、限定可用时段、仅在内网使用,并在完成后尽快恢复安全通道。

0