查看自己是否安装vsftp

rpm -qa | grep vsftp

rpm -qa 查看自己已安装的包 过滤vsftp

systemctl rsetart vsftpd

重启服务

先关闭防火墙

systemctl stop firewalld

一。匿名

写vsftp的配置文件

vi /etc/vsftpd/vsftpd.conf

anonymous_enable=YES 匿名登录是否允许
write_enable=YES            写入开启
anon_upload_enable=YES   匿名上传 是否开启
anon_mkdir_write_enable=YES  匿名创建文件夹
anon_other_write_enable=YES   匿名其他写入

此时 vsftp 能够上传 但是不能下载

1。 修改 /var/ftp/pub 目录权限 只给  other 一个r 权限

变更 pub 目录 是由 ftp 控制

chown ftp:ftp pub/

2.。 修改配置文档 添加一个 anon_world_readable_only =NO

vsftpd.conf有一个选项anon_world_readable_only、它默认是开启的YES
如果开启之后,会出现以下效果
对于文件说,如果文件的其他人没有r的权限,那么将不能下载,即使ftp用户有读的权限也不可以
也就是说如果要anonymous要能下载,需要
1、ftp用户对文件要有读的权限
2、给其他人加上读的权限 (或者将anon_world_readable_only设置为NO)

此时 匿名能够上传 能够下载

二。本地用户的下载与上传

创建本地用户 useradd ftp01

useradd ftp02

为用户添加上密码

passwd  ftp01

passwd ftp02

本地用户登录

local_enable=YES

local_umask=022 上传的权限

ftp01 创建后 我们可以让他无法登录

修改/etc/passwd 把  /bin/bash 修改成  sbin/nologin 这样 就无法登录了

登录ftp01 会发现我们可以进入系统目录  这时候我们可以修该配置来锁定ftp01的家目录

ftp01 应该是登录自己家目录

chroot_local_user=YES    #锁定本地用户,登录后不允许跳出ftp根目录,即家目录

chroot_list_enable=YES 列表

chroot_list_file=/etc/vsftpd/chroot_list 列表名单

上 3个同时开启 的时候 chroot _list 里面的用户 是不是限制的 类似于白名单

这时候我们使用用户去登录 会报错

原因是 本地用户的家目录   有w权限

drwx------. 2 ftp01 ftp01 62 6月 26 19:42 ftp01
drwx------. 2 ftp02 ftp02 62 6月 26 19:42 ftp02

去掉 w 权限  就可以了

dr-x------. 2 ftp01 ftp01 62 6月 26 19:42 ftp01
dr-x------. 2 ftp02 ftp02 62 6月 26 19:42 ftp02

chmod 500 ftp01 ftp02

三、虚拟用户

.....

