使用vsftpd服务传输文件

设想客商情势

示范演示为了宣传公司的制品新闻,安插搭建FTP服务器,为客商提供相关资料的下载,仅同意下载付加物新闻,禁止上传。公司的搭档单位和能够在FTP服务器上上传和下载,不过不可能去除数据。

制造客户展开FTP认证的顾客数据库文件,个中奇数行为账户名,偶数行为密码。编辑vim /etc/vsftpd/vuser.list

ftp
123456
vip
123456

由于明文的音讯既不安全,也不适合让vsftpd服务程序间接加在的格式,因而要求动用db_load命令用哈希算法将公开消息文件转成数据库文件。在中华VHEL6中要求安装db4-utils,在RHEL7中libdb-utils

[root@qdlinux ~]# rpm -qf `which db_load`
libdb-utils-5.3.21-20.el7.x86_64
[root@qdlinux ~]# db_load -T -t hash -f /etc/vsftpd/vuser.list /etc/vsftpd/vuser.db
[root@qdlinux ~]# file /etc/vsftpd/vuser.db 
/etc/vsftpd/vuser.db: Berkeley DB (Hash, version 9, native byte-order)

降落数据库文件的权力幸免其余人来看数据库文件的内容,然后把公开新闻文件删除。

[root@qdlinux ~]# chmod 600 /etc/vsftpd/vuser.db
[root@qdlinux ~]# ll /etc/vsftpd/vuser.db
-rw------- 1 root root 12288 Aug 14 01:19 /etc/vsftpd/vuser.db

成立用于扶植设想顾客的PAM文件

vim /etc/pam.d/vsftpd.vu

auth    required        pam_userdb.so   db=/etc/vsftpd/vuser
account required        pam_userdb.so   db=/etc/vsftpd/vuser

创建客商存款和储蓄文件的根目录以至虚拟顾客映射的系统本地顾客。

[root@qdlinux ~]# useradd -d /var/ftp/share -s /sbin/nologin ftpuser
[root@qdlinux ~]# useradd -d /var/ftp/vip -s /sbin/nologin ftpvip
[root@qdlinux ~]# chmod -R 500 /var/ftp/share/
[root@qdlinux ~]# chmod -R 700 /var/ftp/vip/

改过配置文件

anonymous_enable=NO
local_enable=YES
allow_writeable_chroot=YES
pam_service_name=vsftpd.vu
user_config_dir=/etc/vsftpd/vuserconfig
max_clients=300
max_per_ip=10

创制设想账号配置文件

[root@qdlinux ~]# mkdir /etc/vsftpd/vuserconfig
[root@qdlinux ~]# touch /etc/vsftpd/vuserconfig/ftp
[root@qdlinux ~]# touch /etc/vsftpd/vuserconfig/vip

vim编辑/etc/vsftpd/vuserconfig/ftp中的内容

guest_enable=YES
guest_username=ftpuser
anon_world_readable_only=NO
anon_max_rate=50000

vim编辑/etc/vsftpd/vuserconfig/vip中的内容

guest_enable=YES
guest_username=ftpvip
anon_world_readable_only=NO
write_enable=YES
anon_mkdir_write_enable=YES
anon_upload_enable=YES
anon_max_rate=2000000

测试ftp账户

[root@qdlinux ~]# lftp 192.168.56.15 -u ftp,123456
lftp ftp@192.168.56.15:~> ls          
drwx------    5 0        0              97 Aug 13 18:14 grub2
-r--r--r--    1 0        0        11607904 Aug 13 18:13 mariadb-server.rpm

拜候限快速检查评定试

图片 1

图片 2

测试vip账户

[root@qdlinux ~]# lftp 192.168.56.15 -u vip
Password: 
lftp vip@192.168.56.15:~> ls          
-rw-------    1 1004     1004      5505024 Aug 13 18:33 kali-linux-2018.2-amd64.iso
-rw-------    1 1004     1004     111017984 Aug 13 18:36 kali-linux-2018.2-amd641.iso
-r--r--r--    1 0        0        11607904 Aug 13 18:30 mariadb-server.rpm

