FTP实验报告

制作人:全心全意

准备工作:

linux1:192.168.100.4

关闭防火墙、selinux机制

配置yum

匿名访问

1.安装vsftpd服务和客户端

[root@localhost ~]# yum -y install vsftpd

----------------------------------------------------

2.创建FTP目录

[root@localhost ~]# mkdir /var/ftp/test{1..3}

[root@localhost ~]# ls /var/ftp/

pub  test1 test2  test3

-----------------------------------------------------

3.FTP目录755权限,属主ftp

[root@localhost ~]# chown ftp /var/ftp/test1

[root@localhost ~]# chmod 755 /var/ftp/test1

-----------------------------------------------------------

4.配置匿名访问配置文件

[root@localhost ~]# cp /etc/vsftpd/vsftpd.conf /etc/vsftpd/vsftpd.conf.bak

[root@localhost ~]# cat /etc/vsftpd/vsftpd.conf.bak | grep -v "^#" > /etc/vsftpd/vsftpd.conf

[root@localhost ~]# vi /etc/vsftpd/vsftpd.conf

     1 #匿名用户

     2 anonymous_enable=YES

     3 anon_umask=022

     4 anon_root=/var/ftp

     5 anon_upload_enable=YES

     6 anon_mkdir_write_enable=YES

     7 anon_other_write_enable=YES

     8 anon_max_rate=0

     9 #本地用户

    10 local_enable=NO

    11 #全局配置

    12 listen=YES

    13 listen_address=192.168.100.4

    14 listen_port=21

    15 write_enable=YES

    16 download_enable=YES

    17 dirmessage_enable=YES

    18 xferlog_enable=YES

    19 xferlog_std_format=YES

    20 connect_from_port_20=YES

    21 pasv_enable=YES

    22 pasv_max_port=24600

    23 pasv_min_port=24500

    24 pam_service_name=vsftpd

    25 userlist_enable=YES

    26 userlist_deny=YES

    27 max_clients=0

    28 max_per_ip=0

    29 tcp_wrappers=YES

----------------------------------------------------------

4.启动vsftpd服务

[root@localhost ~]#/etc/rc.d/init.d/vsftpd start

为vsftpd 启动vsftpd:                                    [确定]

----------------------------------------------------------

5.测试匿名访问

[root@localhost ~]# ftp 192.168.100.4

Name (192.168.100.4:root):ftp

Password:

ftp> cd test1

ftp> mkdir 11

ftp> dir

drwxr-xr-x    2 14      50           4096 Aug 25 06:51 11

ftp> rename 11 22

ftp> dir

drwxr-xr-x    2 14      50           4096 Aug 25 06:51 22

ftp> rmdir 22

ftp> dir

ftp> exit

  

==============================================

本地用户访问

1.修改为本地用户访问配置文件

[root@localhost ~]# vi /etc/vsftpd/vsftpd.conf

     1 #匿名用户

     2 anonymous_enable=NO

     3 anon_umask=022

     4 anon_root=/var/ftp

     5 anon_upload_enable=YES

     6 anon_mkdir_write_enable=YES

     7 anon_other_write_enable=YES

     8 anon_max_rate=0

     9

    10 #本地用户

    11 local_enable=YES

    12 local_umask=077

    13 chroot_local_user=YES

    14

    15 #全局配置

    16listen=YES

    17 listen_address=192.168.100.4

    18 listen_port=21

    19 write_enable=YES

    20 download_enable=NO

    21 dirmessage_enable=YES

    22 xferlog_enable=YES

    23 xferlog_std_format=YES

    24 connect_from_port_20=YES

    25 pasv_enable=YES

    26 pasv_max_port=24600

    27 pasv_min_port=24500

    28 pam_service_name=vsftpd

    29 userlist_enable=YES

    30 userlist_deny=YES

    31 max_clients=0

    32 max_per_ip=0

    33 tcp_wrappers=YES

---------------------------------------------------------

2.创建用户和密码

[root@localhost ~]# useradd kaixin -s /sbin/nologin

[root@localhost ~]# passwd kaixin

更改用户kaixin 的密码。

新的密码:

无效的密码:WAY 过短

无效的密码:过于简单

重新输入新的密码:

passwd:所有的身份验证令牌已经成功更新。

-----------------------------------------------------------

3.重启vsftpd服务

[root@localhost ~]# service vsftpd restart

关闭vsftpd:                                              [确定]

为vsftpd 启动vsftpd:                                    [确定]

------------------------------------------------------

4.测试

[root@localhost ~]# ftp 192.168.100.4

Name (192.168.100.4:root):kaixin

Password:

ftp> ls

ftp> mkdir 111

ftp> dir

drwx------    2 500     500          4096 Aug 25 09:45 111

ftp> put install.log.syslog

ftp> dir

drwx------    2 500     500          4096 Aug 25 09:45 111

-rw-------    1 500     500         10033 Aug 25 09:45install.log.syslog

ftp> exit

[root@localhost ~]# cd ~kaixin

[root@localhost kaixin]# ls

111  install.log.syslog

======================================

虚拟用户访问

