121thre 发表于 2015-11-27 11:26:16

ftp文件服务器上传下载案例

Vsftpd是very secure FTP daemon(非常安全的FTP守护进程)
21端口 控制连接
20端口 数据连接

在Linux安装vsftpd后
默认匿名用户与本地用户都可以登录
匿名用户登陆到/var/ftp,不能上传和下载
本地用户登陆到本地用户的家目录,可以上传和下载

                                      LinuxClient(192.168.2.2)
-------RHEL5.9(vmnet1)--------(vmnet1)
        192.168.2.1                   Win7Client(192.168.2.3)

                               
实验要求1:
        配置可匿名上传的FTP服务

vsftpd配置
1、查询有没有安装软件包
#rpm -q vsftpd

2.安装软件包
#cd /misc/cd/Server
#rpm -ivh vsftpd.2.0.5-28.e15x86_64.rpm

3、修改主配置文件
#vi /etc/vsftpd/vsftpd.conf
...
27 anon_upload_enables=YES
...
31 anon_mkdir_write_enable=YES
32 anon_other_write_enable=YES
...
:wq

4.给文件夹设置可匿名上传的权限
#setfacl -m u:ftp:rwx /var/ftp/pub
#getfacl /var/ftp/pub

4、启动服务
#service vsftpd restart
#chkconfig vsftpd on

5.客户端测试(Win7)
资源管理器访问://192.168.2.1
命令行下访问 ftp 192.168.2.1
用FileZilla Client测试


将实验环境还原
#vi /etc/vsftpd/vsftpd.conf
...
#27 anon_upload_enables=YES
...
#31 anon_mkdir_write_enable=YES
#32 anon_other_write_enable=YES
...
:wq



实验要求2:
        配置本地用户访问FTP服务,拒绝匿名用户访问
        验证黑白名单,验证完成后将环境还原

1、软件包安装,略...

2、添加用户,设置密码
#useradd mike
#useradd kaka
#useradd lily
#echo "123456" | passwd --stdin mike
#echo "123456" | passwd --stdin kaka
#echo "123456" | passwd --stdin lily

3、修改主配置
#vi /etc/vsftpd/vsftpd.conf
...
12anonymous_enable=NO   #拒绝匿名用户登录
...

:wq

4、设置黑名单
#vi /etc/vsftpd/ftpusers#测试黑名单文件的黑名单,不需重启服务
lily
:wq

5、验证黑白名单文件的黑名单
#vi /etc/vsftpd/user_list #测试黑白名单文件的黑名单,客户端不能登陆,不需重启服务
kaka
:wq

6、验证黑白名单文件的白名单
#vi /etc/vsftpd/vsftpd.conf
userlist_deny=NO   #在文档中添加这一行,只允许user_list里面的用户访问
:wq

7、重启服务
#service vsftpd restart

8、客户端测试(Win7)
Win7doc命令行下测试
ftp 192.168.2.1

9、将实验环境还原,略...


提问:
系统有lily、mike、kaka用户、请关以下情况,谁可以登陆FTP。(拒绝大于一切,拒绝优先)
#grep lily /etc/vsftdp/ftpusers
lily
#grep mike /etc/vsftpd/user_list
mike
#grep userlist_deny /etc/vsftpd/vsftpd.conf
userlist_deny=NO



实验要求3:
        禁锢普通用户在自已的主目录里面
        更改匿名用户的站点为/data/anon_pub
        更改本地用户的站点为/data/local_pub
        设置匿名用户下载速率50KB/s,本地用户100B/s
        最多20个并发,每个IP地址最多2个并发
1、软件包安装
过程略...

2、修改主配置文件
#vi /etc/vsftpd/vsftpd.conf
...
121chroot_local_user=YES   #增加此行即可禁锢普通用户在自已的主目录里面
122anon_root=/data/anon_pub   #更改匿名用户根目录
123local_root=/data/local_pub #更改本地用户根目录
124anon_max_rate=50000
125local_max_rate=100000
126max__clients=20
127max_per_ip=2
...
:wq

#mkdir-p /data{anon_pub,local_pub}
#touch /data/anon_pub/anon_file1
#touch /data/local_pub/local_file1
#dd if=/dev/zero of=/data/anon_pub/anon_db bs=10M count=200
#dd if=/dev/zero of=/data/local_pub/local_db bs=10M count=200

3.重启服务
#service vsftpd restart

4、客户端测试
#wget ftp://192.168.2.1/anon_db #在linux下,用wget下载文件测试匿名用户下载速率
#wget ftp://kaka:123@192.168.2.1/local_db#在linux下,用wget下载文件测试普通用户下载速率
FileZilla Client测试#测试下载速率
Win7doc(命令行下测试)#测试禁锢普通用户的主目录和本地用户的站点

5、实验还原,略...



实验要求4:
        搭建一个只允许上传的FTP?拒绝匿名用户登陆?       
1、安装软件包,略...

2、修改主配置文件
#vi /etc/vsftpd/vsftpd.conf
...
12anonymous_enable=NO   #拒统匿名用户登陆
22local_umask=777       #让上传的文件没有权限导致不能下载
...
:wq

3、重启服务
#service vsftpd restart

5、客户端测试
ftp://192.168.2.1#Win7下,打开资源管理器



ftp在Win7和Linux命令行下的常用命令
ftp 192.168.2.1
ftp         #输入用户名
ftp>?       #敲问?号得到更多的命令显示出来
ftp>lcd   #切换到本地文件夹
ftp>!dir    #查看当前的文件夹的内容
ftp>put          #上传文件
ftp>get          #下载文件


页: [1]
查看完整版本: ftp文件服务器上传下载案例