上传和下载访谈速度测验

图片 3

图片 4

CentOS6.5下部署vsftpd实战

1.尝试须求:

1)使用RPM包安装vsftpd服务

2)实现无名客户访问,验证仅能够访谈和下载,不能上传

3)完毕无名客户可上传、下载、纠正等完全权限(现实条件中如此的急需可能相当的小卡塔 尔(英语:State of Qatar)

4)实现把登录的顾客软禁在团结的家目录中

5)达成约束有个别客商的拜访

6)达成设想顾客的拜谒

7)达成针对分裂的虚构客商具备分裂的权力

2.尝试情形:**

Linux服务器系统版本:Red Hat Enterprise Linux 6.5IP:192.168.20.3

Windows顾客机系统版本:Windows 7 Ultimate x64 IP:192.168.20.2

vsftpd软件版本:vsftpd-2.2.2

3.**实践步骤:**

骨干安装操作

A.挂载系统光盘并设置vsftpd**

此地大家使用rpm安装包安装vsftpd,安装包放在系统光盘中的Packages目录中,大家首先挂载系统光盘到系统的mnt目录下

[[email protected]~]#
mount /dev/sr0 /mnt

图片 5

到Packages目录下找到vsftpd服务的软件包并安装,安装达成。

[[email protected]~]#
rpm -ivh
/mnt/Packages/vsftpd-2.2.2-11.el6_4.1.x86_64.rpm图片 6

B.翻开vsftpd配置文件**

[[email protected]
~]# grep -v “#”/etc/vsftpd/vsftpd.conf #过滤掉配置文件中#号的评释

anonymous_enable=YES#已开启无名氏顾客的探访

local_enable=YES#已拉开本地账号的拜望

write_enable=YES#已展开写入的权柄

local_umask=022#本地顾客上传文件的权位是644,文件夹是755

———————以下配置为劳动私下认可,此试验中没有必要关切———————-

dirmessage_enable=YES

xferlog_enable=YES

connect_from_port_20=YES

xferlog_std_format=YES

listen=YES

pam_service_name=vsftpd

userlist_enable=YES

tcp_wrappers=YES

福寿无疆无名客户访问,验证仅能够访谈和下载,不得以上传

基于vsftpd配置文件的私下认可配置,当vsftpd搭建好之后怎么样都不做就足以被无名客户和本地客户访问了

A.效益验证:**

[[email protected]~]#
service vsftpd start#开行服务

为vsftpd 启动 vsftpd: [确定]

测量试验以前,必得把防火墙和selinux关掉

[[email protected]
~]# serviceiptables stop

iptables:将链设置为政策 ACCEPT:filter [确定]

iptables:消逝防火墙准则: [确定]

iptables:正在卸载模块:[确定]

[[email protected]
~]# setenforce 0

咱俩在顾客机上用文件夹的主意访问 ftp://192.168.20.3

图片 7

今昔来测验一下无名氏客商的上传和下载权限

