当前位置:  操作系统>redhat/centos

CentOS安装Telnet,以root用户登陆Telnet以及CentOS的各种终端解释

 
分享到:
    发布时间:2014-8-1  


    本文导语: CentOS安装Telnet,以root用户登陆Telnet以及CentOS的各种终端解释(www.169it.com搜集整理)一、CentOS 5开启telnet服务和一些基本配置1.安装需要的软件telnet是默认安装的,telnet-server需要后面安装。[root@CentOS5cdrom]#rpm-qa|grep&nbs...

 CentOS安装Telnet,以root用户登陆Telnet以及CentOS的各种终端解释(www.169it.com搜集整理)

一、CentOS 5开启telnet服务和一些基本配置

1.安装需要的软件

telnet是默认安装的,telnet-server需要后面安装。

[root@CentOS5 cdrom]# rpm -qa|grep telnet            //检查sys里有没有安装telnet及相关包 
[root@CentOS5 cdrom]# yum install telnet-server      //如果只有telent包就装server包,没有就都装
[root@CentOS5 cdrom]# rpm -qa | grep telnet
telnet-0.17-38.el5
telnet-server-0.17-38.el5

2.启动telnet.

[root@CentOS5 cdrom]# chkconfig --list | grep telnet       //检查下telnet的run level
        ekrb5-telnet:   off
        krb5-telnet:    off
        telnet:         off
ekrb5-telnet和krb5-telnet好像是增强型的telnent.先开老的。
[root@CentOS5 cdrom]# chkconfig telnet on     
[root@CentOS5 cdrom]# service xinetd restart   //telnet只是xinetd下的服务, 重启它

  

3.登陆尝试


普通用户OK,root输入正确密码错误提示.

CentOS release 5 (Final)
Kernel 2.6.18-53.el5 on an i686
login: root
Password:
Login incorrect

查看log有如下信息

  tail /var/log/secure
  Mar 17 02:16:55 localhost login: pam_securetty(remote:auth): access denied: tty 'pts/3' is not secure !
  Mar 17 02:16:59 localhost login: FAILED LOGIN 1 FROM 192.168.160.1 FOR root, Authentication failure


4.解决3中root登陆的阻止条件。


这里有两个方法

方法1:

确认/etc/pam.d/login中的pam_securetty.so行,并将其注释掉"#"

[root@rhel52 /]# vim /etc/pam.d/login   
#%PAM-1.0   
#auth [user_unknown...... pam_securetty.so    这一行注释掉

方法2:

根据"tty 'pts/3' is not secure"的提示。添加 pts/ 系列终端到/etc/securetty

  pts/1
  pts/2
  pts/3                  //增加这个应该是增加使用root登陆的个数,后面有解释
  pts/4
  pts/5

 5、telnet服务重启

[root@rhel52 /]# service xinetd restart   
Stopping xinetd:                                  [  OK  ]   
Starting xinetd:                                  [  OK  ]   
[root@rhel52 /]#

6、telnet服务测试

C:>telnet 192.168.xx.xx   
正在连接...   
Red Hat Enterprise Linux Server release 5 (Tikanga)   
Kernel 2.6.18-8.el5 on an i686   
login: root   
Password:   
Last login: Sat Aug  1 22:47:15 from 192.168.238.1   
[root@rhel52 ~]#

7、telnet端口更改       //这一步可不动


设定配置文件/etc/services   

[root@CentOS5 /]#vi /etc/services  

找到下面的两行: 

telnet          23/tcp  //如果要改则改到2000以后, 以免与其它冲突 
telnet          23/udp  //具体查看 vim /etc/services中端口的分配情况

8、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

9、配置文件krb5-telnet 


文件所在位置 /etc/xinetd.d/krb5-telnet

其实rhel5已经装了krb5-telnet,那么就可以启用这个服务来达到开启telnet的目的.不用再安装telnet-server这个软件包了.可以使用Kerberos 5来进行认证.


1)开启krb5-telnet服务.

[root@rhel52 /]# vim /etc/xinetd.d/krb5-telnet   

将"disabledisable = yes"  改为"disable = no"  

2)重启xinetd服务


10、配置文件ekrb5-telnet 

文件所在位置 /etc/xinetd.d/ekrb5-telnet

ekrb5- telnet可以用来提供加密的telnet服务.如果启用了ekrb5-telnet服务,但是又没有Kerberos服务器的话,那么在进行 telnet登录时,总是会报"Unencrypted connection refused. Goodbye.(未加密的连接,拒绝服务)"这个错误.


1)开启ekrb5-telnet服务.

