溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

搭建常用服務(wù)pure-ftpd服務(wù)

發(fā)布時間:2020-06-20 15:20:07 來源:網(wǎng)絡(luò) 閱讀:1285 作者:望月jin 欄目:網(wǎng)絡(luò)安全

1.安裝pureftp

#cd  /usr/local/src/

#wget   https://download.pureftpd.org/pub/pure-ftpd/releases/pure-ftpd-1.0.42.tar.bz2

2.安裝pure-ftpd

#tar  -jxvf  pure-ftpd-1.0.42.tar.bz2

#cd  pure-ftpd-1.0.42

#./configure  --prefix=/usr/local/pure-ftpd  --without-inetd  --with-altlog  --with-puredb  --with-throttling  --with-peruserlimits  --with-tls

#echo $?

#make

#make install

3.配置pure-ftpd

#cd  configuration-file

#mkdir  -pv  /usr/local/pure-ftpd/etc

#cp   pure-ftpd.conf    /usr/local/pure-ftpd/etc/pure-ftpd.conf   //配置文件

#cp   pure-config.pl     /usr/local/pure-ftpd/sbin/pure-config.pl  //啟動文件

#chmod   755   /usr/local/pure-ftpd/sbin/pure-config.pl  //修改權(quán)限

在啟動pure-ftpd之前需要修改配置文件pure-ftpd.conf,

配置文件內(nèi)容如下:

ChrootEveryone              yes

BrokenClientsCompatibility  no

MaxClientsNumber            50

MaxClientsCompatibility     50

Daemonize                   yes

MaxClientsPerIP             8

VerboseLog                  no

DisplayDotFiles             yes

AnonymousOnly               no

NoAnonymous                 no

SyslogFacility              ftp

DontResolve                 yes

MaxIdleTime                 15

PureDB                      /usr/local/pure-ftpd/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/pure-ftpd/var/run/pure-ftpd.pid

MaxDiskUsage                99

CustomerProof               yes

配置千萬不要弄錯了,我之前自己打進去的,所以出現(xiàn)一些錯字,把pdb文件寫成了conf文件,所以一直連接不上,所以不要粗心哦

4.啟動pure-ftpd

#cd  /usr/local/pure-ftpd/

#./sbin/pure-config.pl     ./etc/pure-ftpd.conf

啟動成功會顯示下面信息:

Running: /usr/local/pure-ftpd/sbin/pure-ftpd -A -B -C8 -D -fftp -H -I15 -lpuredb:/usr/local/pure-ftpd/etc/pureftpd.conf -m4 -s -U133:022 -u100 -g/usr/local/pure-ftpd/var/run/pure-ftpd.pid -k99 -Z

重啟:killall pure-ftpd

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

也可以自己定義PATH環(huán)境變量,在/etc/profile.d/path.sh文件中定義:

搭建常用服務(wù)pure-ftpd服務(wù)

[root@jinge ~]# pure-config.pl  /usr/local/pure-ftpd/etc/pure-ftpd.conf

Running: /usr/local/pure-ftpd/sbin/pure-ftpd -A -B -C8 -D -fftp -H -I15 -lpuredb:/usr/local/pure-ftpd/etc/pureftpd.conf -m4 -s -U133:022 -u100 -g/usr/local/pure-ftpd/var/run/pure-ftpd.pid -k99 -Z

5.建立賬號

pure-ftpd使用的賬號并非Linux系統(tǒng)賬號,而是虛擬賬號,因為這樣做比較安全

#mkdir  /jin/www    

#useradd   www       //創(chuàng)建用戶www

#chown  -R  www:www   /jin/www/    //修改用戶屬主和屬組

#usr/local/pure-ftpd/bin/pure-pw   useradd  ftp_user1  -uwww  -d  /jin/www/

(添加用戶命令:pure-pw

登錄FTP的用戶:ftp_user1

-u指定的用戶為:系統(tǒng)用戶

-d后面的目錄為:ftp_user1賬戶的家目錄,ftp_user1只能訪問其家目錄/jin/www/)

