久久精品水蜜桃av综合天堂,久久精品丝袜高跟鞋,精品国产肉丝袜久久,国产一区二区三区色噜噜,黑人video粗暴亚裔

CentOS/用ProFTPD構(gòu)建FTP服務(wù)器

來自站長(zhǎng)百科
跳轉(zhuǎn)至: 導(dǎo)航、? 搜索

CentOS | CentOS安裝 | CentOS使用手冊(cè)

FTP服務(wù)被廣泛的應(yīng)用著,常見的,一些大學(xué)、組織、機(jī)構(gòu)等等,都有通過FTP服務(wù)器向外發(fā)布數(shù)據(jù),但在這里,我們將要構(gòu)建的FTP服務(wù)器將主要針對(duì)于用戶更新自己的網(wǎng)站。也就是說,讓用戶(root除外)只可以訪問自己的Web目錄。

另外,為了避免通過平文傳輸時(shí),數(shù)據(jù)被截獲,從而泄漏隱私與密碼,我們采用TLS方式,加密FTP傳輸過程中的數(shù)據(jù),以確保安全。

構(gòu)建FTP服務(wù)器,有多種選擇,比如通過vsftpd等等FTP服務(wù)器軟件。但ProFTPD在一些方面,更能夠符合我們的實(shí)際條件,尤其對(duì)于ADSL方式接入網(wǎng)絡(luò)的服務(wù)器,ProFTPD能夠很好的應(yīng)對(duì)不斷變化的IP地址造成的問題。

安裝ProFTPD[ ]

由于ProFTPD不存在于CentOS中yum的官方庫(kù)中,所以用yum安裝ProFTPD需要定義非官方的庫(kù)。請(qǐng)先確認(rèn)相應(yīng)非官方庫(kù)文件的存在。

[root@sample ~]# ls -l /etc/yum.repos.d/dag.repo  ← 確認(rèn)相應(yīng)庫(kù)文件的存在性

-rw-r--r-- 1 root root 143 Oct 1 21:33 /etc/yum.repos.d/dag.repo ← 確認(rèn)其存在
(否則不能通過yum安裝ProFTPD)

如果以上dag.repo文件不存在,則不能通過yum安裝ProFTPD,需要定義非官方庫(kù)。

然后,通過yum來在線安裝ProFTPD。

[root@sample ~]# yum -y install proftpd  ← 安裝ProFTPD

Setting up Install Process
Setting up repositories
Reading repository metadata in from local files
Reducing Dag RPM Repository for Red Hat Enterprise Linux to included packages only
Finished
Parsing package install arguments
Resolving Dependencies
--> Populating transaction set with selected packages. Please wait.
---> Downloading header for proftpd to pack into transaction set.
proftpd-1.2.10-10.2.el4.r 100% |=========================| 15 kB 00:00
---> Package proftpd.i386 0:1.2.10-10.2.el4.rf set to be updated
--> Running transaction check

Dependencies Resolved

=============================================================================
Package Arch Version Repository Size
=============================================================================
Installing:
proftpd i386 1.2.10-10.2.el4.rf dag 699 k

Transaction Summary
=============================================================================
Install 1 Package(s)
Update 0 Package(s)
Remove 0 Package(s)
Total download size: 699 k
Downloading Packages:
(1/1): proftpd-1.2.10-10. 100% |=========================| 699 kB 00:03
Running Transaction Test
Finished Transaction Test
Transaction Test Succeeded
Running Transaction
Installing: proftpd ######################### [1/1]

Installed: proftpd.i386 0:1.2.10-10.2.el4.rf
Complete!

配置ProFTPD[ ]

然后,通過修改相應(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),通過超級(jí)服務(wù)器來啟動(dòng)ProFTPD

DefaultRoot        ~ !adm   ← 找到這一行,將“ !adm”改為“/public_html !wheel”
 ↓
