1. 程式人生 > >CentOS下VFtpD和Telnet服務的配置

CentOS下VFtpD和Telnet服務的配置

centos vftpd telnet

在安裝好CentOS以後,需要設置FtpTelnet服務文件,才能啟動FtpTelnet服務,可以通過遠程控制進行開啟。開通FTPgssftpvsftpd二種,查了查,據說vsftpd更穩定和更安全。就用vsftpd吧。

一、vsftpd的安裝

1.1檢查是否有安裝:

rpm -q vsftpd

技術分享圖片

***package vsftpd is not installed 表示沒有安裝

1.2、安裝VSFTP

yum -y install vsftpd

1.3、設置開機啟動vsftpd ftp服務並啟動

chkconfig vsftpd on

service vsftpd start

啟動vsftpd服務

***

其它命令***

管理vsftpd相關命令:

停止vsftpd:

service vsftpd stop

重啟vsftpd:

service vsftpd restart

1.4、配置vsftpd服務器

vi /etc/vsftpd/vsftpd.conf

將下面三行

#chroot_list_enable=YES

# (default follows)

#chroot_list_file=/etc/vsftpd/chroot_list

改為

chroot_list_enable=YES

# (default follows)

chroot_list_file=/etc/vsftpd/chroot_list

在目錄/etc/vsftpd下創建文件

chroot_list

vi chroot_list

***裏面沒有內容

************說明*****************

對於/etc/vsftpd/vsftp.conf文件中的3選項的關系結構

如果設置為

chroot_local_userYES

chroot_list_enable=YES(這行可以沒有, 也可以有)

chroot_list_file=/etc/vsftpd/chroot_list

那麽, 凡是加在文件vsftpd.chroot_list中的用戶都是不受限止的用戶,即可以瀏覽其主目錄的上級目錄。

或者, 設置如下

chroot_local_userNO

chroot_list_enable=YES(這行必須要有

, 否則文件vsftpd/chroot_list不會起作用)

chroot_list_file=/etc/vsftpd/chroot_list

然後把所有不希望有這種瀏覽其主目錄之上的各目錄權限的用戶添加到文件vsftpd.chroot_list(此時, 在該文件中的用戶都是不可以瀏覽其主目錄之外的目錄的)中即可(一行一個用戶名).

1.5、增加ftp用戶並設置密碼

useradd -d /home/wwwroot/ -g ftp ftpuser

***命令解析:

ftpuser--------------用戶名稱

/home/wwwroot/---------------用戶登錄後所在的目錄

passwd設置用戶的密碼:

passwd ftpuser

1.6、重啟VSftpd服務

service vsftpd restart

1.7、設置Home目錄可以訪問

使用CentOS命令sestatus查看ftp布爾值的狀態列表:sestatus -b|grep ftp

技術分享圖片

可以看到所有的設置都為off,我們需要將ftp_home_dir設置為on就可以了

setsebool -P ftp_home_dir on

***其中-P表示重新開機後依舊保持為on

技術分享圖片

1.8、驗證VSFTPD服務

1.8.1、驗證是否安裝FTP

rpm –q ftp

技術分享圖片

1.8.2、安裝FTP軟件

rpm -Uvh http://mirror.centos.org/centos/6/os/x86_64/Packages/ftp-0.17-54.el6.x86_64.rpm

1.8.3、驗證執行

在本機執行

ftp 10.8.15.30

技術分享圖片

若出現上圖表示成功安裝。

1.9、錯誤集錦

1.9.1500 OOPS: could not read chroot() list file:/etc/vsftpd/chroot_list

技術分享圖片

出錯原因:

1、 沒有創建chroot_list文件

2、 Chroot_list文件中的內容配置不對

1.9.2500 OOPS: cannot change directory:/home/wwwroot解決方法

CentOS中安裝FTP服務vsftpd是,使用ftp命令登錄過程中用戶名和密碼輸入正確情況下一直出現500 OOPS: cannot change directory:/home/wang,真是奇哉怪也。後來查找了很多資料,才發現和CentOS系統有關系,以前用Ubuntu好像不會有這樣問題 的。

使用CentOS命令sestatus查看ftp布爾值的狀態列表:sestatus -b|grep ftp

技術分享圖片

可以看到所有的設置都為off,我們需要將ftp_home_dir設置為on就可以了setsebool -P ftp_home_dir on

其中-P表示重新開機後依舊保持為on,執行下命令,再次用ftp命令連接可以登錄了

技術分享圖片

1.9.3windows訪問不了FTP

防火墻對端口22需要設置允許執行:

使用下面命令開啟這些端口:

iptables -I INPUT -p tcp --dport 22 -jACCEPT

iptables -I INPUT -p udp --dport 22 -jACCEPT

service iptables save //保存

service iptables restart //重啟防火墻

二、Telnet的安裝

2.1、檢查是否安裝

rpm -qa | grep telnet

telnet 是掛在 xinetd 底下的,所以同時查看是否安裝了xinetd服務

rpm -q xinetd

技術分享圖片

2.2、安裝

兩者都沒有的安裝的話,yum安裝以下服務

yum install xinetd telnet telnet-server -y

技術分享圖片

2.3、設置開機啟動Telnet服務並啟動

chkconfig xinetd on

chkconfig telnet on

修改配置文件

vi /etc/xinetd.d/telnet

”disable= yes”改成” disable=no”

激活服務

service xinetd restart

技術分享圖片

2.4防火墻會阻止telnet,所以需要在iptables允許

當你啟動telnet服務後,你可以用netstat –tunlp命令來查看telnet服務所使用的端口,可以發現有23

技術分享圖片

使用下面命令開啟這些端口:

iptables -I INPUT -p tcp --dport 23 -jACCEPT

iptables -I INPUT -p udp --dport 23 -jACCEPT

service iptables save //保存

service iptables restart //重啟防火墻

或者來點狠的!!關閉防火墻!

service iptables stop

2.5、嘗試驗證

2.5.1LINUX驗證

telnet 10.8.15.30

技術分享圖片

表示需要打開該端口23,防火墻iptables,執行下一步

2.5.1.1、非root執行驗證(不能用root用戶登錄)

telnet 10.8.15.30

技術分享圖片

Exit

技術分享圖片

2.5.1.2ROOT執行驗證(用root用戶登錄沒有成功)

2.5.1.2.1查看root是否可以登錄

技術分享圖片

2.5.1.2.2配置root可以登錄(沒有成功)

root權限執行

vi /etc/ssh/sshd_config

#PermitRootLogin yes

修改為

PermitRootLogin yes

重啟ssh服務 /etc/rc.d/init.d/sshd restart

普通用戶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

2.5.1.2.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

//也不知道有多少可以加,不能登陸就看log,如果不夠再加好了。

2.5.1.2.4、檢查結果

重啟服務:service xinetd restart

2.5.2WINDOWS下驗證

2.5.3.1、windows打開telent

第一步:點擊開始,打開控制面板,找到程序和功能一項,點擊打開。

第二步:打開或關閉windows功能

技術分享圖片技術分享圖片

第三步:勾選 telnet服務器 telnet客戶端 確定。到此為止安裝telnet服務完畢。

技術分享圖片

2.5.3.2、執行檢驗

windowscmd的命令窗口下輸入:telnet 10.8.15.30

技術分享圖片

彈出窗口如下表示成功:

技術分享圖片


CentOS下VFtpD和Telnet服務的配置