Linux下vsftpd配置安裝
Linux 安裝ftp 元件
1 安裝vsftpd 元件
安裝完後,有/etc/vsftpd/vsftpd.conf 檔案,是vsftp 的配置檔案。
[[email protected] ~]# yum -y install vsftpd
2 新增一個ftp 使用者
此使用者就是用來登入ftp 伺服器用的。
[[email protected] ~]# useradd ftpuser
這樣一個使用者建完,可以用這個登入,記得用普通登入不要用匿名了。登入後預設的路徑為
/home/ftpuser.
3 給ftp 使用者新增密碼。
[[email protected] ~]# passwd ftpuser
輸入兩次密碼後修改密碼。
4 防火牆開啟21 埠
因為ftp 預設的埠為21,而centos 預設是沒有開啟的,所以要修改iptables 檔案
[
在行上面有22 -j ACCEPT 下面另起一行輸入跟那行差不多的,只是把22 換成21,然後:
wq 儲存。
還要執行下,重啟iptables
[[email protected] ~]# service iptables restart
5 修改selinux
外網是可以訪問上去了,可是發現沒法返回目錄(使用ftp 的主動模式,被動模式還是無法
訪問),也上傳不了,因為selinux 作怪了。
修改selinux:
執行以下命令檢視狀態:
[[email protected] ~]# getsebool -a | grep ftp
allow_ftpd_anon_write --> off
allow_ftpd_full_access --> off
allow_ftpd_use_cifs --> off
allow_ftpd_use_nfs --> off
ftp_home_dir --> off
ftpd_connect_db --> off
ftpd_use_passive_mode --> off
httpd_enable_ftp_server --> off
tftp_anon_write --> off
[
執行上面命令,再返回的結果看到兩行都是off,代表,沒有開啟外網的訪問
[[email protected] ~]# setsebool -P allow_ftpd_full_access on
[[email protected] ~]# setsebool -P ftp_home_dir on
這樣應該沒問題了(如果,還是不行,看看是不是用了ftp 客戶端工具用了passive 模式訪問了,
如提示Entering Passive mode,就代表是passive 模式,預設是不行的,因為ftp passive 模
式被iptables 擋住了,下面會講怎麼開啟,如果懶得開的話,就看看你客戶端ftp 是否有port 模
式的選項,或者把passive 模式的選項去掉。如果客戶端還是不行,看看客戶端上的主機的電腦是
否開了防火牆,關吧)
FileZilla 的主動、被動模式修改:
選單:編輯→設定
6 關閉匿名訪問
修改/etc/vsftpd/vsftpd.conf 檔案:
重啟ftp 服務:
[
7 開啟被動模式
預設是開啟的,但是要指定一個埠範圍,開啟vsftpd.conf 檔案,在後面加上
pasv_min_port=30000
pasv_max_port=30999
表示埠範圍為30000~30999,這個可以隨意改。改完重啟一下vsftpd
由於指定這段埠範圍,iptables 也要相應的開啟這個範圍,所以像上面那樣開啟iptables
檔案。
也是在21 上下面另起一行,更那行差不多,只是把21 改為30000:30999,然後:wq 儲存,重
啟下iptables。這樣就搞定了。
8 設定開機啟動vsftpd ftp 服務
[[email protected] ~]# chkconfig vsftpd on