溫馨提示×

溫馨提示×

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

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

pureftp,vsftp的部署和優(yōu)化

發(fā)布時間:2020-07-26 06:20:54 來源:網(wǎng)絡(luò) 閱讀:697 作者:lin790292154 欄目:網(wǎng)絡(luò)安全

什么是ftp
FTP 是File Transfer Protocol(文件傳輸協(xié)議)的英文簡稱,而中文簡稱為 “文傳協(xié)議” 用于Internet上的控制文件的雙向傳輸。
FTP的主要作用,就是讓用戶連接上一個遠程計算機(這些計算機上運行著FTP服務(wù)器程序)查看遠程計算機有哪些文件,然后把文件從遠程計算機上拷到本地計算機,或把本地計算機的文件送到遠程計算機去。
在CentOS或者RedHat Linux上有自帶的ftp軟件叫做vsftpd  

安裝pure-ftpd


1. 下載軟件

pure-ftpd 官網(wǎng)是 http://www.pureftpd.org/project/pure-ftpd 當(dāng)前最新版本為1.0.36, 但阿銘不建議使用最新版本,最新版有可能有一些小bug.

cd /usr/local/src/

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

2. 安裝pure-ftpd

tar jxf pure-ftpd-1.0.37.tar.bz2

cd pure-ftpd-1.0.37

 ./configure \

--prefix=/usr/local/pureftpd \

--without-inetd \

--with-altlog \

--with-puredb \

--with-throttling \

--with-peruserlimits  \

--with-tls

make && make install

配置pure-ftpd

1. 修改配置文件

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

cd configuration-file

mkdir -p /usr/local/pureftpd/etc/

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

cp pure-config.pl    /usr/local/pureftpd/sbin/pure-config.pl

chmod 755    /usr/local/pureftpd/sbin/pure-config.pl

在啟動pure-ftpd之前需要先修改配置文件,配置文件為vim /usr/local/pureftpd/etc/pure-ftpd.conf, 你可以打開看一下,里面內(nèi)容很多,如果英文好,可以好好研究一番,下面是阿銘的配置文件,如果你嫌麻煩,直接拷貝過去即可:

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

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

如果是啟動成功,會顯示一行長長的以Running開頭的信息,否則那就是錯誤信息,如果你解決不了,請到阿銘論壇(http://www.aminglinux.com/bbs/forum-40-1.html)獲取幫助吧。

3. 建立賬號

[root@localhost ~]# mkdir -p /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與系統(tǒng)用戶www關(guān)聯(lián)在一起,也就是說使用ftp_user1賬號登陸ftp后,會以www的身份來讀取文件或下載文件。-d 后邊的目錄為ftp_user1賬戶的家目錄,這樣可以使ftp_user1只能訪問其家目錄/data/www/.  到這里還未完成,還有最關(guān)鍵的一步,就是創(chuàng)建用戶信息數(shù)據(jù)庫文件:

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

pure-pw還可以列出當(dāng)前的ftp賬號,當(dāng)然也可以刪除某個賬號, 我們再創(chuàng)建一個賬號:

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

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

列出當(dāng)前賬號:

[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 命令可以列出當(dāng)前目錄都有什么文件。

在測試時,成功登陸后,輸入命令后,提示登陸出錯。

解決辦法:

登陸密碼太簡單,重新修改。

 


vsftp配置ftp服務(wù)  

 

1). yum -y install vsftpd db4-utils
2). 建立系統(tǒng)賬號
     useradd virftp -s /sbin/nologin
3). 建立虛擬賬戶
     vim /etc/vsftpd/vsftpd_login
     test
     
anxxf0814
4). 更改權(quán)限
     chmod 600 /etc/vsftpd/vsftpd_login
5). 生成庫文件密碼
     db_load -T -t hash -f /etc/vsftpd/vsftpd_login /etc/vsftpd/vsftpd_login.db
6). mkdir /etc/vsftpd/vsftpd_user_conf
     cd /etc/vsftpd/vsftpd_user_conf

7). 創(chuàng)建和用戶對應(yīng) 的配置文件

     vim test
     
local_root=/home/virftp/test

anonymous_enable=NO

write_enable=YES

local_umask=022

anon_upload_enable=NO

anon_mkdir_write_enable=NO

idle_session_timeout=600

data_connection_timeout=120

max_clients=10

max_per_ip=5

local_max_rate=50000

8). mkdir /home/virftp/test
     chown -R virftp:virftp /home/virftp

9). vim /etc/pam.d/vsftpd  (添加一下兩行)

auth       sufficient /lib/security/pam_userdb.so db=/etc/vsftpd/vsftpd_login

account    sufficient /lib/security/pam_userdb.so db=/etc/vsftpd/vsftpd_login

     注:
64位的系統(tǒng)需要寫成/lib64/

10). 修改全局配置文件
vim /etc/vsftpd/vsftpd.conf

     anonymous_enable=NO
     anon_upload_enable=NO
     anon_mkdir_write_enable=NO

     添加:
     chroot_local_user=YES (可能已經(jīng)存在)
     guest_enable=YES
     guest_username=virftp
     virtual_use_local_privs=YES
     user_config_dir=/etc/vsftpd/vsftpd_user_conf

11). 啟動vsftpd 服務(wù)
     /etc/init.d/vsftpd start
     若沒有啟動成功, killall -9 pure-ftpd


測試:

客戶端 yum install -y lftp

lftp test@服務(wù)端ip

 


向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