[root@rhel52 /]# vim /etc/xinetd.d/ekrb5-telnet将"disable = yes"  改为"disable = no"

2)重启xinetd服务

注:使用Kerberos 5来认证和加密telnet会话,需要先搭建一个Kerberos服务器.


11、telnet服务登陆错误解析

①错误信息:


Cannot resolve network address for KDC in requested realm while getting initial credentials  

  当出现如上信息时,请检查/etc/xinetd.d/krb5-telnet,并将"disable = no"改成yes

[root@rhel52 /]# vim /etc/xinetd.d/krb5-telnet   
# default: off   
# description: The kerberized telnet server accepts normal telnet sessions,    
#              but can also use Kerberos 5 authentication.   
service telnet   
.... 
disable         = no    <- no改成yes   //这个及下面一个, 两个no yes多试试,有收获的 
}

②错误信息:


Unencrypted connection refused. Goodbye.  

  遗失对主机的连接.当出现如上信息时,请检查/etc/xinetd.d/ekrb5-telnet,并将"disable = no"改成yes

[root@rhel52 /]# vim /etc/xinetd.d/ekrb5-telnet   
# default: off   
# description: The kerberized telnet server accepts only telnet sessions,    
#              which use Kerberos 5 authentication and encryption.   
.... 
disable         = no    <- no改成yes   
}

③错误信息:


getnameinfo: localhost: Success   

Temporary failure in name resolution: Illegal seek  

  当出现如上信息时,请检查/etc/hosts,并将客户端地址和主机名写进去.


[root@rhel52 /]# vim /etc/hosts   
# Do not remove the following line, or various programs   
# that require network functionality will fail.   
127.0.0.1               localhost.localdomain   localhost       rhel52   
#::1                    rhel52                  localhost6   
192.168.238.220         rhel52   
192.168.0.100           win-gk18e84nu08

 

解释如下: "ekrb5-telnet" was the encrypted telnet server that I needed to turn off to run "krb-telnet" which allowed non-encrypted telnet connections.


二、CentOS 5 telnet配置telnet连接参考二


1.首先进入终端,查看是否安装了telnet服务。linux默认安装了telnet,所以我们一般只需要安装telnet-server。

rpm -qa |grep telnet (查看是否安装telnet-server)。 

没有安装telnet-server的话,我们可以将linux安装光盘放在光驱里。(不同的linux版本,linux的软件安装包可能不一样,只有一张光盘的话,肯定就在那一个上了。如果是linux redhat的话,就是在第三张光盘上。)

我使用的是linux版本是rhel-server-5.4-i386-dvd.iso,将光盘加载到光驱之后,光盘被加载到/dev/cdrom中。

2.在/mnt下创建一个目录cdrom(命令:mkdir/mnt/cdrom)。然后将/dev/cdrom中的内容挂载到/mnu/cdrom中(命令:mount /dev/cdrom  /mnt/cdrom)。

3.使用ll   /mnt/cdrom(小写的L)找到Server目录,并用命令cd/mnt/cdrom/Server进入该目录。 

4.用命令(ll |grep telnet)找到telnet-server这个软件包。 

5.安装telnet-server这个软件. 

6.使用命令:rpm -ql telnet-server 查看telnet-server的安装目录。 

7.修改telnet-server的配置文件。使用命令:vim/etc/xinetd.d/telnet 打开telnet-server配置文件。将disable   = yes 改为no 或者在disable前加上#符号

8.重新启动telnet-server服务。命令:service  xinetd restart  或者/etc/init.d/xinetd   restart

9.Linux默认用root账号不可以进行远程连接。所有你需要创建一个用户,设置密码。然后通过telnet连接Linux。

创建用户: useradd user1      设置密码:passwd  user1(然后系统提示你输入两次密码)。

10.最后使用命令:telnet + 目标主机的ip地址


三、CentOS各种终端解释

     终端是一种字符型设备,它有多种类型,通常使用tty来简称各种类型的终端设备。tty是Teletype的缩写。Teletype是最早出现的一种终端设备,很象电传打字机(或者说就是),是由Teletype公司生产的。在Linux系统的设备特殊文件目录/dev/下,终端特殊设备文件一般有以下几种:

1.CentOS串行端口终端(/dev/ttySn)

    串行端口终端(Serial Port Terminal)是使用计算机串行端口连接的终端设备。计算机把每个串行端口都看作是一个字符设备。有段时间这些串行端口设备通常被称为终端设备,因为那时它的最大用途就是用来连接终端。这些串行端口所对应的设备名称是/dev/tts/0(或/dev/ttyS0)、/dev/tts/1(或 /dev/ttyS1)等,设备号分别是(4,0)、(4,1)等,分别对应于DOS系统下的COM1、COM2等。若要向一个端口发送数据,可以在命令行上把标准输出重定向到这些特殊文件名上即可。例如,在命令行提示符下键入:echo test > /dev/ttyS1会把单词"test"发送到连接在ttyS1(COM2)端口的设备上。

