測試平臺: Redhat linux7.2 vsftpd-1.2.0
set up:
===========================================================================
[root@test root]# wget \
> ftp://vsftpd.beasts.org/users/cevans/vsftpd-1.2.0.tar.gz
[root@test root]# cd /usr/local/src
[root@test root]# tar -zxvf /root/vsftpd-1.2.0.tar.gz
[root@test root]# cd vsftpd-1.2.0/
[root@test vsftpd-1.2.0]# ./configure
[root@test vsftpd-1.2.0]# make
[root@test vsftpd-1.2.0]# make install
/usr/local/sbin
/usr/local/man/man5 /usr/local/man/man8
/etc/xinetd.d
[root@test vsftpd-1.2.0]# cp vsftpd.conf /etc
[root@test vsftpd-1.2.0]# cp RedHat/vsftpd.pam /etc/pam.d/vsftpd
[root@test vsftpd-1.2.0]# useradd -M ftp -d /var/ftp
[root@test vsftpd-1.2.0]# mkdir -p /var/ftp
[root@test vsftpd-1.2.0]# chown root:root /var/ftp
[root@test vsftpd-1.2.0]# chmod 755 /var/ftp
[root@test vsftpd-1.2.0]# mkdir -p /usr/share/empty
[root@test root]# vi /etc/xinetd.d/vsftpd
[root@test root]# /etc/rc.d/init.d/xinetd restart
[root@test root]# ftp localhost
Name (localhost:root): anonymous ===========================================================================
vsftpd.conf設置項:
-------------------------------------------------------------------------------------------------------------------
anonymous_enable=NO 是否允許匿名用戶(hù)訪(fǎng)問(wèn)
local_enable=YES 是否允許實(shí)體用戶(hù)訪(fǎng)問(wèn)
write_enable=YES 是否允許寫(xiě)入操作
local_umask=022
dirmessage_enable=YES 是否允許顯示登陸信息
xferlog_enable=YES 是否允許記錄上傳下載信息
connect_from_port_20=YES
xferlog_file=/var/log/vsftpd.log 記錄登陸者相關(guān)信息
xferlog_std_format=YES 標準格式
chroot_list_enable=YES 是否限定實(shí)體用戶(hù)只在自己的home下操作
chroot_list_file=/etc/vsftpd.chroot_list (限定實(shí)體用戶(hù)只在自己的home下操作的)受限制名單
pam_service_name=vsftpd pam模組,要與/etc/pam.d/vsftpd的名字相同
local_max_rate=0 用戶(hù)傳送速度
idle_session_timeout=600 600s后沒(méi)有動(dòng)作就強制離線(xiàn)
data_connection_timeout=120
-------------------------------------------------------------------------------------------------------------------
# vi /etc/pam.d/vsftpd 中的 file=/etc/vsftpd.user_list (在vsftpd.user_list中添加用戶(hù)名可以禁止用戶(hù)登入vsftpd)
問(wèn)題1:實(shí)體用戶(hù)不能login
D:\Documents and Settings\oice>ftp 10.10.6.10
Connected to 10.10.6.10.
220 (vsFTPd 1.2.0)
User (10.10.6.10:(none)): feng1
331 Please specify the password.
Password:
530 Login incorrect.
Login failed.
ftp>
原因: 在/etc/vsftpd.conf 里頭缺少一個(gè)關(guān)鍵語(yǔ)句 pam_service_name=vsftpd (模組/用戶(hù) 設定) 與/etc/pam.d/vsftpd相關(guān)
問(wèn)題2:
D:\Documents and Settings\oice>ftp 10.10.6.10
Connected to 10.10.6.10.
220 (vsFTPd 1.2.0)
500 OOPS: could not bind listening IPv4 socket
解決方法:
1.使用XINET模式
去掉/etc/rc.local文件中的vsftpd的啟動(dòng)腳本/usr/local/sbin/vsftp &
運行service vsftpd restart命令啟動(dòng)vsftpd
2.使用STANDALONE獨立模式
在服務(wù)器的負擔比較重的情況下最好用這個(gè)模式
或者直接修改/etc/xinetd.d/vsftpd文件,把disable=no改成disable=yes就行了!
你運行一下
# netstat -anp | grep 21
看看什么進(jìn)程占用21端口,之后再用kiil殺掉,再
# /etc/rc.d/init.d/xinetd restart 記得把/etc/xinetd.d/vsftpd 改回disable=no