DefaultRoot        ~/public_html !wheel   ← 變?yōu)榇藸顟B(tài),使除wheel組用戶的根目錄為public_html

找到TLS設(shè)置的語句群,如下:
# TLS
# Explained at http://www.castaglia.org/proftpd/modules/mod_tls.html
----------------------------------------------------------------
#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ō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ù)器建立證書。

[root@sample ~]# cd /usr/share/ssl/certs  ← 進(jìn)入相應(yīng)的目錄

[root@sample certs]# make proftpd.pem  ← 建立服務(wù)器證書

umask 77 ; \
PEM1=`/bin/mktemp /tmp/openssl.XXXXXX` ; \
PEM2=`/bin/mktemp /tmp/openssl.XXXXXX` ; \
/usr/bin/openssl req -newkey rsa:1024 -keyout $PEM1 -nodes -x509 -days 365 -out $PEM2 ; \
cat $PEM1 > proftpd.pem ; \
echo "" >> proftpd.pem ; \
cat $PEM2 >> proftpd.pem ; \
rm -f $PEM1 $PEM2
Generating a 1024 bit RSA private key
.........++++++
............++++++
writing new private key to '/tmp/openssl.sG3126'
-----
You are about to be asked to enter information that will be incorporated
into your certificate request.
What you are about to enter is what is called a Distinguished Name or a DN.
There are quite a few fields but you can leave some blank
For some fields there will be a default value,
If you enter '.', the field will be left blank.
-----
Country Name (2 letter code) [GB]:CN  ← 輸入國(guó)家簡(jiǎn)寫
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) []:  ← 直接回車跳過
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通過超級(jí)服務(wù)器啟動(dòng)

然后,通過重新啟動(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ù)之后,就可以通過客戶端軟件連接到服務(wù)器進(jìn)行文件的上傳和下載了。但由于,本條目介紹的方法,把安全、傳輸?shù)谋C苄苑旁诹说谝晃?,這也就使得好多不支持TSL的FTP軟件無法連接到服務(wù)器。支持TSL的FTP客戶端軟件,比較有代表性的有Staff-FTP, SmartFTP。

參考來源[ ]

http://www.centospub.com/make/proftpd.html

CentOS使用手冊(cè)導(dǎo)航

CentOS安裝

CentOS安裝 | 系統(tǒng)安裝后的初始環(huán)境設(shè)置 | 服務(wù)器方式安裝CentOS 5

CentOS使用手冊(cè)

使用RPM管理包 | 使用YUM工具更新系統(tǒng) | 使用rsync服務(wù) | 使用rsync同步 | 使用tar備份 | 使用tar恢復(fù)文件 | Samba 服務(wù)器的構(gòu)建 | 用SWAT讓Samba服務(wù)器的管理溫和化 | SMTP服務(wù)器的構(gòu)建 | POP/IMAP服務(wù)器的構(gòu)建 | 病毒查殺系統(tǒng)的構(gòu)建 | 入侵監(jiān)測(cè)系統(tǒng)的構(gòu)建 | 用OpenSSH構(gòu)建SSH服務(wù)器 | 用SSH客戶端軟件登錄到服務(wù)器 | 讓服務(wù)器支持安全HTTP協(xié)議 | 開放一般用戶的網(wǎng)頁發(fā)布權(quán)限 | 虛擬主機(jī)的構(gòu)建 | Servlet/JSP服務(wù)器的構(gòu)建 | 基于日志的站點(diǎn)統(tǒng)計(jì)系統(tǒng)的構(gòu)建 | 構(gòu)建MySQL數(shù)據(jù)庫(kù)服務(wù)器 | 用phpMyAdmin讓MySQL數(shù)據(jù)庫(kù)管理溫和化 | 數(shù)據(jù)庫(kù)的自動(dòng)備份與恢復(fù) | 用ProFTPD構(gòu)建FTP服務(wù)器 | 用FTP客戶端軟件連接到服務(wù)器