telnet由于是明文传输,所以安全起见最好不要用telnet服务。但是由于telnet是一个比较方便的远程工具,在windows上是自带的不需要安装客户端即可使用。如果telnet设置的比较复杂,对端口、登陆时间、登陆的IP地址等如果有限制的话也可以使用。下面将介绍telnet的安装及配置的过程。

一、     安装

1、查询是否已经安装 telnet包                    #rpm –qa telent*
      若出现安装包的信息,则说明已经安装,否则没有安装。安装以下三个包
telnet.i68           telnet-server.i686          xinetd                            
 查看服务运行的状态                                   #service  xinetd  status
启动 telent服务                                              #service  xinetd  start
查看该服务开机自启动情况                      #chkconfig --list xinetd
设置该服务在 3和5级别运行的时候开机自启动          #chkconfig ---level  35 xinetd on
设置好之后显示如下 :
 xinetd 0:关闭 1:关闭 2:关闭 3:启用  4:关闭 5:启用  6:关闭
2、远程登陆服务器                                  #telnet 192.168.197.132
显示报错信息: telnet: connect to address 192.168.197.132: Connection refused。根据提示信息说的是拒绝连接,解决办法如下。
( 1)查看防火墙运行状态                    #chkconfig --list iptables
显示如下信息: iptables  0:关闭 1:关闭 2:启用 3:启用 4:启用 5:启用 6:关闭 说明防火墙是开启的。
关闭防火墙并且让它开机不启动。        #chkconfig iptables off
   也可以不用关闭防火墙,直接修改防火墙的配置文件,在配置文件中添加tcp23端口通过防火墙就可以了。具体操作如下:
    vim  /etc/sysconfig/iptables        # 打开配置文件 ,添加如下信息
   -A INPUT -m state --state NEW -m tcp -p tcp --dport 23 -j ACCEPT
   保存并退出
  service  iptables  restart             #重启防火墙
  service  xinetd     restart            #重启telnet的守护进程,即telent服务
 
( 2)修改/etc/xinetd.d/telnet 的文件
将该文件中的  disable = yes 改为 disable = no  #拒绝访问选项
重启 telnet服务                                                   #service xinetd restart 
telnet 默认拒绝用 root权限的用户登陆,可以用普通用户登陆,这是就可以telnet登陆服务器了。
2、  想用 root权限的用户登陆服务器解决方法有两种:
( 1)修改/etc/securetty文件
查看日志文件中的报错信息        #tail /var/log/secure
显示的一条信息如下: Dec 4 20:29:47 localhost login: pam_securetty(remote:auth): access denied: tty 'pts/1' is not secure !
提示 pts/1不安全。打开/etc/securetty文件在第一行添加pts/1 保存并退出,重启xinetd服务即可用root登陆,如果还不能登陆的话,可以继续添加 pts/2、pts/3等………   // 增加这个应该是增加使用 root 登陆的个数 , 如果不能登陆就看 log ,添加相应的 pts 就可以了。
( 2)第二种方法:确认/etc/pam.d/login中的pam_securetty.so行,并将其注释掉"#"
# vi /etc/pam.d/login  
#%PAM-1.0  
#auth [user_unknown...... pam_securetty.so        将这一行注释掉   
重启服务即可登陆。
注意:第二种方法在RedHalt时代是可以的。在centos时代好像就不行了,我在centos6上测试没有成功!在centos6.2 x64真机上测试成功!
 
    centos时代第二种方法是修改/etc/pam.d/remote文件,注释掉文件中第二行:
auth         required      pam_securetty.so              #将这一行注释掉即可
保存并退出,重启服务,即可root telnet登陆测试成功。
二、配置 telnet 服务
1、改变默认的端口,设定配置文件     /etc/services  
[root@CentOS6 /]#vi /etc/services 
找到下面的两行 : 
telnet          23/tcp  //如果要改则改到 2000以后, 以免与其它冲突
telnet          23/udp  //具体查看 vi /etc/services中端口的分配情况
2 telnet 服务限制
 设定配置文件 /etc/xinetd.d/telnet
[root@rhel52 /]# vim /etc/xinetd.d/telnet  
access_time     = 20:00-24:00  
# default: on  
# description: The telnet server serves telnet sessions; it uses \  
#       unencrypted username/password pairs for authentication.  
.... 
log_on_failure  += USERID  
only_from       = 192.168.0.0/16   //这个没事不要加
}  
#bind           = 192.168.0.100 //这里全注掉了 ,自选
#only_from      = 192.168.0.0/24  
#no_access      = 192.168.0.{80,90}  
#access_times   = 8:00-9:00 20:00-23:00