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. Tomcat日志文件的输出在Linux和Windows下的差异

    前言 最近老大发现Tomcat的日志文件catalina.out里存在着大量的和公司项目相关的log信息,因为一般都是会使用日志框架并另外将log信息输出到另外的文件里的,catalina.out文件 ...

  2. 最近工作用到压缩,写一个zip压缩工具类

    package test; import java.io.BufferedOutputStream;import java.io.File;import java.io.FileInputStream ...

  3. 使用JMETER进行REST API测试(分步指南)

    我确定你在这里是因为你需要加载测试Json Rest API.这并不奇怪,因为Rest API现在越来越受欢迎. 这本指南的目的:帮助您进行负载测试一个Json的 REST API 通过一个具体的例子 ...

  4. traceback异常打印

    traceback模块 traceback模块被用来跟踪异常返回信息. 如下例所示: import traceback try: raise SyntaxError, "traceback ...

  5. Maximum Control (medium) Codeforces - 958B2

    https://codeforces.com/contest/958/problem/B2 题解:https://www.cnblogs.com/Cool-Angel/p/8862649.html u ...

  6. bzoj1538 [NWERC2017]High Score

    网上的题解都很奇怪.. 经过相当长时间的思考,有了一个有效(自认为)的解法 设某一种合法分配方案完成后三个数分别变为a,b,c,其中a>=c,b>=c 此时如果让c减1,让a或b加1(设让 ...

  7. 自己写一个轻量的JqueryGrid组件

    接触mvc不久,突然没有了viewstate和服务端控件处处都觉得不顺手,很多在webform时不必要考虑的问题都出现在眼前,这其中分页时查询条件保持的问题又是最让我头疼的事情,权衡再三,决定用aja ...

  8. 543 Diameter of Binary Tree 二叉树的直径

    给定一棵二叉树,你需要计算它的直径长度.一棵二叉树的直径长度是任意两个结点路径长度中的最大值.这条路径可能穿过根结点.示例 :给定二叉树          1         / \        2 ...

  9. NUP2201MR

    NUP2201MR:双总线保护IC(瞬态抑制二极管),常用于USB总线的保护.

  10. 借助Code Splitting 提升单页面应用性能

    近日的工作集中于一个单页面应用(Single-page application),在项目中尝试了闻名已久的Code splitting,收获极大,特此分享. Why we need code spli ...