搭建常用服務(wù)pure-ftpd服務(wù)

#/usr/local/pure-ftpd/bin/pure-pw  mkdb  //創(chuàng)建用戶信息數(shù)據(jù)庫文件

#/usr/local/pure-ftpd/bin/pure-pw  list  //列出當(dāng)前的ftp賬號

#/usr/local/pure-ftpd/bin/pure-pw   userdel  ftp_user1   //刪除賬號

搭建常用服務(wù)pure-ftpd服務(wù)

6.測試pure-ftpd

遠程連接測試(用另一臺機器做測試):

服務(wù)端ip(本機)為192.168.226.3

客戶端ip(遠程)為192.168.226.5

客戶端機器中,測試需要使用到的工具是:lftp

安裝lftp:yum  install  -y   lftp

測試:lftp  ftp_user1@192.168.226.3

搭建常用服務(wù)pure-ftpd服務(wù)

查看日志:cat  /var/log/messages

查看lftp中的命令:?

搭建常用服務(wù)pure-ftpd服務(wù)

下載文件到當(dāng)前目錄:get  11.txt

搭建常用服務(wù)pure-ftpd服務(wù)

在客戶端中創(chuàng)建文件,上傳到服務(wù)端中:

客戶端:

搭建常用服務(wù)pure-ftpd服務(wù)

服務(wù)端:

搭建常用服務(wù)pure-ftpd服務(wù)

問題1:

這時候如果登錄ftp會提示

421 Unable to read the indexed puredb file (or old format detected) - Try pure-pw mkdb

執(zhí)行

#/usr/local/pureftpd/bin/pure-pw mkdb

再登錄,一切正常。執(zhí)行這條命令是讓pureftpd根據(jù)/usr/loca/pureftpd/etc/pureftpd.passwd(這個文件是在執(zhí)行pure-pw useradd的時候自動生成的)生成/usr/local/pureftpd/etc/pureftpd.pdb

到這里服務(wù)器已經(jīng)可以正常運行了

再用pure-pw useradd添加另一個ftp帳號登錄,又提示“驗證失敗”,重啟pureftpd也不行,郁悶了好一會后找到原因:

執(zhí)行pure-pw的命令后只是更改了pureftpd.passwd文件,必須執(zhí)行pure-pw mkdb重新生成pureftpd.pdb才生效。

我說在剛接手的服務(wù)器上添加帳號不行呢,就是因為沒有執(zhí)行pure-pw mkdb

如果出現(xiàn)錯誤,登錄不上,應(yīng)該先去查看一下日志文件,看是什么錯誤: cat  /var/log/messages

問題2:

我用兩臺虛擬機做實驗,

服務(wù)端:一臺搭建了pure-ftpd(192.168.226.4)服務(wù),

客戶端:另一臺沒有搭建(192.168.226.6)該服務(wù),

(1)在搭建了pure-ftpd服務(wù)的那臺虛擬機中,配置完配置文件后啟動

(2)沒搭建pure-ftpd服務(wù)的那臺虛擬機用于連接,連接需要用到的工具為lftp,如果沒有yum安裝一下,在該臺虛擬機上連接,lftp  ftp_user1@192.168.226.4

進入之后,ls一下,一直說連接不上,那是什么問題呢?

故障檢查:

1.首先我在服務(wù)端中,查看cat  /var/log/messages日志文件,看提示什么錯誤,不知道是什么問題,該日志中沒有pure-ftpd的日志(后面才知道)

2.檢查日志文件無果之后,我就去檢查配置文件有沒有配置錯誤,一個一個的檢查,不過我重點檢查的是.pdb文件有沒有生成,還有.pid文件有沒有生成

3.查看了配置文件之后,我就在命令行上輸入

cat  /usr/local/pure-ftpd/etc/pureftpd.pdb  如果有,那就沒事

cat  /usr/local/pure-ftpd/var/run/pure-ftpd.pid  //回車之后說命令找不到,那么就是沒有這個文件啦,終于找到問題所在了,那么該如何去解決這個問題呢?

