這篇文章主要講解了“CentOS中如何搭建FTP服務(wù)器”,文中的講解內(nèi)容簡單清晰,易于學(xué)習(xí)與理解,下面請大家跟著小編的思路慢慢深入,一起來研究和學(xué)習(xí)“CentOS中如何搭建FTP服務(wù)器”吧!
成都創(chuàng)新互聯(lián)公司專注于企業(yè)全網(wǎng)整合營銷推廣、網(wǎng)站重做改版、澄邁網(wǎng)站定制設(shè)計(jì)、自適應(yīng)品牌網(wǎng)站建設(shè)、HTML5建站、商城系統(tǒng)網(wǎng)站開發(fā)、集團(tuán)公司官網(wǎng)建設(shè)、成都外貿(mào)網(wǎng)站制作、高端網(wǎng)站制作、響應(yīng)式網(wǎng)頁設(shè)計(jì)等建站業(yè)務(wù),價(jià)格優(yōu)惠性價(jià)比高,為澄邁等各大城市提供網(wǎng)站開發(fā)制作服務(wù)。1 基本環(huán)境
2 ftp工作模式
2.1 ftp通道
ftp工作會(huì)啟動(dòng)兩個(gè)通道:
控制通道,數(shù)據(jù)通道
在ftp協(xié)議中,控制連接均是由客戶端發(fā)起的,而數(shù)據(jù)連接有兩種模式:port模式(主動(dòng)模式)和pasv(被動(dòng)模式)
2.2 port模式
在客戶端需要接收數(shù)據(jù)時(shí),ftp_client(大于1024的隨機(jī)端口)----port命令-----ftp_server(21)發(fā)送port命令,這個(gè)port命令包含了客戶端是用什么端口來接收數(shù)據(jù)(大于1024的隨機(jī)端口),在傳送數(shù)據(jù)時(shí),ftp_server將通過自己的tcp 20端口和port中包含的端口建立新的連接來傳送數(shù)據(jù)。
2.3 pasv模式
傳送數(shù)據(jù)時(shí),ftp_client---pasv命令---ftp_server(21)發(fā)送pasv命令時(shí),ftp_server自動(dòng)打開一個(gè)1024--5000之間的隨機(jī)端口并且通知ftp_client在這個(gè)端口上傳送數(shù)據(jù),然后客戶端向指定的端口發(fā)出請求連接,建立一條數(shù)據(jù)鏈路進(jìn)行數(shù)據(jù)傳輸。
3 安裝vsftp
# rpm -qa vsftpd #檢查是否已安裝 # yum -y install vsftpd # chkconfig --level 35 vsftpd on #設(shè)置開機(jī)自啟動(dòng) # chkconfig --list|grep vsftpd #檢查開機(jī)是否是自動(dòng)啟動(dòng)
4 ftp文件說明
# rpm -ql vsftpd /etc/logrotate.d/vsftpd #vsftpd的日志文件 /etc/pam.d/vsftpd #pam認(rèn)證文件 /etc/rc.d/init.d/vsftpd #啟動(dòng)腳本 /etc/vsftpd #vsftpd的配置文件存放目錄 /etc/vsftpd/ftpusers #禁止使用vsftpd的用戶列表文件 /etc/vsftpd/user_list #禁止或允許使用vsftpd的用戶列表文件 /etc/vsftpd/vsftpd.conf #ftp的主配置文件 /etc/vsftpd/vsftpd_conf_migrate.sh #vsftpd操作的一些變量和設(shè)置 /var/ftp #匿名用戶目錄 /var/ftp/pub 匿名用戶的下載目錄
5 配置ftp
5.1 vsftpd.conf文件參數(shù)說明
黃色部分為添加的,紅色為修改的
anonymous_enable=no #是否開啟匿名登錄 local_enable=yes #是否允許本地用戶登錄 write_enable=yes #是否允許上傳 local_umask=022 #默認(rèn)的umask碼 dirmessage_enable=yes #是否顯示目錄說明文件 xferlog_enable=yes #是否記錄ftp傳輸過程 connect_from_port_20=yes #是否確定端口傳輸來自20 xferlog_std_format=yes #是否使用標(biāo)準(zhǔn)的ftp xferlog模式 chroot_list_enable=yes #是否將系統(tǒng)用戶限制在自己的home目錄下 chroot_list_file=/etc/vsftpd/chroot_list #列表不受限制的用戶 listen=yes #是否開啟監(jiān)聽 pam_service_name=vsftpd #服務(wù)名稱 userlist_enable=yes tcp_wrappers=yes
5.2 關(guān)閉selinux
# setenforce 0 # sed -i 's#selinux=enforcing#selinux=disabled#g' /etc/selinux/config
6 創(chuàng)建虛擬用戶
6.1 創(chuàng)建一個(gè)用戶
創(chuàng)建用戶后修改用戶的shell為nologin,讓用戶不能登錄系統(tǒng),只能使用ftp之內(nèi)的服務(wù)
# useradd -d /home/ftp/test -g ftp -s /sbin/nologin test # echo 123456|passwd --stdin test #設(shè)置密碼
6.2 將用戶test添加到chroot_list中
# touch /etc/vsftpd/chroot_list # echo test >>/etc/vsftpd/chroot_list
6.3 啟動(dòng)vsftp服務(wù)
# /etc/init.d/vsftpd start
6.4 登陸ftp方式
6.4.1 文件夾登陸
在文件夾路徑框輸入: 按回車登陸
6.4.2 瀏覽器登陸
瀏覽器里輸入 輸入用戶名test和密碼123456進(jìn)行測試
6.4.3 cmd命令行登陸
打開windows cmd窗口輸入:ftp 10.0.0.8 按回車輸入用戶名和密碼登陸
6.4.4 第三方客戶端登陸
比如xftp客戶端登陸
7 其他參數(shù)說明
max_client=100 #vsftpd較大支持鏈接數(shù)100個(gè)ip max_per=5 #每個(gè)ip能支持的5個(gè)鏈接 local_max_rate=81920 #限制傳輸速度 listen_address=ip #綁定某個(gè)ip到vsftpd,只允許該ip訪問 xferlog_file=/var/log/vsftpd.log #日志存放位置
8 常見報(bào)錯(cuò)
8.1 報(bào)錯(cuò)1
[root@oldboyedu45-wang ~]# service vsftpd start
為 vsftpd 啟動(dòng) vsftpd:500 oops: bad bool value in config file for: chroot_list_enable [失敗]
此報(bào)錯(cuò)時(shí)由于chroot_list_enable后面有空格導(dǎo)致的
感謝各位的閱讀,以上就是“CentOS中如何搭建FTP服務(wù)器”的內(nèi)容了,經(jīng)過本文的學(xué)習(xí)后,相信大家對CentOS中如何搭建FTP服務(wù)器這一問題有了更深刻的體會(huì),具體使用情況還需要大家實(shí)踐驗(yàn)證。這里是創(chuàng)新互聯(lián)網(wǎng)站建設(shè)公司,,小編將為大家推送更多相關(guān)知識點(diǎn)的文章,歡迎關(guān)注!