安裝pure-ftpd
1. 下載軟件
pure-ftpd 官網是 http://www.pureftpd.org/project/pure-ftpd 當前最新版本爲1.0.42, 但阿銘不建議使用最新版本,最新版有可能有一些小bug.
[root@localhost ~]# cd /usr/local/src/ [root@localhost src]# wget http://download.pureftpd.org/pub/pure-ftpd/releases/pure-ftpd-1.0.42.tar.bz2
2. 安裝pure-ftpd
[root@localhost src]# tar jxf pure-ftpd-1.0.42.tar.bz2 [root@localhost src]# cd pure-ftpd-1.0.42 [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
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 [email protected] 口令: lftp [email protected]:~> 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
命令可以列出當前目錄都有什麼文件。