留心:大家用无名氏账号ftp登录(无密码卡塔 尔(英语:State of Qatar),查看未来各省的干活目录为/,那一个/并非服务器的根目录,而是无名客户本人的家目录,ls查看开采其间有三个pub的文件夹

图片 8

家目录正是服务器上/var/ftp这几个目录:

图片 9

笔者们作证佚名客商可不得以下载首先要在ftp那几个目录下新建一个可供下载的文书[[email protected]
~]# cd/var/ftp #切换到ftp目录下

[[email protected]]#
echo “this is test ftp” > test.txt #新建四个test.txt文件,内容为this
is test ftp

图片 10

回来客商机上的cmd调节台

C:UsersAdministrator>f:
//切换成f盘,大家下载的文件就能够下载到f盘

图片 11

用无名氏账号ftp登入,下载test.txt文件,展开f盘,见到已经下载的文件

图片 12

方今来注明佚名客商是还是不是能够上传文件,我们把刚刚下载都顾客机上的test.txt文件改名称叫tes.txt文件用于上传测量试验(防止重名卡塔 尔(阿拉伯语:قطر‎

图片 13

上传时被反驳回绝,所以大家明白无名客商是只可以够下载无法上传的。

那尽管是系统地面账号的话可不可以上传呢?

[[email protected]]#
useradd tom #新建三个tom的账户

[[email protected]]#
passwd tom #设置tom的密码

回来顾客机的cmd调控台,用tom登录并上传tes.txt文件,上传成功。

图片 14

[[email protected]]#
ls -l /home/tom
#翻开上传的文本的权能为644(因为安插文件中local_umask=022)

图片 15

专一:如若selunux未有关闭,用本地账户也是不得以登陆的,会报以下错误

图片 16

金玉锦绣佚名客户可上传、下载、更改等统统权限

我们要让佚名客户能够上传文件夹,供给修正配置文件:

anon_mkdir_write_enable=YES

介意:当大家不通晓什么去布置要加多什么样或要校正哪些选项时,大家能够依据man手册来谋求支援:

[[email protected]
vsftpd]# manvsftpd.conf

在手册里面查找跟anon相关的剧情,大家来看有生龙活虎项是other
write,他的默许值是No,如若设为yes就足以允许客户上传、成立目录並且删除、重命名等操作

继之我们到vsftpd.conf脚本中插入大器晚成行内容:anon_other_write_enable=YES

匡正完成之后无名氏客户就拿走了高高的权力(可读写,删除,重命名卡塔 尔(阿拉伯语:قطر‎

A.校勘后的脚本**

图片 17

B.功效验证**

[[email protected]]#
service vsftpd reload#再也加载配置

关闭 vsftpd: [确定]

为 vsftpd 启动 vsftpd: [确定]

回来客户端的cmd调节台,以ftp无名氏账号登入,并删除文件,提醒战败。

图片 18

回来服务器查看ftp那一个目录的权力,是未曾写权限的,所以也就不能删除

图片 19

[[email protected]]#
chmod 777 /var/ftp #将ftp权限设为最大

图片 20

重返客商机,用ftp登录,开掘直接登入就报错了,因为咱们把var/ftp这些目录权限改到最大了,那样无名氏顾客就能够无法无天了,为了安全,vsftpd设置了直白就不一致敬登录了。

图片 21

那正是说只要大家想让匿名客户有最大权力应该如何是好呢?当时大家应有对ftp目录下的子目录举办操作

[[email protected]]#
chmod 755 /var/ftp #把ftp的权位改为暗许的755

[[email protected]]#
cd /var/ftp

[[email protected]]#
mkdir anon #在ftp目录下新建二个anon目录

[[email protected]]#
chmod 777 anon #改进目录权限为最大

图片 22

[[email protected]]#
cp test.txt anon #将test文件拷贝到anon目录下,用于末端的删减测验

[[email protected]]#
ls -l #翻看test文件权限为不可写就不得以去除

图片 23

[[email protected]]#
chmod 666 test.txt #将文件权限改为可写

图片 24

那样,test.txt就可以被无名氏顾客删除了。

回来顾客机的cmd调控台,用ftp登录,切换成anon目录,删除test.txt文件,删除成功。当然无名氏客户也是能够张开别的操作了这里就不生龙活虎风华正茂测量检验了。

图片 25

落到实处把登入的客户幽禁在和睦的家目录中

当今大家用地点账号tom登入,暗中同意的当前工作目录是tom自个儿的家目录,大家能够将她随便切换来服务器的任何目录下:

图片 26

如此这般是可怜不安全的,所以大家要让客商登入之后独有只可以在他的家目录那么些界定活动不允许她随便切换成别的目录,大家要求改正配置文件使那行配置生效:chroot_local_user=YES

A.修正后的台本**

图片 27

B.效果与利益验证**

[[email protected]]#
service vsftpd reload #重新加载配置

关闭vsftpd: [确定]

为vsftpd 启动 vsftpd: [确定]

回去客商机的cmd调节台,用tom登录,切换成根,发掘当时的根是他自个儿的家目录,并不是服务器上的根目录下了,他早就被收监在大团结的家目录中了。

图片 28

达成节制某个顾客的访谈

大家查阅vsftpd目录下的内容,发掘成三个user_list文件

图片 29

查看user_list文件内容,发现这几个里面都是被谢绝登入的客户,所以大家要让什么人不得以登入就把账号写进这一个文件之中就可以了,这里大家测验不让tom登入

图片 30

A.纠正后的本子**

图片 31

B.功用验证**

回来顾客机的cmd调节台,用tom登录,登录退步。

图片 32

介怀:这里tom登入失利的缘由是因为我们把tom写进了user_list那几个文件个中,其余也是因为布署文件中userlist_enable=YES那行设置,假使安排成userlist_deny=YES那么就是只允许user_list中的客户登入

贯彻虚构客户的探访

只要大家只是想要新建vsftpd账号而不让他看成一个种类账号的话就能够用到虚构账号功能了

[[email protected]
vsftpd]# vim vuser #新建二个名字为vuser的公文

在这里个文件中基数行为顾客名,偶数行为密码,我们新建多少个顾客lisa和jack

图片 33

图片 34

[[email protected]
vsftpd]# db_load -T -thash -f vuser vuser.db#将vuser调换到数据库文件
db_load是命令 -T钦命调换-t 内定转变类型为hash
-f内定要调换的文本vuser.db为转移后的文本名

[[email protected]
vsftpd]# file vuser.db
#查看文件类型,能够见见vuser已经被调换到叁个vsftpd能识其他hash数据库文件

图片 35

[[email protected]
vsftpd]#chmod 600vuser
#为了安全,不想让别的顾客能够看见这些文件里有如何东西,校勘权限为600

[[email protected]
vsftpd]#chmod 600vuser.db

虚构客商创立之后,要给设想客商映射到一个类别账号

[[email protected]
vsftpd]# useradd -d/opt/vuser -s /sbin/nologin
vuser#新建三个假造客户的映射账号vuser,钦定宿主目录为opt/vuser,并钦赐不容许登入系统

[[email protected]
vsftpd]#
vim/etc/pam.d/vsftpd.vu#为假造顾客创立pam认证模块命名称为vsftpd.vu

在印证文件中到场以下两行认证消息:

auth required pam_userdb.sodb=/etc/vsftpd/vuser

account required pam_userdb.sodb=/etc/vsftpd/vuser

#此间的vuser其实是vuser.db,这里大约了db,不然会报错

自此到vsftpd.conf配置文件中插入以下三行内容:

guest_enable=YES#开启虚构顾客访问

guest_username=vuser#辉映到系统账号vuser

pam_service_name=vsftpd.vu#点名pam认证模块

留意:vsftpd有八个暗中同意的pam认证模块,必要注释掉

A.修改后的剧本**

图片 36

B.成效验证**

[[email protected]]#
service vsftpd restart #重启服务

关闭 vsftpd: [确定]

为vsftpd 启动 vsftpd: [确定]

回到客户机的cmd调整台,用lisa登入并上传文件成功

图片 37

[[email protected]]#
ls -l
/opt/vuser#查阅上传的文件的属主是vuser,表达lisa是粲焕到vuser那些系统账号了

图片 38

紧接着我们把tes.txt文件改名叫te.txt幸免重名,以jack登入并上传te.txt

图片 39

查阅jack上传的文件的属主依然是vuser

图片 40

只顾:纵然虚拟客户都能够登录成功不过上传时提示权限被反驳回绝的话,要求去vsftpd.conf文件中使那行生效anon_upload_enable=YES

贯彻针对差异的杜撰顾客全数差异的权杖

以上实验中lisa和jack的权位是如出生龙活虎辙的,今后我们让lisa上传的文本权限为600而jack上传的公文权限为644,大家必要打开那个独自陈设文件成效

开垦vsftpd.conf配置文件,加入以下生龙活虎行配置告诉她去vu_dir目录下找她们的单身布置文件:

user_config_dir=/etc/vsftpd/vu_dir

[[email protected]
vsftpd]# mkdir vu_dir #在vsftpd目录下新建vu_dir目录

[[email protected]
vsftpd]# cd vu_dir

[[email protected]
vu_dir]# vi jack
#在vu_dir目录下为jack新建一个单身的布局文件(方今不写任何内容保留退出卡塔尔国

图片 41

大家用man手册查看一下anon_umask(无名氏上传卡塔 尔(阿拉伯语:قطر‎那些选项,开掘暗许权限是600,所早前边大家见到lisa和jack上传的文本权限是600

图片 42

万大器晚成要使jack的上传权限是644,那就把那个值设为022就能够

进而大家就vi jack在文书中到场大器晚成行内容:anon_umask=022

A.更正后的剧本**

图片 43

图片 44

B.意义验证**

[[email protected]_dir]#
service vsftpd restart #重启服务

关闭 vsftpd: [确定]

为 vsftpd 启动 vsftpd: [确定]

回去顾客机的cmd调整台,用jack登入并上传t.txt文件

图片 45

服务器上查看上传的文件权限为644,实验成功。

图片 46

4.实行总括:**

1)vsftpd是少年老成款在Linux发行版中最受尊重的FTP服务器程序。特点是Mini轻快,安全易用。

2)vsftpd中的虚构顾客又是叁个不行实用的作用,满意差别顾客的例外访谈本性,在安顿文件中势要求注意权限的布署,以减低权限虚构顾客是私下认可作为无名氏顾客实行拍卖的。

1.试验须求:
1)使用RPM包安装vsftpd服务
2)完毕无名氏客户访问,验证仅可以访谈和下载,不可能上传
3)达成佚名客户可…

行使无名氏开放格局

劳务运维后暗中同意访问的目录为/var/ftp,且无名氏顾客未有上传、成立、重命名、删除效率.但是享有下载作用.

服务开启后平素访谈

图片 47

创设文件夹被谢绝

图片 48

重命名退步

图片 49

咱俩来改善配置文件让佚名客商能够上传文件,编辑配置文件vim /etc/vsftpd/vsftpd.conf,改进为如下内容

anon_upload_enable=YES
anon_umask=022

现行依旧不恐怕上传文件,那是因为ftp的权位难题形成的,大家将其纠正为ftp顾客权限.

==注意:暗许无名客户家目录/var/ftp的权柄是755,那一个权力是不能够改造的,切记!==

[root@qdlinux var]# ll -d ftp
drwxr-xr-x 3 root root 30 Aug 13 21:32 ftp

[root@qdlinux var]# chown -Rf ftp /var/ftp/pub

[root@qdlinux var]# ll ftp
total 0
-rw-r--r-- 1 root root  0 Aug 13 21:32 1.txt
drwxr-xr-x 2 ftp  root 19 Aug 13 21:32 pub

今后早就能够上传文件了,然则只可以上传到ftp/pub目录中,因为刚刚给的正是以此目录的权限.未来就做到了一定要上传文件和下载的指标,不过不能够创立文件夹.

上传文件

图片 50

重命名战败

图片 51

始建文件夹被谢绝

图片 52

[root@qdlinux var]# ll ftp/pub
total 0
-rw-r--r-- 1 ftp root 0 Aug 13 21:32 2.txt
-rw-r--r-- 1 ftp ftp  0 Aug 13 21:51 new.txt
[root@qdlinux var]# 

要是必要展开无名氏客户能够创立文件夹作用,改善配置文件如下所示.

anon_upload_enable=YES
anon_mkdir_write_enable=YES
anon_umask=022

现行佚名客商能够上传文件和下载文件以致开创文件夹.不过无法重命名.

即使急需张开无名氏客户上传下载和创设文件夹以至重命名和删除功效,校勘配置文件如下所示.

anon_upload_enable=YES
anon_mkdir_write_enable=YES
anon_other_write_enable=YES
anon_umask=022

现行反革命佚名客户能够产生上传和下载,创造文件夹和删除文件夹和文书以至重命名.

上传文件
图片 53

新建文件夹
图片 54

那是无名客商的最大权力了,经常匿名访谈的话,只要做到下载功效就能够了。网址提供怎么样客户下载什么。


发表评论

电子邮件地址不会被公开。 必填项已用*标注