RedHat下开启ftp,telnet服务,开放root用户登录telnet

正在学习libcurl库的使用,想测试下libcurl里面关于ftp,telnet协议的用法,不过由于安全原因,RedHat 5.3里面现在已经是默认不开启ftp和telnet服务了。需要我们自己开启了。

(一)安装xinetd

ftp和telnet都是挂在xinetd服务下面,先要看看xinetd有没有安装,默认是没有安装的。

# rpm -qa | grep xinetd

从执行结果可以看出来,系统默认是没有安装xinetd的,首先要安装xinetd,安装文件可以可以在RedHat的安装CD里面找到,xinetd-2.3.14-10.el5.i386.rpm。

# rpm -Uvh xinetd-2.3.14-10.el5.i386.rpm
warning: xinetd-2.3.14-10.el5.i386.rpm: Header V3 DSA signature: NOKEY, key ID 37017186
Preparing...                ########################################### [100%]
   1:xinetd                 ########################################### [100%]
[root@dhcp_host ~]# rpm -qa | grep xinetd
xinetd-2.3.14-10.el5                           //可以看到已经安装成功
[root@dhcp_host ~]# service xinetd status
xinetd is stopped                               //使用service命令查看xinetd的状态,是关闭状态
[root@dhcp_host ~]# service xinetd start
Starting xinetd: [  OK  ]                      //使用service命令开启xinetd

(二)修改ftp和telnet的配置文件

/etc/xinetd.d这个目录下面,保存的就是挂在xinetd下面各种服务的配置文件

#cd /etc/xinetd.d/
# ls

chargen-dgram   daytime-dgram   discard-stream  eklogin       klogin       ktalk          time-dgram
chargen-stream  daytime-stream  echo-dgram      ekrb5-telnet  krb5-telnet  rsync          time-stream
cvs             discard-dgram   echo-stream     gssftp        kshell       tcpmux-server

编辑krb5-telnet和gssftp两个文件,将disable = yes,改为disable = no,然后重新启动xinetd,修改配置文件之后需要重新启动服务。

# service xinetd restart
Stopping xinetd: [  OK  ]
Starting xinetd: [  OK  ]

(三)“Unencrypted connection refused. Goodbye.”

在/etc/xinetd.d/目录下面有ekrb5-telnet和krb5-telnet这两个telnet,有什么区别呢?ekrb5-telnet是一个加密的telnet服务,假如打开,则默认telnet是加密的,于是我们登陆的就是就会出现这样的错误,因此需要关闭这个服务,修改/etc/xinetd.d/ekrb5-telnet里面的disable = yes,然后重新启动xinetd。

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

(四)ftp登陆时出现”530 must perform authentication before identifying user”的错误提示

修改/etc/xinetd.d/gssftp文件,将server_args后面的-a删掉,然后重新启动xinetd服务。

service ftp
{
    flags       = REUSE
    socket_type = stream
    wait        = no
    user        = root
    server      = /usr/kerberos/sbin/ftpd
    #server_args    = -l -a
    server_args = -l

    log_on_failure  += USERID
    disable     = no
}

(五)开启root用户的telnet权限

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

[root@rhel52 /]# vim /etc/pam.d/login
#%PAM-1.0
#auth [user_unknown=ignore success=ok ignore=ignore default=bad] pam_securetty.so
auth       include      system-auth
account    required     pam_nologin.so
account    include      system-auth
password   include      system-auth
# pam_selinux.so close should be the first session rule
session    required     pam_selinux.so close
session    include      system-auth
session    required     pam_loginuid.so
session    optional     pam_console.so
# pam_selinux.so open should only be followed by sessions to be executed in the
user context
session    required     pam_selinux.so open
session    optional     pam_keyinit.so force revoke

(2)通telnet控制台,在/etc/securetty文件中设定


[root@rhel52 /]# vim /etc/securetty
console
vc/1
vc/2
vc/3
tty1
tty2
tty3
tty4
tty5
...
pts/0
pts/1
pts/2
pts/3
pts/4

在文件后面追加"pts/0....pts/n",参考资料上有错,需要从pts/0开始添加,假如需要登陆的人很多,后面的n就要比较大,否则超过了也将无法登陆。

参考资料:http://blog.chinaunix.net/u3/111320/showart_2170267.html

你可能感兴趣的:(RedHat下开启ftp,telnet服务,开放root用户登录telnet)