FTP实验报告
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实验报告的更多相关文章
- 第二次实验报告:使用 Packet Tracer 分析应用层协议
个人信息: 姓名:倪晓东 班级:计算1811 学号:201821121020 1 实验目的 熟练使用Packet Tracer工具.分析抓到的应用层协议数据包,深入理解应用层协议,包括语法.语义.时序 ...
- 北京电子科技学院(BESTI)实验报告5
北京电子科技学院(BESTI)实验报告5 课程: 信息安全系统设计基础 班级:1452.1453 姓名:(按贡献大小排名) 郑凯杰.周恩德 学号:(按贡献大小排名) 20145314.20145217 ...
- 北京电子科技学院(BESTI)实验报告4
北京电子科技学院(BESTI)实验报告4 课程: 信息安全系统设计基础 班级:1452.1453 姓名:(按贡献大小排名)周恩德 .郑凯杰 学号:(按贡献大小排名)20145217 .201453 指 ...
- 20145215&20145307信息安全系统设计基础实验报告
20145215&20145307信息安全系统设计基础实验报告 PART1 一.实验原理 交叉编译,简单地说,就是在一个平台上生成另一个平台上的可执行代码.同一个体系结构可以运行不同的操作系统 ...
- 北京电子科技学院(BESTI)实验报告1
北京电子科技学院(BESTI)实验报告1 课程: 信息安全系统设计基础 班级:1452.1453 姓名:(按贡献大小排名)郑凯杰 .周恩德 学号:(按贡献大小排名)20145314 .20145217 ...
- 北京电子科技学院(BESTI)实验报告3
北京电子科技学院(BESTI)实验报告3 课程: 信息安全系统设计基础 班级:1452.1453 姓名:(按贡献大小排名)周恩德 .郑凯杰 学号:(按贡献大小排名)20145217 .201453 指 ...
- 20145205 《Java程序设计》实验报告五:Java网络编程及安全
20145205 <Java程序设计>实验报告五:Java网络编程及安全 实验要求 1.掌握Socket程序的编写: 2.掌握密码技术的使用: 3.客户端中输入明文,利用DES算法加密,D ...
- 20145220&20145209&20145309信息安全系统设计基础实验报告(5)
20145220&20145209&20145309信息安全系统设计基础实验报告(5) 实验报告链接: http://www.cnblogs.com/zym0728/p/6132249 ...
- 20145220&20145209&20145309信息安全系统设计基础实验报告(3)
20145220&20145209&20145309信息安全系统设计基础实验报告(3) 实验报告链接: http://www.cnblogs.com/zym0728/p/6132243 ...
随机推荐
- JMeter博客系列:JMeter BeanShell示例
1.简介 Apache JMeter是一个基于Java的开源工具,使您可以在应用程序上执行功能,负载,性能和回归测试.应用程序可以在Web服务器上运行,也可以是独立的.它支持在包含静态和动态资源的客户 ...
- Tinghua Data Mining 3
特征选择 男女身高 男女抽烟 先验分布 熵 衡量系统的不确定性 属性的价值 降低了不确定性 降低的幅度越高越好 主成分分析 旋转是的数据间的correlation消失掉 Q是正交阵 七长八短,长宽相关 ...
- go语言的特点
Go语言保证了既能到达静态编译语言的安全和性能,又达到了动态语言开发维护的高效率 ,使用一个表达式来形容Go语言:Go = C + Python , 说明Go语言既有C静态语言程 序的运行速度,又能达 ...
- js 学习网站
1. Mozilla Developer Network(MDN) 这里你可以找到官方的完整的javascript参考,还有许多有用的指导,教程以及文章,从基本javascript使用到最佳实践以及 ...
- android开发学习 ------- 【转】 android中的单例模式 (详解)
https://blog.csdn.net/u011418943/article/details/60139644 这篇文章 前因后果 都说出来了 ,值得学习. https://blog.cs ...
- JsonConvert对象实现json与对象之间的转换
自己下载Newtonsoft.Json文件 使用JsonConvert对象转换 1. 2.添加引用到项目中,然后导入命名空间 3.就可以使用JsonConvert对象实现Json与类型之间的转换
- java数据结构和算法06(红黑树)
这一篇我们来看看红黑树,首先说一下我啃红黑树的一点想法,刚开始的时候比较蒙,what?这到底是什么鬼啊?还有这种操作?有好久的时间我都缓不过来,直到我玩了两把王者之后回头一看,好像有点儿意思,所以有的 ...
- uvm_globals——告诉这个世界我爱你
uvm_globals.svh 存放全局的变量和方法.当UVM平台启动时,便在uvm_globals查找相应的方法,uvm_globals 的方法实现也比较简单,就是调用uvm_root对应的方法.其 ...
- 阻止除root外的其他用户登录
在对系统进行某些更新时,你可能不希望用户登录,这时可以使用/ e t c / n o l o g i n文件,大多数系统都提供这个文件.一旦在/ e t c目录中使用t o u c h命令创建了一个名 ...
- 【Web应用-网络连接】关于 Azure Web 应用 4 分钟空闲连接的限制
Azure Web 应用后台在处理耗时较长的请求时,并且在此期间,客户端和 Azure Web 应用没有数据交互,即 TCP 连接一直处于空闲状态,此种情况超过 4 分钟后,Azure Web 应用会 ...