1.安装db4-utils

[root@localhost ~]# yum -y install db4-utils

--------------------------------------------

2.创建文本格式的用户名、密码列表

[root@localhost ~]# vi /etc/vsftpd/vusers.list

aaa

123

bbb

123

----------------------------------------------

3.创建Berkeley DB格式的数据库文件

[root@localhost ~]# cd /etc/vsftpd/

[root@localhost vsftpd]#db_load -T -t hash -f vusers.list vusers.db

[root@localhost vsftpd]# file vusers.db

vusers.db: Berkeley DB (Hash,version 9, native byte-order)

[root@localhost vsftpd]# cd

-f:指定数据源文件,-T:允许非Berkeley DB的应用程序使用从文本格式转换的DB数据文件,-t hash:指定读取数据文件的基本方法)

----------------------------------------------------

4.添加虚拟用户的映射账号、创建FTP根目录

[root@localhost ~]# useradd -d /var/ftproot -s /sbin/nologin virtual

[root@localhost ~]# chmod 755 /var/ftproot/

-----------------------------------------------------

5.为虚拟用户建立PAM认证文件

[root@localhost ~]# vi /etc/pam.d/vsftpd.vu

#%PAM-1.0

auth    required        pam_userdb.so   db=/etc/vsftpd/vusers

account required        pam_userdb.so   db=/etc/vsftpd/vusers

-----------------------------------------------------

6.修改vsftpd配置,添加虚拟用户支持,注释匿名访问权限

[root@localhost ~]# vi /etc/vsftpd/vsftpd.conf

     1 #匿名用户

     2 anonymous_enable=NO

     3 anon_umask=022

     4 anon_root=/var/ftp

     5 #anon_upload_enable=YES

     6 #anon_mkdir_write_enable=YES

     7 #anon_other_write_enable=YES

     8 #anon_max_rate=0

     9

    10 #本地用户

    11 local_enable=YES

    12 local_umask=077

    13 chroot_local_user=YES

    14

    15 #全局配置

    16 listen=YES

    17 listen_address=192.168.100.4

    18 listen_port=21

    19 write_enable=YES

    20 download_enable=YES

    21 dirmessage_enable=YES

    22 xferlog_enable=YES

    23 xferlog_std_format=YES

    24 connect_from_port_20=YES

    25 pasv_enable=YES

    26 pasv_max_port=24600

    27 pasv_min_port=24500

    28 pam_service_name=vsftpd.vu

    29 userlist_enable=YES

    30 userlist_deny=YES

    31 max_clients=0

    32 max_per_ip=0

    33 tcp_wrappers=YES

    34

    35 #虚拟用户

    36 guest_enable=YES

    37 guest_username=virtual

-------------------------------------------------------

7.为不同的虚拟用户建立独立的配置文件

[root@localhost ~]# vi /etc/vsftpd/vsftpd.conf

          38 user_config_dir=/etc/vsftpd/vusers_dir       //添加本行

[root@localhost ~]# mkdir /etc/vsftpd/vusers_dir

[root@localhost ~]# cd /etc/vsftpd/vusers_dir/

[root@localhost vusers_dir]#vi aaa

anon_upload_enable=YES

anon_mkdir_write_enable=YES

anon_other_write_enable=YES

[root@localhost vusers_dir]#touch bbb

----------------------------------------------------------

8.重载vsftpd服务

[root@localhost vusers_dir]#service vsftpd reload

关闭vsftpd:                                              [确定]

为vsftpd 启动vsftpd:                                    [确定]

--------------------------------------------------------

9.测试

[root@localhost ~]# ftp 192.168.100.4

Name (192.168.100.4:root):aaa

Password:

ftp> mkdir 111

ftp> dir

drwxr-xr-x    2 501     501          4096 Aug 25 10:26 111

ftp> cd 111

ftp> put install.log.syslog

ftp> renameinstall.log.syslog  install.log

ftp> dir

-rw-r--r--    1 501     501         10033 Aug 25 10:27install.log

ftp> get install.log

10033 bytes received in3.2e-05 secs (313531.26 Kbytes/sec)

ftp> exit

221 Goodbye.

[root@localhost ~]# ftp192.168.100.4

Name (192.168.100.4:root):bbb

Password:

ftp> dir

drwxr-xr-x    2 501     501          4096 Aug 25 10:27 111

ftp> cd 111

ftp> dir

-rw-r--r--    1 501     501         10033 Aug 25 10:27install.log

ftp> put install.log

550 Permission denied.

ftp> rename install.log 22

550 Permission denied.

ftp> get install.log

10033 bytes received in5.2e-05 secs (192942.30 Kbytes/sec)

ftp> exit

221 Goodbye.

[root@localhost ~]# ftp 192.168.100.4

Name (192.168.100.4:root):kaixin

Password:

530 Login incorrect.

测试结果:

aaa:可登陆,能正常浏览,可上传、下载、修改文件

bbb:可登陆,能正常浏览,可下载,不可上传、修改文件

系统用户:不可登陆