解決方法:我的方法就是直接創(chuàng)建/usr/local/pure-ftpd/var/run/pure-ftpd.pid

本來是沒有var目錄和run目錄的,所以你也要先創(chuàng)建目錄

4.重啟pure-ftpd服務(wù)

killall   pure-ftpd   //先殺死

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

5.在客戶端上測試

測試發(fā)現(xiàn),還是有錯

6.查看日志cat  /var/log/messages

發(fā)現(xiàn)錯誤之后,查看日志,之前是沒有pure-ftpd的日志的,因為沒有生成pid文件,所以沒有日志。

現(xiàn)在查看日志,cat    /var/log/messages,出來pure-ftpd的日志了,錯誤信息如下:

Dec 25 17:38:58 localhost pure-ftpd: (?@?) [ERROR] Unable to start a standalone server: [Address already in use]

Dec 25 17:41:08 localhost kernel: eth0: link down

Dec 25 17:41:20 localhost kernel: eth0: link up

Dec 25 17:41:34 localhost kernel: eth0: link down

Dec 25 17:41:44 localhost kernel: eth0: link up

Dec 25 17:46:20 localhost kernel: eth0: link down

Dec 25 17:46:30 localhost kernel: eth0: link up

發(fā)現(xiàn)這些信息之后,就開始排查了,上網(wǎng)查沒查到,之后就自己去嘗試,它說eth0有問題,又說地址被占用,那么我想可能是網(wǎng)絡(luò)的問題,于是我就在服務(wù)端和客戶端各輸入ifconfig,得到如下信息:

服務(wù)端:

[root@localhost pure-ftpd]# ifconfig

eth0      Link encap:Ethernet  HWaddr 00:0C:29:E4:CC:70

inet addr:192.168.226.4  Bcast:192.168.226.255  Mask:255.255.255.0

inet6 addr: fe80::20c:29ff:fee4:cc70/64 Scope:Link

UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1

RX packets:7030 errors:0 dropped:0 overruns:0 frame:0

TX packets:5759 errors:0 dropped:0 overruns:0 carrier:0

collisions:0 txqueuelen:1000

RX bytes:1163332 (1.1 MiB)  TX bytes:1440044 (1.3 MiB)

Interrupt:19 Base address:0x2000

客戶端:

[root@localhost opt]# ifconfig

eth2      Link encap:Ethernet  HWaddr 00:0C:29:7B:C6:51

inet addr:192.168.226.6  Bcast:192.168.226.255  Mask:255.255.255.0

inet6 addr: fe80::20c:29ff:fe7b:c651/64 Scope:Link

UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1

RX packets:3488 errors:0 dropped:0 overruns:0 frame:0

TX packets:2810 errors:0 dropped:0 overruns:0 carrier:0

collisions:0 txqueuelen:1000

RX bytes:1079817 (1.0 MiB)  TX bytes:363778 (355.2 KiB)

Interrupt:19 Base address:0x2000

發(fā)現(xiàn)問題所在了,客戶端這邊的網(wǎng)卡顯示的是eth2,那么和這個到底有沒有關(guān)系呢?

于是,我又再開了一臺虛擬機,去連接服務(wù)端的pure-ftpd,果然是這個問題,在這臺虛擬機上顯示的網(wǎng)卡為eth0,所以,我覺得應(yīng)該是網(wǎng)卡不匹配的原因,到此問題解決啦。

新開那臺虛擬機:

[root@jinge ~]# ifconfig

eth0      Link encap:Ethernet  HWaddr 00:0C:29:A4:00:54

inet addr:192.168.226.3  Bcast:192.168.226.255  Mask:255.255.255.0

inet6 addr: fe80::20c:29ff:fea4:54/64 Scope:Link

UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1

RX packets:39 errors:0 dropped:0 overruns:0 frame:0

TX packets:51 errors:0 dropped:0 overruns:0 carrier:0

collisions:0 txqueuelen:1000

RX bytes:5374 (5.2 KiB)  TX bytes:6162 (6.0 KiB)

Interrupt:19 Base address:0x2000


向AI問一下細節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI