rpm -qa |grep vsftpd 或者查詢當前ftp進程:ps -ef|grep vsftpd
已安裝顯示
未安裝顯示
2、下載vsftpd地址: http://rpmfind.net/linux/rpm2html/search.php?query=vsftpd
選擇版本後使用wget下載
3、安裝vsftpd服務器: rpm -ivh vsftpd-*.rpm
4、測試是否安裝成功
[root@379318 ~]# ftp localhost
Trying ::1...
ftp: connect to address ::1Connection refused
Trying 127.0.0.1...
ftp: connect: Connection refused
ftp> bye
[root@379318 ~]#
匿名訪問
5、vsftpd服務器的啓動、停止、重啓、狀態
service vsftpd start
service vsftpd stop
service vsftpd restart
service vsftpd status
6、vsftpd的三個主配置文件
/etc/vsftpd/vsftpd.conf //服務器的主配置文件
/etc/vsftpd/ftpusers //此文件內的用戶都不能訪問vsftpd服務器
/etc/vsftpd/user_list //可能會被拒絕訪問服務喊叫或允許訪問
7、查看vsftpd.conf的配置參數:vim /etc/vsftpd/vsftpd.conf
anonymous_enable=YES //啓用匿名用戶登錄(建議設置爲NO)
local_enable=YES //允許本地用戶訪問vsftpd服務器
write_enable=YES //允許上傳
download_enable=YES //允許下載
anon_upload_enable=YES //允許匿名用戶上傳
anon_mkdir_write_enable=YES //允許匿名用戶創建目錄和上傳
anon_other_write_enable=NO //不允許匿名用戶刪除和改名
local_max_rate=20000 //本地用戶的最大傳輸速率,單位是字節/秒
anon_max_rate=5000 //匿名用戶的最大傳輸速率,單位是字節/秒
local_umask=022 //去掉寫的權限
file_open_mode=0666 //上傳文件的權限
xferlog_enable=YES //維護日誌文件,詳細記錄上傳和下載操作
xferlog_std_format=YES //傳輸日誌文件將以標準的xferlog格式書寫,日誌文件默認爲/var/log/xferlog
hide_ids=YES //隱藏文件夾和目錄屬主
port_enable=YES //允許使用主動傳輸模式
pasv_min_port=(1024<port<65535) //指定PASV模式可以使用的最小端口
pasv_max_port=(1024<port<65535) //指定PASV模式可以使用的最大端口
connect_from_port_20=YES //定義FTP傳輸數據的端口,默認是20
ascii_download_enable=NO //設置不可使用ASCII模式下載
listen=YES //讓FTP工作在獨立模式下
pam_service_name=vsftpd //用戶配置文件認證
userlist_enable=YES
tcp_wrappers=YES //將使用wrappers作爲主機訪問控制方式
idle_session_timeout=600 //表明空閒時間爲600秒
data_connection_timeout=120 //表明數據連接超時時間爲120秒
chroot_local_user=YES //用戶登錄後不能訪問自己目錄以外的文件或目錄
listen_port=4444 //修改FTP服務器的端口號
8、設定vsftp在等級3和5爲開機運行服務
chkconfig --level 35 vsftpd on
9、ftp客戶連接常見故障現象
現象1:
> ftp: connect :連接被拒絕
原因: 服務沒啓動
解決: # chkconfig vsftpd on
現象2:
500 OOPS: cannot open user list file
原因: 不存在文件“/etc/vsftpd.user_list”或文件中不存在該帳戶
解決: # echo username >> /etc/vsftpd.user_list
現象3:
530 Permission denied.
Login failed.
原因: “/etc/vsftpd.user_list”文件中不存在當前登陸用戶
解決: # echo username >> /etc/vsftpd.user_list
現象4:
500 OOPS: cannot open chroot() user list file
Login failed.
原因: 不存在文件“/etc/vsftpd.chroot_list”
解決: # echo username >> /etc/vsftpd.chroot_list
現象5:
500 OOPS: missing value in config file
Connection closed by remote host.
原因: “=”等號前值有問題,或只有一個空格
解決: 修正相應的值即可,可能過 diff 來比較查找
現象6:
500 OOPS: bad bool value in config file
Connection closed by remote host.
原因: “=”等號後值有問題
解決: 將“=”等號後值確認修改
現象7:
500 OOPS: unrecognised variable in config file
Connection closed by remote host.
原因: 參數前有空格
解決: 將參數前空格刪除
現象8、
確認存在“local_enable=YES”,但本地用戶無法登陸
原因: 驗證參數被誤刪除
解決: 添加“pam_service_name=vsftpd”
現象9、
500 OOPS: chdir
500 OOPS: child died
Connection closed by remote host.
原因: 用戶主目錄沒有權限或沒有主目錄
解決: 正確設置用戶主目錄權限
10、vsftpd虛擬用戶賬號的設置步驟
(1)建立虛擬用戶口令庫文件(一行用戶名,一行密碼)
vim /var/ftp/pub/vu_list.txt
wang5
123
zhao6
456
(2)生成vsftpd的認證文件(使用db_load需要服務器已安裝db4-utils)
db_load -T -t hash -f /var/ftp/pub/vu_list.txt /etc/vsftpd/vu_list.db
chmod 600 /etc/vsftpd/vu_list.db
vim /etc/pam.d/vsftpd.vu
auth required /lib/security/pam_userdb.so db=/etc/vsftpd/vu_list
account required /lib/security/pam_userdb.so db=/etc/vsftpd/vu_list
(注:64位服務器配置時/lib/可能需要更改爲/lib64/)
(4)建立虛擬用戶所要訪問的目錄並設置相應權限
useradd ftpuser
guest_enable=YES
guest_username=ftpuser
pam_service_name=vsftpd.vu (6)重啓vsftpd服務器
service vsftpd restart
11、對虛擬用戶設置不同權限
(1)設置vsftpd.conf文件
user_config_dir=/etc/vsftpd_vu
mkdir /etc/vsftpd_vu (3)進入目錄進行編輯
cd /etc/vsftpd_vu
vim wang5
anon_world_readable_only=NO
anon_upload_enable=YES
anon_mkdir_write_enable=YES
anon_other_write_enable=YES
vim zhao6
anon_world_readable_only=YES
anon_upload_enable=NO
anon_mkdir_write_enable=NO
anon_other_write_enable=NO
12、使用虛擬用戶登錄FTP
13、配置基於IP的虛擬ftp服務器
(1)綁定其它IP
ifconfig eth0:0 192.168.1.71
(2)建立虛擬FTP服務器目錄
mkdir -p /var/ftp2/pub1
(3)創建虛擬服務器的匿名用戶所映射的本地用戶
ftp2
useradd -d /var/ftp2 -M ftp2
(4)修改原獨立運行服務器的配置文件
listen_address=192.168.1.70
(5)複製生成虛擬服務器的主配置文件
cp /etc/vsftpd.conf /etc/vsftpd/vsftpd2.conf
(6)設定虛擬服務器的IP並使虛擬服務器的匿名用戶映射到本地用戶ftp2
vi /etc/vsftpd/vsftpd2.conf
pam_service_name=vsftpd
listen_address=192.168.1.71
ftp_username=ftp2
(7)重啓服務生效:service vsftpd restart
14、DOS下常用ftp命令:
(1) 切換到指定目錄下(2) 連接目標ftp服務器:ftp 10.137.97.29
(3) 輸入帳號、密碼
(4) 切換傳輸方式,二進制傳輸使用bin命令
(5) 上傳文件:put test_setup.zip
(6) 下載文件:get **.zip
(7) 退出ftp:bye
(8) cd 切換目錄
(9) del 刪除文件
(10) dir 查看遠程主機當前目錄
(11) ascii 使用ascii方式傳輸文件
(12) mput、mget: 將多個文件上傳、下載
(13) mkdir 在遠程主機中建立目錄
(14) pwd 顯示遠程主機的當前工作目錄路徑