在CentOS/RHEL/Scientific Linux 6 &amp; 7 上安装Telnet
声明： 在安装和使用Telnet之前，需要记住以下几点。  在公网(WAN)中使用Telnet是非常不好的想法。它会以明文的格式传输登入数据。每个人都可以看到明文。 如果你还是需要Telnet，强烈建议你只在局域网内部使用。 你可以使用SSH作为替代方法。但是确保不要用root用户登录。   Telnet是什么？ Telnet 是用于通过TCP/IP网络远程登录计算机的协议。一旦与远程计算机建立了连接，它就会成为一个虚拟终端且允许你与远程计算机通信。 在本篇教程中，我们会展示如何安装Telnet并且如何通过Telnet访问远程系统。 安装 打开终端并输入下面的命令来
telnet
222.134.70.138
@有道云笔记收藏
微博评论
2015-02-25T09:03:01.000
220.181.108.149
@我的印象笔记
微博评论
2015-02-25T10:03:03.000
声明： 在安装和使用Telnet之前，需要记住以下几点。  在公网(WAN)中使用Telnet是非常不好的想法。它会以明文的格式传输登入数据。每个人都可以看到明文。 如果你还是需要Telnet，强烈建议你只在局域网内部使用。 你可以使用SSH作为替代方法。但是确保不要用root用户登录。   Telnet是什么？ Telnet 是用于通过TCP/IP网络远程登录计算机的协议。一旦与远程计算机建立了连接，它就会成为一个虚拟终端且允许你与远程计算机通信。 在本篇教程中，我们会展示如何安装Telnet并且如何通过Telnet访问远程系统。 安装 打开终端并输入下面的命令来
#### 声明：


在安装和使用Telnet之前，需要记住以下几点。


* 在公网(WAN)中使用Telnet是非常不好的想法。它会以明文的格式传输登入数据。每个人都可以看到明文。
* 如果你还是需要Telnet，强烈建议你只在局域网内部使用。
* 你可以使用**SSH**作为替代方法。但是确保不要用root用户登录。


![](/data/attachment/album/201502/24/223754ptwuudt0tpt2uu2w.png)


### Telnet是什么？


[Telnet](http://en.wikipedia.org/wiki/Telnet) 是用于通过TCP/IP网络远程登录计算机的协议。一旦与远程计算机建立了连接，它就会成为一个虚拟终端且允许你与远程计算机通信。


在本篇教程中，我们会展示如何安装Telnet并且如何通过Telnet访问远程系统。


### 安装


打开终端并输入下面的命令来安装telnet：



```
yum install telnet telnet-server -y

```

现在telnet已经安装在你的服务器上了。接下来编辑文件**/etc/xinetd.d/telnet**：



```
vi /etc/xinetd.d/telnet

```

设置 **disable = no**:



```
# default: on
# description: The telnet server serves telnet sessions; it uses \
#       unencrypted username/password pairs for authentication.
service telnet
{
        flags           = REUSE
        socket_type     = stream
        wait            = no
        user            = root
        server          = /usr/sbin/in.telnetd
        log_on_failure  += USERID
        disable         = no
}

```

保存并退出文件。记住我们不必在CentOS 7做这步。


接下来使用下面的命令重启telnet服务：


在CentOS 6.x 系统中：



```
service xinetd start

```

让这个服务在每次重启时都会启动：


在CentOS 6上：



```
chkconfig telnet on
chkconfig xinetd on

```

在CentOS 7上：



```
systemctl start telnet.socket
systemctl enable telnet.socket

```

让telnet的默认端口**23**可以通过防火墙和路由器。要让telnet端口可以通过防火墙，在CentOS 6.x系统中编辑下面的文件：



```
vi /etc/sysconfig/iptables

```

加入如下行“-A INPUT -p tcp -m state --state NEW --dport 23 -j ACCEPT”：



```
# Firewall configuration written by system-config-firewall
# Manual customization of this file is not recommended.
*filter
:INPUT ACCEPT [0:0]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [0:0]
-A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
-A INPUT -p icmp -j ACCEPT
-A INPUT -i lo -j ACCEPT
-A INPUT -p tcp -m state --state NEW --dport 23 -j ACCEPT
-A INPUT -m state --state NEW -m tcp -p tcp --dport 22 -j ACCEPT
-A INPUT -j REJECT --reject-with icmp-host-prohibited
-A FORWARD -j REJECT --reject-with icmp-host-prohibited
COMMIT

```

保存并退出文件。重启iptables服务：



```
service iptables restart

```

在CentOS 7中，运行下面的命令让telnet服务可以通过防火墙。



```
firewall-cmd --permanent --add-port=23/tcp
firewall-cmd --reload

```

就是这样。现在telnet服务就可以使用了。


#### 创建用户


创建一个测试用户，比如用户名是“**sk**”，密码是“**centos**“:



```
useradd sk
passwd sk

```

#### 客户端配置


安装telnet包：



```
yum install telnet

```

在基于DEB的系统中：



```
sudo apt-get install telnet

```

现在，打开终端，尝试访问你的服务器（远程主机）。


如果你的客户端是Linux系统，打开终端并输入下面的命令来连接到telnet服务器上。



```
telnet 192.168.1.150

```

输入服务器上已经创建的用户名和密码：


示例输出:



```
Trying 192.168.1.150...
Connected to 192.168.1.150.
Escape character is '^]'.

Kernel 3.10.0-123.13.2.el7.x86_64 on an x86_64
server1 login: sk
Password: 
[sk@server1 ~]$

```

如你所见，已经成功从本地访问远程主机了。


如果你的系统是windows，进入**开始 -> 运行 -> 命令提示符**。


在命令提示符中，输入命令：



```
telnet 192.168.1.150

```

**192.168.1.150**是远程主机IP地址。


现在你就可以连接到你的服务器上了。


就是这样。


干杯！




---


via: <http://www.unixmen.com/installing-telnet-centosrhelscientific-linux-6-7/>


作者：[SK](http://www.unixmen.com/author/sk/) 译者：[geekpi](https://github.com/geekpi) 校对：[wxy](https://github.com/wxy)


本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译，[Linux中国](http://linux.cn/) 荣誉推出

