一、VSFTP

作用:提供文件共享服务,可以应用在互联网中,实现外地登录服务器下载公司文件的功能,不区分客户端,在windows和linux中都是可以使用的

1.安装vsftpd

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

2.创建共享的文件(准备共享的文件和创建用户)

[root@Server ~]# mkdir /ftp
[root@Server ~]# useradd -g wuyue wuyue

3。客户端测试(安装ftp lftp wget)

[root@Client ~]# yum -y install ftp lftp wget

二、试验

实验一:匿名用户上传文件和目录

修改/etc/vsftpd/vsftpd.conf  取消以下注释的俩行

[root@Server ~]# vim /etc/vsftpd/vsftpd.conf    //取消下面所注释的俩行
#anon_upload_enable=YES //是否允许匿名访问
#
# Uncomment this if you want the anonymous FTP user to be able to create
# new directories.
#anon_mkdir_write_enable=YES //是否允许匿名用户创建文件
[root@Server ~]# service vsftpd restart
关闭 vsftpd:                                              [确定]
为 vsftpd 启动 vsftpd:                                    [确定] [root@Server ~]# mkdir /var/ftp/dir1
[root@Server ~]# chmod 777 /var/ftp/dir1 //为了能上传成功需要给文件最大权限

客户端测试

[root@Client tmp]# lftp 192.168.137.140
lftp 192.168.137.140:/> cd dir1/
lftp 192.168.137.140:/dir1> put /root/install.log
bytes transferred
lftp 192.168.137.140:/dir1> ls
-rw------- Jan : aa.txt
-rw------- Jan : install.log //上传成功
lftp 192.168.137.140:/dir1>

实验二:匿名用户上传文件再下载

服务端

首先,共享的目录有777权限

[root@Server dir1]# chmod  wuyue/
[root@Server dir1]# vim /etc/vsftpd/vsftpd.conf
anon_umask= //在配置文件后添加
[root@Server dir1]# !ser

客户端

[root@Client ~]# lftp 192.168.137.140
lftp 192.168.137.140:~> ls
dr-xr-xr-x Oct cdromd
drwxrwxrwx Jan : dir1
drwxr-xr-x May pub
lftp 192.168.137.140:/> cd dir1/
lftp 192.168.137.140:/dir1> ls
-rw------- Jan : aa.txt
drwx------ Jan : boot
-rw------- Jan : install.log
drwxrwxr-- Jan : wuyue
drwxr-xr-x Jan : 新文件夹
lftp 192.168.137.140:/dir1> cd wuyue/
lftp 192.168.137.140:/dir1/wuyue> ls
-rw-r--r-- Jan : 吴越.doc
lftp 192.168.137.140:/dir1/wuyue> exit
[root@Client ~]# lftp 192.168.137.140
lftp 192.168.137.140:~> ls
dr-xr-xr-x Oct cdromd
drwxrwxrwx Jan : dir1
drwxr-xr-x May pub
lftp 192.168.137.140:/> cd dir1/
lftp 192.168.137.140:/dir1> ls
-rw------- Jan : aa.txt
drwx------ Jan : boot
-rw------- Jan : install.log
drwxrwxr-- Jan : wuyue
drwxr-xr-x Jan : 新文件夹
lftp 192.168.137.140:/dir1> cd wuyue/
lftp 192.168.137.140:/dir1/wuyue> ls
-rw-r--r-- Jan : 吴越.doc
lftp 192.168.137.140:/dir1/wuyue> get 吴越.doc //下载
bytes transferred
lftp 192.168.137.140:/dir1/wuyue> exit //因为没有设置所以下载到了当前目录
[root@Client ~]# ls
anaconda-ks.cfg  install.log.syslog  模板  图片  吴越.doc  音乐
install.log      公共的              视频  文档  下载      桌面

实验三、允许匿名用户删除rm