FTP实验报告的更多相关文章

  1. 第二次实验报告:使用 Packet Tracer 分析应用层协议

    个人信息: 姓名:倪晓东 班级:计算1811 学号:201821121020 1 实验目的 熟练使用Packet Tracer工具.分析抓到的应用层协议数据包,深入理解应用层协议,包括语法.语义.时序 ...

  2. 北京电子科技学院(BESTI)实验报告5

    北京电子科技学院(BESTI)实验报告5 课程: 信息安全系统设计基础 班级:1452.1453 姓名:(按贡献大小排名) 郑凯杰.周恩德 学号:(按贡献大小排名) 20145314.20145217 ...

  3. 北京电子科技学院(BESTI)实验报告4

    北京电子科技学院(BESTI)实验报告4 课程: 信息安全系统设计基础 班级:1452.1453 姓名:(按贡献大小排名)周恩德 .郑凯杰 学号:(按贡献大小排名)20145217 .201453 指 ...

  4. 20145215&20145307信息安全系统设计基础实验报告

    20145215&20145307信息安全系统设计基础实验报告 PART1 一.实验原理 交叉编译,简单地说,就是在一个平台上生成另一个平台上的可执行代码.同一个体系结构可以运行不同的操作系统 ...

  5. 北京电子科技学院(BESTI)实验报告1

    北京电子科技学院(BESTI)实验报告1 课程: 信息安全系统设计基础 班级:1452.1453 姓名:(按贡献大小排名)郑凯杰 .周恩德 学号:(按贡献大小排名)20145314 .20145217 ...

  6. 北京电子科技学院(BESTI)实验报告3

    北京电子科技学院(BESTI)实验报告3 课程: 信息安全系统设计基础 班级:1452.1453 姓名:(按贡献大小排名)周恩德 .郑凯杰 学号:(按贡献大小排名)20145217 .201453 指 ...

  7. 20145205 《Java程序设计》实验报告五:Java网络编程及安全

    20145205 <Java程序设计>实验报告五:Java网络编程及安全 实验要求 1.掌握Socket程序的编写: 2.掌握密码技术的使用: 3.客户端中输入明文,利用DES算法加密,D ...

  8. 20145220&20145209&20145309信息安全系统设计基础实验报告(5)

    20145220&20145209&20145309信息安全系统设计基础实验报告(5) 实验报告链接: http://www.cnblogs.com/zym0728/p/6132249 ...

  9. 20145220&20145209&20145309信息安全系统设计基础实验报告(3)

    20145220&20145209&20145309信息安全系统设计基础实验报告(3) 实验报告链接: http://www.cnblogs.com/zym0728/p/6132243 ...

随机推荐

  1. Git - .gitignore怎么忽略已经被版本控制的文件

    问题 如果某个文件已经存在于远程仓库了,也就是说某个文件已经被版本控制了,如果将该文件添加到.gitignore中,是无法生效的.因为.gitignore是用来控制尚未被纳入版本控制的文件,如果文件已 ...

  2. Windows类标识符及其妙用

    Windows类标识符 百度百科这样解释: Windows的类标识符class identifier也称为CLASSID或CLSID,是与某一个类对象相联系的唯一标记(UUID).一个准备创建多个对象 ...

  3. 关于js对象参数的讨论 用街道类比

    var obj = { p: 1 }; function f(o) { o.p = 2; } f(obj); obj.p 上面代码中,传入函数f的是参数对象obj的地址.因此,在函数内部修改obj的属 ...

  4. python多线程Event实现红绿灯案例

    代码: # __author__ = 'STEVEN' # coding = utf-8 import time,threading #开启事件 event = threading.Event() c ...

  5. __enter__,__exit__上下文管理协议

    上下文管理协议__enter__,__exit__ 用途或者说好处: 1.使用with语句的目的就是把代码块放入with中执行,with结束后,自动完成清理工作,无须手动干预 2.在需要管理一些资源比 ...

  6. Codeforces 1139E(二分图最大匹配)

    pi只有0-5000且只找最小的没出现的,又要找不同club的,考虑二分匹配,左边pi,右边ci,一个匹配一个.离线倒着加边即可. const int maxn = 5e3 + 5; int m, n ...

  7. HDU-1263(STL+排序)

    水果 Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others) Total Submiss ...

  8. hdu6315( 2018 Multi-University Training Contest 2)

    bryce1010模板 http://acm.hdu.edu.cn/showproblem.php?pid=6315 /*hdu 1007 首先我们在建立线段树之前应该思考的是线段树的节点维护一个什么 ...

  9. Python开发 第01课 Python 简介

    一.Python 介绍 python的创始人为吉多·范罗苏姆(Guido van Rossum).1989年的圣诞节期间,吉多·范罗苏姆为了在阿姆斯特丹打发时间,决心开发一个新的脚本解释程序,作为AB ...

  10. 085 Maximal Rectangle 最大矩形

    给定一个填充了 0 和 1 的二进制矩阵,找到最大的只包含 1 的矩形并返回其面积.例如,给出以下矩阵:1 0 1 0 01 0 1 1 11 1 1 1 11 0 0 1 0返回 6 详见:http ...