温馨提示×

怎么开启Linux telnet

小樊
47
2026-08-31 12:05:45
栏目: 智能运维

在 Linux 上开启 Telnet 一般分为 客户端服务端 两种情况。下面按常见发行版说明(以 rootsudo 权限执行)。


一、安装并开启 Telnet 服务端(提供 telnet 服务)

⚠️ 警告:Telnet 明文传输,不安全,不建议在公网使用,仅用于内网或测试环境。建议改用 SSH

1️⃣ 安装 Telnet 服务端

CentOS / Rocky / Alma

yum install -y telnet-server
# 或(新版本)
dnf install -y telnet-server

Ubuntu / Debian

apt update
apt install -y telnetd

2️⃣ 启动 Telnet 服务

现代 Linux 一般使用 xinetdsystemd socket 方式。

✅ 方式一:使用 xinetd(常见)

# 安装 xinetd
yum install -y xinetd    # CentOS
apt install -y xinetd    # Ubuntu

编辑配置文件:

vi /etc/xinetd.d/telnet

加入或修改:

service telnet
{
    disable = no
    flags = REUSE
    socket_type = stream
    wait = no
    user = root
    server = /usr/sbin/in.telnetd
    log_on_failure += USERID
}

启动服务:

systemctl start xinetd
systemctl enable xinetd

✅ 方式二:使用 systemd socket(部分新系统)

systemctl start telnet.socket
systemctl enable telnet.socket

3️⃣ 放行防火墙端口(23)

firewalld

firewall-cmd --add-service=telnet --permanent
firewall-cmd --reload

iptables

iptables -I INPUT -p tcp --dport 23 -j ACCEPT

4️⃣ 验证是否开启

netstat -lntp | grep 23
# 或
ss -lntp | grep 23

看到 0.0.0.0:23 说明已监听。


二、开启 Telnet 客户端(仅用于连接,不提供服务)

安装客户端

CentOS

yum install -y telnet

Ubuntu

apt install -y telnet

使用方式

telnet 目标IP

三、常见问题

❓ 为什么连不上?

  • 防火墙未放行 23 端口
  • telnet 服务未启动
  • 使用了 systemd socket 但未启动
  • 云服务器安全组未放行 23 端口

❓ root 无法登录?

默认拒绝 root 直接登录,可:

vi /etc/securetty

添加:

pts/0
pts/1

⚠️ 不推荐


四、安全建议(强烈)

生产环境请使用 SSH

ssh user@ip

如果你能告诉我:

  • Linux 发行版
  • 是否云服务器
  • 用于测试还是生产

我可以给你更精确的配置方案。

0