配置ftp源,并修改匿名使用者預設使用者登入通路根目錄
下圖是本地檔案的鏡像
![](https://img.laitimes.com/img/_0nNw4CM6IyYiwiM6ICdiwiI9s2RkBnVHFmb1clWvB3MaVnRtp1XlBXe0xCM581dvRWYoNHLwEzX5xCMx8FesU2cfdGLwATMfRHLGZkRGZkRfJ3bs92YskmNhVTYykVNQJVMRhXVEF1X0hXZ0xiNx8VZ6l2cssmch1mclRXY39CXldWYtlWPzNXZj9mcw1ycz9WL49zZwpmLxEDOkR2N3QTO4UzM0UWY3EzY0U2MycTY1ETZyQTYxYzLcJDMvwlMwgTMwIzLcd2bsJ2LcNXZnFWbp9CXt92Yu8GdjFTNuITavw1LcpDc0RHaiojIsJye.jpg)
例如修改為/opt/ftp,直接在/opt目錄下建立:
注意改完配置後重新開機一下ftp服務
service vsftpd restart
服務重新開機
通過ftp://ip通路到/opt/ftp這個目錄(證明已經将預設目錄更改)。
進入到Packages目錄下安裝createrepo包
#rpm -ivh python-deltarpm-3.5-0.5.20090913git.el6.x86_64.rpm deltarpm-3.5-0.5.20090913git.el6.x86_64.rpm
#rpm -ivh createrepo-0.9.9-18.el6.noarch.rpm
在createrepo -v /opt/ftp/centos6.5/repodata目錄下生成一些檔案
createrepo -v /opt/ftp/centos6.5/
控制通道:管理使用者登入等,常用端口号:TCP的21;用戶端主動與伺服器建立連接配接
資料通道:使用者傳輸資料時所要用到的,如,浏覽目錄,上傳、下載下傳等;這個端口要分2種情況了,一種當FTP工作在主動模式(預設為主動模式)時開放20端口,伺服器主動用20端口去連接配接用戶端的動态端口;另一種情況是當FTP工作在被動模式時,用戶端會用自己的動态端口去連接配接到FTP伺服器的動态端口(伺服器開放動态端口被用戶端連接配接)。
1、我們知道VSFTP這個軟體,安全性很好,但是設定時候我們發現vsftp在開放防火牆時煩人得很,因為VSFTP的控制端口是21,資料端口在被動模式下是動态的,這一點很頭痛,如果防火牆隻開放21端口的話,client便無法浏覽、下載下傳等建立資料通道;此時可以這樣設定,方法如下 :
我們再設定防火牆規則:
iptables -A INPUT -p tcp --dport 21 -j ACCEPT
iptables -A INPUT -p tcp --dport 20 -j ACCEPT
iptables -A INPUT -p tcp --dport 9000:9010 -j ACCEPT #放行9000:9010端口
IPTABLES_MODULES="ip_nat_ftp ip_conntrack_ftp" #讓kenel加載FTP子產品
或modprobe ip_nat_ftp ip_conntrack_ftp
然後重新開機vsftpd服務即可!
好處:ftp用戶端無需關心防火牆的設定,隻要在伺服器端開放21及資料端口就OK!
2、當FTP伺服器工作在主動模式下時,Linux防火牆要開放21端口及ip_nat_ftp,ip_conntrack_ftp子產品;
如:vim /etc/sysconfig/iptables-config在最後加上下面2行
IPTABLES_MODULES="ip_nat_ftp"
IPTABLES_MODULES="ip_conntrack_ftp"
再開防火牆政策,如下:
iptables -A INPUT -p tcp -m state --state ESTABLISHED,RELATED -j ACCEPT
iptables -A INPUT -m state --state NEW -p tcp --dport 21 -j ACCEPT
另一點要注意的是,用戶端預設狀态是被動模式,一定要記得改為主動模式,否則你在用戶端登入後提示你權限不足,是因為資料端口的原因!
注意:FTP用戶端的防火牆要開通20資料端口!