linux vsftp 简单配置的更多相关文章

  1. Linux iptables简单配置

    #!/bin/sh#modprobe ipt_MASQUERADEmodprobe ip_conntrack_ftpmodprobe ip_nat_ftpiptables -Fiptables -t ...

  2. linux dhcp 简单配置

    dhcp 端口 UDP67和UDP68为正常的DHCP服务端口 rpm -qa | grep dhcp 查询是否安装了dhcp 服务 安装dhcp 服务 yum install dhcp -y 打开/ ...

  3. Linux中vim的简单配置

    本文主要分享Linux中vim的简单配置 ★配置文件的位置     在目录/etc.下面,有个名为vimrc的文件,这就是系统中公共的vim配置文件,对所有用户都开放.而在每个用户的主目录下,都可以自 ...

  4. Kali Linux虚拟机安装完整安装过程及简单配置(视频)

    点击播放视频 附:视频中出现的两个txt文本,包含了大致的安装与配置过程: 文本1:KaliLinux虚拟机安装和初步配置 Kali Linux虚拟机安装和初步配置 大家好,今天给大家演示一下在VMw ...

  5. 在linux安装redis单机和集群后,如何在windows上使用redis客户端或者java代码访问错误的原因很简单,就是没有连接上redis服务,由于redis采用的安全策略,默认会只准许本地访问。需要通过简单配置,完成允许外网访问。

    这几天在学习在linux上搭建服务器的工作,可谓历经艰辛.可喜最后收获也不少. 这次是在linux上搭建redis服务器后从windows上缺无法访问,连接不上. 仔细回忆以前搭建nginx和ftp的 ...

  6. Linux VSFTP服务器详细配置

    Linux VSFTP服务器 1.开启服务 [root@localhost root]# service vsftpd start Starting vsftpd for vsftpd:        ...

  7. Linux下的GitHub安装与简单配置教程 ~ 转载

    Linux下的GitHub安装与简单配置教程   1.GitHub简介 Git是一个分布式版本控制系统,与其相对的是CVS.SVN等集中式的版本控制系统. 2.Git的安装 1)安装Git a.查看与 ...

  8. Linux yum的配置 , python环境管理, nginx搭建简单学习

    Linux yum的配置 , python环境管理, nginx搭建简单学习 一丶配置yum的数据仓库 ### yum 工具, 方便,自行解决软件之间的依赖关系. # 配置yum源仓库 (可以使用,清 ...

  9. Linux 的简单命令以及在idea中配置码云

    Linux 的简单命令: ls(list)功能:列出目录内容 cd(change directory)功能:切换目录 touch 1.txt 在当前目录创建一个文件1.txt clear:清除屏幕 p ...

随机推荐

  1. Maven工程控制台乱码问题(IDEA)

    转自https://blog.csdn.net/love_live2/article/details/79311978 个人推荐使用文章中介绍的第三种方法,感觉挺好用的

  2. step_by_step_CSRF/ XSRF_问题描述

    接触Asp.net boilerplate 一段时间,一次同事将他的代码添加到zero项目模板中,他将路由配置成他的页面,目的是要让zero项目登录成功之后跳转到他的页面,可是通过fiddler监视请 ...

  3. C# 一些学习作业

    下载地址:http://pan.baidu.com/s/1dEGCJdf 包括: 实现QQ旋转窗体功能 非“按角度旋转”,实现的是立体旋转. 实现QQ旋转窗体功能,窗口为不规则图像,打开时旋转180度 ...

  4. gym 101982 B题 Coprime Integers

    题目链接:https://codeforces.com/gym/101982/attachments 贴一张图吧: 题目意思就是给出四个数字,a,b,c,d,分别代表两个区间[a,b],[c,d],从 ...

  5. audiounit错误码对应值查询

    https://www.osstatus.com/search/results?platform=all&framework=all&search=(错误码的值) EX:  https ...

  6. 安装centos 6.7&7.4

    1.安装centos 6.7 1) 2)检查软件有无故障.没有必要检查.选择skip,跳过 3) 4) 5) 6)选择存储设备,第一个为基本存储设备,比如ssd,scsi等常见笔记本.电脑,服务器都选 ...

  7. systemd 编写服务管理脚本---学习

    转载:https://www.cnblogs.com/sparkdev/p/8521812.html 我们运行 linux 服务器的主要目的是通过运行程序提供服务,比如 mysql.web serve ...

  8. 20164319 刘蕴哲 Exp3 免杀原理与实践

    [实验内容] 1.1 正确使用msf编码器(0.5分),msfvenom生成如jar之类的其他文件(0.5分),veil-evasion(0.5分),加壳工具(0.5分),使用shellcode编程( ...

  9. 上传到HDFS上的文件遇到乱码问题

    1.通过eclipse中的hdfs插件上传文件,上传成功,但是查看是乱码. 查阅文件本身的编码方式,发现是utf-8,同时文件在项目目录下,显示正常,因为我把它的编码格式也设成了utf-8. 2.通过 ...

  10. java 多线程的唤醒

    package TestThread.ThreadSynchronized.TestInterruptedException; public class InterruptDemo { public ...