Centos下ProFTPD配置FTP服務(wù)器
Centos下ProFTPD 構(gòu)建FTP服務(wù)器:CentOS操作系統(tǒng)是商業(yè)版本Red Hat Enterprise Linux的免費(fèi)版,是架構(gòu)LAMP的理想操作系統(tǒng)。vsftpd提供的主要功能包括虛擬IP設(shè)置、虛擬用戶(hù)、Standalone、inetd操作模式,具有強(qiáng)大的單用戶(hù)設(shè)置能力及帶寬限流等。那么如何在Centos 下安裝配置vsftpd呢?
FTP服務(wù)被廣泛的應(yīng)用著,常見(jiàn)的,一些大學(xué)、組織、機(jī)構(gòu)等等,都有通過(guò)FTP服務(wù)器向外發(fā)布數(shù)據(jù)…但在這里,我們將要構(gòu)建的FTP服務(wù)器將主要針對(duì)用于用戶(hù)更新自己的網(wǎng)站。也就是說(shuō),讓用戶(hù)(root除外)只可以訪問(wèn)自己的Web目錄(本站前面介紹的HTTP服務(wù)器構(gòu)建中以public_html為例)。
另外,為了避免通過(guò)平文傳輸時(shí),數(shù)據(jù)被截獲,從而泄漏隱私與密碼,我們采用TLS方式,加密FTP傳輸過(guò)程中的數(shù)據(jù),以確保安全。
(構(gòu)建FTP服務(wù)器,您將有多種選擇,比如通過(guò)vsftpd等等FTP服務(wù)器軟件。但ProFTPD在一些方面,更能夠符合我們的實(shí)際條件,尤其對(duì)于ADSL方式接入網(wǎng)絡(luò)的服務(wù)器,ProFTPD能夠很好的應(yīng)對(duì)不斷變化的IP地址造成的問(wèn)題。)
一、安裝 ProFTPD
由于ProFTPD不存在于CentOS中yum的官方庫(kù)中,所以用yum安裝ProFTPD需要定義非官方的庫(kù)。請(qǐng)先確認(rèn)相應(yīng)非官方庫(kù)文件的存在。
/etc/yum.repos.d/dag.repo ← 確認(rèn)相應(yīng)庫(kù)文件的存在性
/etc/yum.repos.d/dag.repo ← 確認(rèn)其存在(否則不能通過(guò)yum安裝ProFTPD)
如果以上,dag.repo文件不存在,則不能通過(guò)yum安裝ProFTPD,需要定義非官方庫(kù)。定義非官方庫(kù)的方法請(qǐng)見(jiàn) “CentOS的下載、安裝及初始環(huán)境設(shè)置”一節(jié)中yum的相關(guān)設(shè)置。而且,在此前提下也要保證所定義的dag.repo文件的語(yǔ)法的正確性。
然后,通過(guò)yum來(lái)在線安裝ProFTPD。
[root@sample ~]# yum -y install proftpd ← 安裝ProFTPD
二、配置 ProFTPD
然后,通過(guò)修改相應(yīng)配置文件配置ProFTPD。
[root@sample ~]# vi /etc/proftpd.conf ← 修改ProFTPD的配置文件
ServerType standalone ← 找到這一行,在行首添加“#”
↓
#ServerType standalone ← 變?yōu)榇藸顟B(tài),不使用常駐模式
#ServerType inetd ← 找到這一行,去掉行首的“#”
↓
ServerType inetd ← 變?yōu)榇藸顟B(tài),通過(guò)超級(jí)服務(wù)器來(lái)啟動(dòng)ProFTPD
DefaultRoot ~ !adm ← 找到這一行,將“ !adm”改為“/public_html !wheel”
↓
DefaultRoot ~/public_html !wheel ← 變?yōu)榇藸顟B(tài),使除wheel組用戶(hù)的根目錄為public_html
找到TLS設(shè)置的語(yǔ)句群,如下:
# TLS
# Explained at
----------------------------------------------------------------
#TLSEngine on
#TLSRequired on
#TLSRSACertificateFile /usr/share/ssl/certs/proftpd.pem
#TLSRSACertificateKeyFile /usr/share/ssl/certs/proftpd.pem
#TLSCipherSuite ALL:!ADH:!DES
#TLSOptions NoCertRequest
#TLSVerifyClient off
##TLSRenegotiate ctrl 3600 data 512000 required off timeout 300
#TLSLog /var/log/proftpd/tls.log
----------------------------------------------------------------
將以上水平線間部分的語(yǔ)句,每行行首的“#”都去掉,變?yōu)橄旅嫠骄€間的狀態(tài):
----------------------------------------------------------------
TLSEngine on
TLSRequired on ← 只允許TLS方式的連接(如果將on改為off,普通方式也被允許)
TLSRSACertificateFile /usr/share/ssl/certs/proftpd.pem
TLSRSACertificateKeyFile /usr/share/ssl/certs/proftpd.pem
TLSCipherSuite ALL:!ADH:!DES
TLSOptions NoCertRequest
TLSVerifyClient off
#TLSRenegotiate ctrl 3600 data 512000 required off timeout 300
TLSLog /var/log/proftpd/tls.log
----------------------------------------------------------------
然后在配置文件的末尾填如下幾行:
ExtendedLog /var/log/proftpd/access.log WRITE,READ default ← 記錄連接日志到相應(yīng)日志文件
ExtendedLog /var/log/proftpd/auth.log AUTH auth ← 記錄認(rèn)證日志到相應(yīng)日志文件
MasqueradeAddress digeast.no-ip.info ← 定義服務(wù)器域名
PassivePorts 50000 50030 ← 為PASV模式連接時(shí)指定端口號(hào)(1024以后存在的任意端口號(hào))
然后,為服務(wù)器建立證書(shū)。
[root@sample ~]# cd /usr/share/ssl/certs ← 進(jìn)入相應(yīng)的目錄
[root@sample certs]# make proftpd.pem ← 建立服務(wù)器證書(shū)
Country Name (2 letter code) [GB]:CN ← 輸入國(guó)家簡(jiǎn)寫(xiě)
State or Province Name (full name) [Berkshire]:Hei Long Jiang ← 輸入省份
Locality Name (eg, city) [Newbury]:Harbin ← 輸入城市
Organization Name (eg, company) [My Company Ltd]:www.centospub.com ← 輸入組織名(任意)
Organizational Unit Name (eg, section) []: ← 直接回車(chē)跳過(guò)
Common Name (eg, your name or your server's hostname) []:www.centospub.com ← FTP服務(wù)器名反饋
Email Address []:yourname@yourserver.com ← 輸入E-mail地址
三、啟動(dòng) ProFTPD
啟動(dòng)之前,先對(duì)超級(jí)服務(wù)器的ProFTPD的啟動(dòng)腳本做一些修改。
[root@sample certs]# vi /etc/xinetd.d/xproftpd ← 編輯ProFTPD啟動(dòng)腳本
log_on_success += DURATION USERID ← 找到此行,將“DURATION USERID”改為“HOST PID”
↓
log_on_success += HOST PID ← 變?yōu)榇藸顟B(tài),防止登錄時(shí)要等待30秒
log_on_failure += USERID ← 找到此行,將“USERID”改為“HOST”
↓
log_on_failure += HOST ← 變?yōu)榇藸顟B(tài),防止登錄時(shí)要等待30秒
disable = yes ← 找到此行,將yes改為no
↓
disable = no ← 變?yōu)榇藸顟B(tài),讓ProFTPD通過(guò)超級(jí)服務(wù)器啟動(dòng)
然后,通過(guò)重新啟動(dòng)超級(jí)服務(wù)器間接啟動(dòng)ProFTPD。
[root@sample certs]# chkconfig xproftpd on ← 設(shè)置ProFTPD自啟動(dòng)
[root@sample certs]# chkconfig --list xproftpd ← 查看ProFTPD自啟動(dòng)
xproftpd on ← 確認(rèn)為on的狀態(tài)就OK
[root@sample certs]# /etc/rc.d/init.d/xinetd restart ← 重新啟動(dòng)超級(jí)服務(wù)器
Stopping xinetd: [ OK ]
Starting xinetd: [ OK ]
四、連接到FTP服務(wù)器
當(dāng)我們成功的啟動(dòng)了FTP服務(wù)之后,就可以通過(guò)客戶(hù)端軟件連接到服務(wù)器進(jìn)行文件的上傳和下載了。但由于,本站介紹的方法,把安全、傳輸?shù)谋C苄苑旁诹?**位,這也就使得好多不支持TSL的FTP軟件無(wú)法連接到服務(wù)器。支持TSL的FTP客戶(hù)端軟件,比較有代表性的有Staff-FTP, SmartFTP。本站將以SmartFTP為例(下一節(jié)),介紹如何從客戶(hù)端通過(guò)FTP連接到服務(wù)器的方法。
【編輯推薦】
- Centos5.4下安裝配置vsftpd
- 用MySQL和Proftpd配置FTP服務(wù)器
- ProFTPD 下的五大問(wèn)題
- Linux ProFTPd服務(wù)器配置(全)
- Ubuntu下安裝ProFTPd和MySQL
- ProFTPD的啟動(dòng)與測(cè)試
- 手把手教你 配置ProFTPD服務(wù)器
- ProFTPd的啟動(dòng)
- 在圖形界面下控制ProFTPD