pure-ftpd搭建

FTP 是File Transfer Protocol(文件傳輸協議)的英文簡稱,而中文簡稱爲 「文傳協議」 用於Internet上的控制文件的雙向傳輸。同時,它也是一個應用程序(Application)。用戶能夠經過它把本身的PC機與世界各地全部運行 FTP協議的服務器相連,訪問服務器上的大量程序和信息。FTP的主要做用,就是讓用戶鏈接上一個遠程計算機(這些計算機上運行着FTP服務器程序)查看 遠程計算機有哪些文件,而後把文件從遠程計算機上拷到本地計算機,或把本地計算機的文件送到遠程計算機去。FTP用的比NFS更多,因此請你必定要熟練配 置它。數據庫

其實在CentOS或者RedHat Linux上有自帶的ftp軟件叫作vsftp, 使用pure-ftpd搭建ftp服務器,由於這個軟件比vsftp配置起來更加靈活和安全。安全

安裝pure-ftpd服務器

1. 下載軟件ide

pure-ftpd 官網是 http://www.pureftpd.org/project/pure-ftpd 工具

[root@localhost ~]# cd /usr/local/src/測試

[root@localhost src]# wget http://download.pureftpd.org/pub/pure-ftpd/releases/pure-ftpd-1.0.42.tar.bz2ci


2. 安裝pure-ftpdget

[root@localhost src]# tar jxf pure-ftpd-1.0.42.tar.bz2it

[root@localhost src]# cd pure-ftpd-1.0.42io

[root@localhost pure-ftpd-1.0.42]# ./configure \

--prefix=/usr/local/pureftpd \

--without-inetd \

--with-altlog \

--with-puredb \

--with-throttling \

--with-peruserlimits  \

--with-tls

[root@localhost pure-ftpd-1.0.42]# make && make install


配置pure-ftpd

1. 修改配置文件

pure-ftpd 編譯安裝很快就完成了,並且極少有出現錯誤的時候,下面就該配置它了:

[root@localhost pure-ftpd-1.0.42]# cd configuration-file

[root@localhost pure-ftpd-1.0.42]# mkdir -p /usr/local/pureftpd/etc/

[root@localhost configuration-file]# cp pure-ftpd.conf    /usr/local/pureftpd/etc/pure-ftpd.conf

[root@localhost configuration-file]# cp pure-config.pl    /usr/local/pureftpd/sbin/pure-config.pl

[root@localhost configuration-file]# chmod 755    /usr/local/pureftpd/sbin/pure-config.pl


在啓動pure-ftpd以前須要先修改配置文件,配置文件爲/usr/local/pureftpd/etc/pure-ftpd.conf, 下面是配置文件:

ChrootEveryone              yes

BrokenClientsCompatibility  no

MaxClientsNumber            50

Daemonize                   yes

MaxClientsPerIP             8

VerboseLog                  no

DisplayDotFiles             yes

AnonymousOnly               no

NoAnonymous                 no

SyslogFacility              ftp

DontResolve                 yes

MaxIdleTime                 15

PureDB                        /usr/local/pureftpd/etc/pureftpd.pdb

LimitRecursion              3136 8

AnonymousCanCreateDirs      no

MaxLoad                     4

AntiWarez                   yes

Umask                       133:022

MinUID                      100

AllowUserFXP                no

AllowAnonymousFXP           no

ProhibitDotFilesWrite       no

ProhibitDotFilesRead        no

AutoRename                  no

AnonymousCantUpload         no

PIDFile                     /usr/local/pureftpd/var/run/pure-ftpd.pid

MaxDiskUsage               99

CustomerProof              yes


2. 啓動pure-ftpd

[root@localhost ~]# 

/usr/local/pureftpd/sbin/pure-config.pl /usr/local/pureftpd/etc/pure-ftpd.conf

或:

/usr/local/pureftpd/sbin/pure-ftpd /usr/local/pureftpd/etc/pure-ftpd.conf 


若是是啓動成功,會顯示一行長長的以Running開頭的信息,不然那就是錯誤信息,

3. 創建帳號

[root@localhost ~]# mkdir /data/www/

[root@localhost ~]# useradd www

[root@localhost ~]# chown -R www:www /data/www/

[root@localhost ~]# /usr/local/pureftpd/bin/pure-pw useradd ftp_user1  -uwww -d /data/www/

Password:

Enter it again:


其中,-u將虛擬用戶ftp_user1與系統用戶www關聯在一塊兒,也就是說使用ftp_user1帳號登錄ftp後,會以www的身份來讀取文 件或下載文件。-d 後邊的目錄爲ftp_user1帳戶的家目錄,這樣可使ftp_user1只能訪問其家目錄/data/www/. 到這裏還未完成,還有最關鍵的一步,就是建立用戶信息數據庫文件:

[root@localhost ~]#  /usr/local/pureftpd/bin/pure-pw mkdb


pure-pw還能夠列出當前的ftp帳號,固然也能夠刪除某個帳號, 咱們再建立一個帳號:

[root@localhost ~]#  /usr/local/pureftpd/bin/pure-pw  useradd ftp_user2 -uwww -d /tmp

[root@localhost ~]#  /usr/local/pureftpd/bin/pure-pw mkdb


列出當前帳號:

[root@localhost ~]# /usr/local/pureftpd/bin/pure-pw list


刪除帳號的命令爲:

[root@localhost ~]#  /usr/local/pureftpd/bin/pure-pw  userdel ftp_user2


測試pure-ftpd

測試須要使用的工具叫作lftp, 先安裝一下它:

[root@localhost ~]# yum install -y lftp


測試:

[root@localhost ~]# touch /data/www/123.txt

[root@localhost ~]# lftp ftp_user1@127.0.0.1

口令:

lftp ftp_user1@127.0.0.1:~> ls

drwxr-xr-x    2 514        www              4096 Jun 12 11:14 .

drwxr-xr-x    2 514        www              4096 Jun 12 11:14 ..

-rw-r--r--    1 514        www                 0 Jun 12 11:14 123.txt


登錄後,使用 ls 命令能夠列出當前目錄都有什麼文件。


設置開機啓動服務,在/etc/rc.local最後加上

/usr/local/pureftpd/sbin/pure-ftpd /usr/local/pureftpd/etc/pure-ftpd.conf  >/dev/null  2>&1

相關文章
相關標籤/搜索