linux下pureftp伺服器的搭建
Pure-FTPd 是一款免費(BSD)的,安全的,高質量和符合標準的FTP伺服器。 側重於執行效率和易用性。 它提供了簡單的答案,他滿足了大眾化的需求,包括普通使用者以及主機供應商們。
Pure-FTPd 安全性 pure - ftpd 得到了充分的支援,它是始終以安全設計為理念,其程式碼總是作為有漏洞的來進行討論,並重新稽核。該服務可以適應嚴格的安全需要做到許可權分離。 甚至在不需要Root許可權的情況下通過其內建的chroot()模擬以及虛擬帳戶100%正常執行。避免密碼作為明文傳輸:pure - ftpd的OpenSSL庫支援可選的 SSL / TLS加密層使用。 Pure-FTPd 的執行環境預編譯的二進位制包可提供Novell, Mandriva, Debian, Ubuntu, PLD Linux, Stampede Linux, Slackware Linux (Slimslack), Multilinux, Sorcerer Linux, Fli4L (the one-disk router), ROOT Linux, Gentoo Linux 以及大多數免費的作業系統使用
Pure-FTPd 也可以執行在 BSD 系統 : FreeBSD (/usr/ports/ftp/pure-ftpd/), OpenBSD (/usr/ports/net/pure-ftpd/), DragonflyBSD and NetBSD (/usr/pkgsrc/net/pureftpd/).
Pure-FTPd 語言環境 所有的伺服器訊息被翻譯成英語,德語,羅馬尼亞語,法語,波蘭語,西班牙語,丹麥語,荷蘭語,義大利語,巴西葡萄牙語,斯洛伐克語,韓語,瑞典語,挪威語,俄語,繁體中文,簡體中文,捷克語,土耳其語,匈牙利語和加泰羅尼亞語。這將幫助你們的客戶理解並診斷,即使英語不是他們的母語
它可以幫助您的客戶瞭解診斷,即使英語不是他們的母語。
訊息在獨立檔案,它們可以很容易地轉換為新的語言,或自定義
一、原理圖:
二、所需軟體包及附件:
三、環境搭建:
1、配置網路地址:
# vim /etc/sysconfig/network-scripts/ifcfg-eth0 //編輯網絡卡配置檔案
2、重啟網路服務:
# service network restart
3、掛載光碟:
# mkdir /mnt/cdrom //建立掛載點
# mount /dev/cdrom /mnt/cdrom/
4、安裝pure-ftp所需的軟體包:
# yum install httpd mysql mysql-server mysql-devel php php-mysql //使用yum安裝相應的軟體包
5、啟動httpd服務:
# service httpd start
6、啟動mysql服務:
# service mysqld start
# mysqladmin -u root -p password "123" //更改mysql的root使用者的密碼
四、原始碼安裝pure-ftpd服務:
1、拆解pure-ftpd原始碼:
# tar -zxvf pure-ftpd-1.0.36.tar.gz -C /usr/local/src/
# cd /usr/local/src/pure-ftpd-1.0.36/
2、配置pure-ftp原始碼:
# ./configure \
--prefix=/usr/local/pureftpd \
--with-mysql \
--with-shadow \
--with-pam \
--with-welcomemsg \
--with-uploadscript \
--with-cookie \
--with-virtualchroot \
--with-virtualhosts \
--with-diraliases \
--with-quotas \
--with-puredb \
--with-sysquotas \
--with-ratios \
--with-ftpwho \
--with-throttling \
--with-language=simplified-chinese
3、編譯pure-ftp原始碼:
# make
4、安裝pure-ftp原始碼:
# make install
5、手動生成pure-ftpd的服務指令碼:
# cd /usr/local/src/pure-ftpd-1.0.36/configuration-file/
# chmod a+x pure-config.pl //給pure-ftpd的服務指令碼新增執行的許可權
# cp pure-config.pl /usr/local/pureftpd/sbin/
# mkdir /usr/local/pureftpd/etc
# cp pure-ftpd.conf /usr/local/pureftpd/etc/
6、生成pure-ftpd服務的控制指令碼:
# cd /usr/local/src/pure-ftpd-1.0.36/
# cp contrib/redhat.init /etc/init.d/pureftpd
7、編輯控制檔案:
8、將pureftpd服務設定成開機自動啟動:
# chmod 755 /etc/init.d/pureftpd
# chkconfig --add pureftpd
# chkconfig pureftpd on
五、配置pure-ftpd的使用者登入環境
1、編輯配置檔案
# vim /usr/local/pureftpd/etc/pure-ftpd.conf
不允許匿名登入:
使用者第一次登入後自動建立家目錄:
2、配置虛擬使用者登入環境
# mkdir /ftproot /虛擬帳號的根目錄,相當於一個使用者的組目錄
# chmod -R 777 /ftproot <這步不做可以能會引起登入時報421錯誤>
# useradd virtualftp -d /ftproot -s /sbin/nologin -M //建立虛擬使用者對映的系統使用者
# chown virtualftp:virtualftp /ftproot
3、將pure-ftpd服務新增到環境變數
# echo PATH=$PATH:/usr/local/pureftpd/bin/ >>/etc/profile
# . /etc/profile
六、設定pure-ftpd使用者的mysql認證
1、配置pure-ftpd主配置文件:
#vim /usr/local/pureftpd/etc/pure-ftpd.conf
2、產生並配置資料庫配置檔案pureftpd-mysql.conf
拷貝pureftpd-mysql.conf檔案到指定目錄:
# cp pureftpd-mysql.conf /usr/local/pureftpd/etc/
3、編輯pureftpd-mysql.conf的配置:
# vim /usr/local/pureftpd/etc/pureftpd-mysql.conf
七、建立pure-ftpd的資料庫檔案:
1、編輯pureftp.sql:
2、匯入資料庫檔案pureftp.sql:
# mysql -u root -p < pureftp.sql
3、新增連線mysql使用者:
# mysql -u root -p
mysql>grant all privileges on ftpusers.* to [email protected] identified by 'tmppasswd';
mysql>flush privileges;
八、建立並配置pure-ftpd管理程式pureadmin:
1、將pureadmin包拆解到httpd主目錄下:
# tar -zxvf PureAdmin-0.3.tar.gz -C /var/www/html/
# mv /var/www/html/PureAdmin-0.3 /var/www/html/pureadmin
2、修改pureadmin的配置檔案
# cd /var/www/html/pureadmin
3、編輯pureadmin的配置頁面:
# vim config.php
$cfg['dir']='/home/ftphome'; //預設家目錄;
4、啟動pure-ftpd服務:
# service pureftpd start
5、重啟httpd服務:
# service httpd restart
九、驗證測試:
現在可以登入使用了
http://192.168.10.100/pureadmin
登入:使用者:admin ; 密碼:123;驗證碼不用
建立ftp新使用者:
建立成功:
使用user1帳號登入ftp:
目錄已經建立:
測試成功!!
轉載於:https://blog.51cto.com/liuguirong/992855