首页主机资讯怎样确保CentOS Telnet安全

怎样确保CentOS Telnet安全

时间2025-12-05 21:56:04发布访客分类主机资讯浏览389
导读:总体安全原则 Telnet 以明文传输,用户名、密码及会话内容均可被窃听,原则上仅可在受控、隔离网络中临时使用,生产环境应优先采用 SSH 替代。若必须启用 Telnet,应叠加多重限制与加密手段,并尽快回归 SSH。为降低攻击面,建议仅...

总体安全原则

  • Telnet 以明文传输,用户名、密码及会话内容均可被窃听,原则上仅可在受控、隔离网络中临时使用,生产环境应优先采用 SSH 替代。若必须启用 Telnet,应叠加多重限制与加密手段,并尽快回归 SSH。为降低攻击面,建议仅在内网使用、限定来源 IP、最小权限账户、开启日志审计,并在用毕及时关闭。

加固措施清单

  • 使用 SSH 替代 Telnet:安装并启用 OpenSSH,将防火墙仅放通 22/TCP,日常运维通过 SSH 完成;Telnet 保留为应急通道。
  • 限制来源与访问时间:通过 xinetd 的 only_from、no_access、access_times 等参数,仅允许受信任网段/主机在特定时段访问。
  • 禁止 root 直连:保留默认策略(root 通常无法经 Telnet 登录),如需进一步收紧,可结合 PAM 或仅授予普通用户 sudo 权限。
  • 更改默认端口:将 /etc/services 中的 23/TCP 改为非常用端口,降低自动化扫描命中率(注意客户端需同步指定端口)。
  • 加密通道兜底:若业务只能走 Telnet,使用 stunnel 为 Telnet 建立 TLS 加密隧道(服务端监听高位端口,转发至本机 23/TCP)。
  • 主机与内核加固:启用 SELinux/AppArmor 限制 telnet/xinetd 权限;按需收紧内核网络参数(如关闭重定向、不必要的转发),减少被滥用风险。
  • 日志与监控:确保登录失败、会话启停等被记录并集中审计,出现异常及时告警与封禁。

最小化配置示例

  • 仅允许内网网段在工作时段访问,并禁止特定主机:
    1. 安装并启用服务(示例为 CentOS 7 常见方式)
      • yum install -y telnet-server xinetd
      • systemctl enable --now xinetd
      • systemctl enable --now telnet.socket
    2. 编辑 /etc/xinetd.d/telnet,仅保留最小必要项并加入访问控制
      • disable = no
      • socket_type = stream
      • protocol = tcp
      • wait = no
      • user = root
      • server = /usr/sbin/in.telnetd
      • only_from = 192.168.1.0/24 10.0.0.0/8
      • no_access = 192.168.1.100
      • access_times = 08:00-18:00
    3. 防火墙仅放通内网来源(示例)
      • firewall-cmd --permanent --add-rich-rule=‘rule family=“ipv4” source address=“192.168.1.0/24” port port=“23” protocol=“tcp” accept’
      • firewall-cmd --reload
    4. 验证与回退
      • ss -lntp | grep :23 或 netstat -ntlp | grep :23
      • 用受控主机 telnet 测试;完成后关闭或恢复默认策略。

使用 stunnel 为 Telnet 加密的示例

  • 安装与生成证书
    • yum install -y stunnel4
    • openssl req -x509 -nodes -days 365 -newkey rsa:2048 -keyout /etc/stunnel/stunnel.pem -out /etc/stunnel/stunnel.pem
  • 配置 /etc/stunnel/stunnel.conf
    • [telnet]
    • accept = 12345
    • connect = 127.0.0.1:23
    • cert = /etc/stunnel/stunnel.pem
    • key = /etc/stunnel/stunnel.pem
  • 启动与放通
    • systemctl enable --now stunnel4
    • firewall-cmd --permanent --add-port=12345/tcp & & firewall-cmd --reload
  • 客户端连接
    • telnet your_server_ip 12345(流量已由 TLS 加密)

禁用与替代的推荐做法

  • 日常禁用
    • systemctl disable --now telnet.socket xinetd
    • firewall-cmd --permanent --remove-service=telnet 或 --remove-port=23/tcp
    • firewall-cmd --reload
  • 全面替代
    • 安装并启用 OpenSSH:yum install -y openssh-server & & systemctl enable --now sshd
    • 防火墙仅放通 22/TCP:firewall-cmd --permanent --add-service=ssh & & firewall-cmd --reload
    • 使用密钥登录、禁用口令、限制 root 登录、开启 Fail2ban/auditd 等。

声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!


若转载请注明出处: 怎样确保CentOS Telnet安全
本文地址: https://pptw.com/jishu/765177.html
CentOS下Telnet端口如何修改 CentOS 7中Telnet有何变化

游客 回复需填写必要信息