2.CentOS伪终端(/dev/pty/)

    伪终端(Pseudo Terminal)是成对的逻辑终端设备,例如/dev/ptyp3和/dev/ttyp3(或着在设备文件系统中分别是/dev/pty/m3和 /dev/pty/s3)。它们与实际物理设备并不直接相关。如果一个程序把ttyp3看作是一个串行端口设备,则它对该端口的读/写操作会反映在该逻辑终端设备对的另一个上面(ttyp3)。而ttyp3则是另一个程序用于读写操作的逻辑设备。这样,两个程序就可以通过这种逻辑设备进行互相交流,而其中一个使用ttyp3的程序则认为自己正在与一个串行端口进行通信。这很象是逻辑设备对之间的管道操作。对于ttyp3(s3),任何设计成使用一个串行端口设备的程序都可以使用该逻辑设备。但对于使用ptyp3的程序,则需要专门设计来使用ptyp3 (m3)逻辑设备。例如,如果某人在网上使用telnet程序连接到你的计算机上,则telnet程序就可能会开始连接到设备ptyp2(m2)上(一个伪终端端口上)。此时一个getty程序就应该运行在对应的ttyp2(s2)端口上。当telnet从远端获取了一个字符时,该字符就会通过m2、s2 传递给getty程序,而getty程序就会通过s2、m2和telnet程序往网络上返回"login:"字符串信息。这样,登录程序与telnet程序就通过“伪终端" 进行通信。通过使用适当的软件,就可以把两个甚至多个伪终端设备连接到同一个物理串行端口上。 在使用设备文件系统(device filesystem)之前,为了得到大量的伪终端设备特殊文件,使用了比较复杂的文件名命名方式。因为只存在16个ttyp(ttyp0—ttypf)的设备文件,为了得到更多的逻辑设备对,就使用了象q、r、s等字符来代替p。例如,ttys8和ptys8就是一个伪终端设备对。不过这种命名方式目前仍然在RedHat等Linux系统中使用着。但Linux系统上的Unix98并不使用上述方法,而使用了"pty master"方式,例如/dev/ptm3。它的对应端则会被自动地创建成/dev/pts/3。这样就可以在需要时提供一个pty伪终端。目录 /dev/pts是一个类型为devpts的文件系统,并且可以在被加载文件系统列表中看到。虽然“文件"/dev/pts/3看上去是设备文件系统中的一项,但其实它完全是一种不同的文件系统。

3.CentOS控制终端(/dev/tty)

   如果当前进程有控制终端(Controlling Terminal)的话,那么/dev/tty就是当前进程的控制终端的设备特殊文件。可以使用命令"psax"来查看进程与哪个控制终端相连。对于你登录的shell,/dev/tty就是你使用的终端,设备号是(5,0)。使用命令"tty"可以查看它具体对应哪个实际终端设备。/dev/tty有些类似于到实际所使用终端设备的一个联接。

4.控制台终端(/dev/ttyn, /dev/console)

   在Linux 系统中,计算机显示器通常被称为控制台终端(Console)。它仿真了类型为Linux的一种终端(TERM=Linux),并且有一些设备特殊文件与之相关联:tty0、tty1、tty2等。当你在控制台上登录时,使用的是tty1。使用Alt+[F1—F6]组合键时,我们就可以切换到tty2、 tty3等上面去。tty1 –tty6等称为虚拟终端,而tty0则是当前所使用虚拟终端的一个别名,系统所产生的信息会发送到该终端上。因此不管当前正在使用哪个虚拟终端,系统信息都会发送到控制台终端上。你可以登录到不同的虚拟终端上去,因而可以让系统同时有几个不同的会话期存在。只有系统或超级用户root可以向 /dev/tty0进行写操作,

5 虚拟终端(/dev/pts/n)

   在Xwindows模式下的伪终端.

   另有人解释:每一个远程连接都会产生一个pst设备;

6.其它类型

   Linux系统中还针对很多不同的字符设备存在有其它种类的终端设备特殊文件。例如针对ISDN设备的/dev/ttyIn终端设备等。


相关文章推荐:


站内导航:


特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

©2012-2017,169IT.COM,E-mail:www_169it_com#163.com(请将#改为@)

浙ICP备11055608号