lftp 192.168.137.140:/dir1/wuyue> rm -r 吴越.doc
rm: Access failed: Permission denied. (吴越.doc) //可以看到不让删除

需要在/etc/vsftpd/vsftpd.conf配置文件后添加 anon_other_write_enable=YES

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

客户端测试

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

lftp 192.168.137.140:/dir1/wuyue> rm -r 吴越.doc
rm 成功, 删除 `吴越.doc'

实验四、基于系统的帐号和密码验证登录

[root@Client ~]# lftp -u wuyue, 192.168.137.140
lftp wuyue@192.168.137.140:~> ls
lftp wuyue@192.168.137.140:~> cd / //可以看可以进入根目录看以实验五需要做限制
cd 成功, 当前目录=/
lftp wuyue@192.168.137.140:/> ls
dr-xr-xr-x Jan : bin
dr-xr-xr-x Jan : boot
drwxr-xr-x Jan : dev
drwxr-xr-x Jan : etc
drwxr-xr-x Jan : ftp
drwxr-xr-x Jan : home
dr-xr-xr-x Jan : lib
dr-xr-xr-x Jan : lib64
drwx------ Jan : lost+found
drwxr-xr-x Sep media
drwxr-xr-x Jan : mnt
drwxr-xr-x Jan : opt
dr-xr-xr-x Jan : proc
dr-xr-x--- Jan : root
dr-xr-xr-x Jan : sbin
drwxr-xr-x Jan : selinux
drwxr-xr-x Sep srv
drwxr-xr-x Jan : sys
drwxrwxrwt Jan : tmp
drwxr-xr-x Jan : usr
drwxr-xr-x Jan : var
lftp wuyue@192.168.137.140:/>

实验五、限制本地用户在自己的家目录下

方法一、在服务端的/etc/vsftpd/vsftpd.conf下添加:

chroot_local_user=YES  (限制所有的本地帐号在自己的家目录下)

方法二、限制部分用户(在服务端的/etc/vsftpd/vsftpd.conf下添加)

mkdir /etc/vsftpd/chroot_list

chroot_list_enable=YES
chroot_list_file=/etc/vsftpd/chroot_list

白名单
chroot_local_user=YES
chroot_list_enable=YES
chroot_list_file=/etc/vsftpd/chroot_list   写入该文件的用户可以切换

黑名单
chroot_local_user=NO(默认NO)
chroot_list_enable=YES
chroot_list_file=/etc/vsftpd/chroot_list   写入该文件的用户不可以切换

实验六、限制用户登录ftp

启用黑白名单

黑名单
userlist_enable=YES   开启黑白名单功能
userlist_deny=YES     确定黑名单(默认值)
userlist_file=/etc/vsftpd/user_list  名单文件   默认存在

白名单
userlist_enable=YES   开启黑白名单功能
userlist_deny=NO     确定白名单
userlist_file=/etc/vsftpd/user_list  名单文件

VSFTP服务——实验的更多相关文章

  1. [vsftp服务]——ftp虚拟用户、权限设置等的实验

    搭建ftp服务器,满足以下要求: 1.允许匿名用户登录服务器并下载文件,下载速度设置为最高2MB/s 2.不允许本地用户登录ftp服务器 3.在服务器添加虚拟用户vuser01.vuser02.vus ...

  2. linux入门系列15--文件传输之vsftp服务

    前面的系列文章基本讲完了linux管理相关的基础知识,从本篇开始讲解centos7中服务程序的部署和配置,以便为外部提供各种服务. 日常工作和娱乐中,我们所需的各种资源都离不开网络以及各种服务,我们通 ...

  3. Centos安装vsftp服务

    1.安装vsftp yum install vsftpd 2.开启vsftp服务,设置开机自启 service vsftpd restart chkconfig vsftpd on 停止vsftpd: ...

  4. Fedora 14配置vsftp服务步骤

    Fedora 14配置vsftp服务步骤:1:检查Fedora14是否安装了vsftp服务    用rpm -qa|grep vsftp命令检查是否安装了vsftp服务,如果安装了,会显示安装好的版本 ...

  5. linux安装vsftp服务

    如果管理一个网站,需要经常上传下载一些文件,通过scp传输吗?当然不是,太麻烦了,而且首先你需要本机是linux的系统,这时我们需要一个工具,叫ftp. ftp是文件传输协议,通过它可以很方便上传下载 ...

  6. OpenWrt 对外网开放vsftp服务和samba服务

    对WAN开放vsFTP OpenWrt默认启动了vsftp服务, 在Luci上没找到配置界面, 但是后台是有这个服务的, 如果在Openwrt的lan下, 可以直接使用FileZilla之类的客户端连 ...

  7. VSFTP服务配置

    FTP连接及传输模式控制连接:TCP 21 ,用于发送FTP命令信息数据连接:TCP 20 ,用于上传.下载数据数据连接的建立类型:主动模式.被动模式 主动模式:服务器主动发起数据连接·首先由客户端向 ...

  8. linux网络服务实验

    1.设置window IP地址为192.168.3.XX,掩码24位. 2.设置Linux IP地址为192.168.3.YY,掩码24位.window与Linux互相ping通. 3.在linux中 ...

  9. 在 CentOS 上安装 vsftp 服务

    在 CentOS 上安装 vsftp 服务 1.查看当前 CentOS 服务器是否已安装了 vsftpd 服务: rpm -q vsftpd 如果打印如下类似的信息则表明已安装 vsftpd 服务: ...

随机推荐

  1. [译]Java 设计模式之桥接

    (文章翻译自Java Design Pattern: Bridge) 简单来说,桥梁设计模式是一个两层的抽象. 桥接模式就是从一个抽象中实现中解耦以便两个都可以独立的改变.桥接使用封装聚合而且使用继承 ...

  2. [译]Java 设计模式之组合

    (文章翻译自Java Design Pattern: Composite) 组合模式相对来说是比较简单的,但是它在很多设计中被用到,比如SWT.Eclipse工作空间等等.它创建了一个可以通过唯一的方 ...

  3. LeetCode之Min Stack

    1.原文问题描述: Design a stack that supports push, pop, top, and retrieving the minimum element in constan ...

  4. PHP中实现在数据库中的增、删、查、改

    其实要想在PHP中访问并获取到数据库中的数据其实并不难,下面我以例子为大家介绍: 首先,打开PHP软件和WampServer服务,确保在WampServer中的phpMyAdmin中有你要使用的数据表 ...

  5. Ant 随想

    Ant是一种基于Java的build工具 面向任务构建,属性与于shell脚本中命令功能类型. <?xml version="1.0"?> <project na ...

  6. iOS 制作 framework 教程

    直接看步骤 废话不多说,哈哈! 1.新建一个静态库工程: 2:取自己喜欢的名字: 3.删除向导所生成工程中的 Target: 3.删除TestFrameWork对应的工程文件夹: 5:删除bulid ...

  7. 工作日志(DJ)

    ajax传参:  $.post("MAIN_JSHandler.ashx",                               { "retInfoCode&q ...

  8. 实现 ready和bind事件

    Jquery揭秘系列:实现 ready和bind事件   讲这一节之前,先回顾之前的一篇<小谈Jquery>里面的代码: (function (win) { var _$ = functi ...

  9. Binder机制,从Java到C (6. Binder in Native : libbinder)

    1.Java和C++中的Binder 从前一篇 Binder机制,从Java到C (5. IBinder对象传递形式) 中可以看到,使用Binder的Java代码,到最后都会进入到Native环境,将 ...

  10. 安装mysql-python报错:UnicodeDecodeError: 'ascii' codec can't decode byte 0xe2 in position 65: ordinal not in range(128)

    安装mysql-python报错: UnicodeDecodeError: 'ascii' codec can't decode byte 0xe2 in position 65: ordinal n ...