匿名用户 /var/ftp
        本地用户 /home/username
配置vsftpd时,强烈建议
·# cp /etc/vsftpd.conf /etc/vsftpd.conf1      //备份,vsftpd.conf是个比较苛刻的主文件,修改时不小心在有效行后加一个空格就会使服务启用失败
  # diff /etc/vsftpd.conf /etc/vsftpd.conf1    //文件内容比较
·做一步,重启一下,测试
# vi /etc/vsftpd.conf
anonymous_enable=YES    // :7 ,匿名帐户可登陆
local_enable=YES    // :10 ,本地帐户可以登陆
write_enable=YES    // :13 ,用户通过ftp在服务器上是否有写权限
local_umask=022    // :17 ,创建时默认权限。文件夹=777-umask,文件=666-umask
anon_upload_enable=YES    // :22 ,允许匿名帐户上传
anon_mkdir_write_enable=YES   // :26 ,允许匿名帐户创建文件夹
chown_uploads=YES    // :41 ,开启匿名帐户上传自动更改所属功能
chown_username=bob    // :42 ,属主改为bob
idle_session_timeout=600   // :52 ,空闲会话超时时间
ascii_upload_enable=YES   // :76 ,以ASCII方式上传
ftpd_banner=Welcome to blah FTP service. // :80 ,欢迎界面
chroot_list_enable=YES   // :91 ,开启用户更改根目录功能,默认为禁用更改根
chroot_list_file=/etc/vsftpd.chroot_list // :93 ,该文件中所有用户无法更改根
查看文件其它参数    # man vsftpd.conf
anon_other_write_enable=YES   // 允许匿名帐户删除、重命名
anon_root=/ftp    // 更改匿名帐户根目录,默认为"/var/ftp"
local_root=/local    // 更改本地帐户根目录为/local,默认为用户主目录~
userlist_enable=YES    // 开启用户列表功能
userlist_deny=YES    // 用户列表文件中所有帐户全拒绝。NO时,只有列表中用户能登陆
userlist_file=/etc/vsftpd.user_list // 用户列表文件
anon_max_rate=0    // 匿名用户最大传输速率,0为无限
local_max_rate=0    // 本地用户最大传输速率,0为无限
max_clients=0     // 最大客户端连接数,0为无限
pasv_max_port=0    // 客户端端口最大限制,0为无限制
pasv_min_port=0    // 客户端端口最小限制,0为无限制
测试:
方法一、IE(不建议)
方法二、cmd(强烈推荐),有回显提示。
ftp常用测试命令
? 帮助
bye 退出
quit 退出
exit 退出(仅linux客户端)
cd 服务器端路径更改
lcd 本地路径更改
pwd 显示服务器端当前路径
dir 显示服务器端当前目录中内容(显示权限)
ls 显示服务器端当前目录中内容(在linux中使用时也显示权限)
put 上传
get 下载
mkdir 建文件夹
rmdir 删除文件夹
rename 重命名
delete 删除文件
实验一、针对于本地用户的设置
1、限定只有本地帐户能登陆,匿名帐户无法登陆
2、本地帐户bob不可以更改自已主目录以外的其他目录
3、在本地帐户中只有bob能登陆,alice不能登陆
4、本地帐户可以上传文件,以ASCII方式上传
5、登陆时显示欢迎信息“Welcome to my ftp site”
# vi /etc/vsftpd.conf
anonymous_enable=NO     // 1、:7;需改
local_enable=YES     // 1、:10;默认,确认
230 Login successful. Have fun.  验证:登陆成功提示
Login failed.     验证:登陆失败提示
chroot_list_enable=YES    // 2、:91;需删除开头#号注释
chroot_list_file=/etc/vsftpd.chroot_list  // 2、:93;需删除开头#号注释
ftp> pwd
257 "/"     验证:成功显示
257 "/home/bob"    验证:改之前显示
userlist_enable=YES     // 3、添加
userlist_deny=NO     // 3、添加
userlist_file=/etc/vsftpd.user_list  // 3、添加
write_enable=YES     // 4、:13;默认,确认
ascii_upload_enable=YES    // 4、:76;需删除开头#号注释
ftpd_banner=Welcome to my ftpsite   // 5、:80;需删除开头#号注释,需修改
x: > ftp 192.168.1.201
Connected to 192.168.1.201.
220 Welcome to my ftp site   验证:未登陆提示
# echo bob >> /etc/vsftpd.user_list // 3、添加新行bob
# echo bob > /etc/vsftpd.chroot_list // 2、需存在该文件
# chkconfig vsftpd on   // 超级守护立即启动、开机自动启动
# service xinetd restart   // 重启vsftpd服务
测试:
x: > ftp linux.wnt.com.cn
实验二、针对于匿名帐户的设置
1、只有匿名帐户可以登陆
2、在FTP目录下创建incoming目录
3、允许匿名访问,但不允许在ftp目录中创建,删除
4、允许匿名用户在incoming目录中上传,创建,删除目录。
5、匿名帐户上传的文件,自动变为alice所属
6、用户空闲600秒自动中断
7、匿名帐户最大传输速率50kbytes/sec
8、客户端口连接范围50000到60000
# vi /etc/vsftpd.conf
anonymous_enable=YES   // 1、:7或“/anonymous” 确认
local_enable=NO   // 1、:10或“/local” 修改
anon_upload_enable=YES  // 4、:22或“/upload” 删除注释 
anon_mkdir_write_enable=YES  // 4、:26或“/mkdir” 删除注释 
anon_other_write_enable=YES  // 4、:27    添加
chown_uploads=YES   // 5、:41或“/chown” 删除注释 
chown_username=alice   // 5、:42    删除注释,再修改
idle_session_timeout=600  // 6、:52或“session” 删除注释
anon_max_rate=50000   // 7、    添加
pasv_min_port=50000   // 8、    添加
pasv_max_port=60000   // 8、    添加
# mkdir /var/ftp/incoming // 2、
# chmod go+w /var/ftp/incoming // 4、 g(group)组、o(other)其它人全有写权限
# chkconfig vsftpd on ==> # service xinetd restart
实验三、针对于超级守护的安全性限制(8。0版本可配,因9。0后vsftpd改为独立守护进程不能用此方法)
1、限定192.168.1.0/24能访问
2、10.0.0.0不能访问
3、每个客户机最大连接数1
4、服务器最大连接数200
5、只有13:00到17:00期间能访问ftp服务器
# vi /etc/xinetd.d/vsftpd 
only_from = 192.168.1.0  // 1、添加在括号内
no_access = 10.0.0.0   // 2、添加在括号内
per_source = 1   // 3、添加在括号内
instances = 200   // 4、添加在括号内
access_times = 13:00-17:00  // 5、添加在括号内
ftp客户连接常见故障现象
现象0:
> ftp: connect :连接被拒绝
原因: 服务没启动
解决: # chkconfig vsftpd on

现象1:
500 OOPS: cannot open user list file
原因: 不存在文件“/etc/vsftpd.user_list”或文件中不存在该帐户
解决: # echo username >> /etc/vsftpd.user_list

现象2:
530 Permission denied.
Login failed.
原因: “/etc/vsftpd.user_list”文件中不存在当前登陆用户
解决: # echo username >> /etc/vsftpd.user_list

现象3:
500 OOPS: cannot open chroot() user list file
Login failed.
原因: 不存在文件“/etc/vsftpd.chroot_list”
解决: # echo username >> /etc/vsftpd.chroot_list

现象4:
500 OOPS: missing value in config file
Connection closed by remote host.
原因: “=”等号前值有问题,或只有一个空格
解决: 修正相应的值即可,可能过 diff 来比较查找

现象5:
500 OOPS: bad bool value in config file
Connection closed by remote host.
原因: “=”等号后值有问题
解决: 将“=”等号后值确认修改

现象6:
500 OOPS: unrecognised variable in config file
Connection closed by remote host.
原因: 参数前有空格
解决: 将参数前空格删除

现象7、
确认存在“local_enable=YES”,但本地用户无法登陆
原因: 验证参数被误删除
解决: 添加“pam_service_name=vsftpd”

现象8、
500 OOPS: chdir
500 OOPS: child died
Connection closed by remote host.
原因: 用户主目录没有权限或没有主目录
解决: 正确设置用户主目录权限

500 OOPS: vsFtpd :refusing to run with writable anonymous root

指的是ftp的主目录不能为777权限,如:/var/ftp 此目录的权限为775即可

vsftp 常见配置测试与故障排除的更多相关文章

  1. Longhorn 云原生容器分布式存储 - 故障排除指南

    内容来源于官方 Longhorn 1.1.2 英文技术手册. 系列 Longhorn 是什么? Longhorn 云原生容器分布式存储 - 设计架构和概念 Longhorn 云原生容器分布式存储 - ...

  2. 理解 OpenStack + Ceph (7): Ceph 的基本操作和常见故障排除方法

    本系列文章会深入研究 Ceph 以及 Ceph 和 OpenStack 的集成: (1)安装和部署 (2)Ceph RBD 接口和工具 (3)Ceph 物理和逻辑结构 (4)Ceph 的基础数据结构 ...

  3. ORA-4031 错误故障排除与诊断[视频] (Doc ID 2016002.1)

    Copyright (c) 2019, Oracle. All rights reserved. Oracle Confidential.     ORA-4031 错误故障排除与诊断[视频] (Do ...

  4. 详细故障排除步骤:针对 Azure 中到 Windows VM 的远程桌面连接问题

    本文提供详细的故障排除步骤,用于为基于 Windows 的 Azure 虚拟机诊断和修复复杂的远程桌面错误. Important 若要消除更常见的远程桌面错误,请务必先阅读远程桌面的基本故障排除文章, ...

  5. spark——故障排除

    故障排除一:控制reduce端缓冲大小以避免OOM 在Shuffle过程,reduce端task并不是等到map端task将其数据全部写入磁盘后再去拉取,而是map端写一点数据,reduce端task ...

  6. Kubernetes Deployment故障排除图解指南

     个人K8s还在学习中,相关博客还没有写,准备学第二遍再开始学,发现这篇文章挺好,先转载一下. 原创: 白明的赞赏账户 下面是一个示意图,可帮助你调试Kubernetes Deployment(你可以 ...

  7. spark 性能优化 数据倾斜 故障排除

    版本:V2.0 第一章       Spark 性能调优 1.1      常规性能调优 1.1.1   常规性能调优一:最优资源配置 Spark性能调优的第一步,就是为任务分配更多的资源,在一定范围 ...

  8. Sentry 监控 - 私有 Docker Compose 部署与故障排除详解

    内容整理自官方开发文档 系列 1 分钟快速使用 Docker 上手最新版 Sentry-CLI - 创建版本 快速使用 Docker 上手 Sentry-CLI - 30 秒上手 Source Map ...

  9. 分步骤讲解Deployment故障排除

    背景假设 当你希望在Kubernetes中部署应用程序时,你通常会定义三个组件: 一个Deployment - 这是一份用于创建你的应用程序的Pod副本的"食谱": 一个Servi ...

随机推荐

  1. hue创建的hdfs数据在hdfs无法删除的问题。

    在linux时删除时出现: rmr: Permission denied: user=root, access=ALL, inode="/user/root/.Trash/191128080 ...

  2. spring的multipartResolver和java后端获取的MultipartHttpServletRequest方法对比

    这两天在用spring进行上传上遇到问题,今天进行了问题的排查,这个过程也增加了我看spring源码的兴趣!还是很有收获的! 首先先给A组提供了上传接口,并没有在spring的配置文件进行multip ...

  3. 008_AuditionCC系列1

    一.一二章编辑音频文件. (1)在音轨编辑页面,按鼠标滚轮或键盘上的+个-号可实现Zoom in(放大),Zoom out(缩小) (2)①次声波频率在<20Hz和>20000Hz之间②人 ...

  4. CentOS7优化打开文件句柄数,修改MariaDB允许最大连接数、允许最大插入数据库的数据大小。

    修改服务器配置:vim /etc/systemd/system.conf查找并修改下列两行的值:DefaultLimitNOFILE=1024000DefaultLimitNPROC=1024000 ...

  5. async异步流程控制神器

    async https://www.npmjs.com/package/async Async is a utility module which provides straight-forward, ...

  6. webshot一款网页快照工具

    webshot https://github.com/brenden/node-webshot Webshot provides a simple API for taking webpage scr ...

  7. linux驱动开发学习二:创建一个阻塞型的字符设备

    在Linux 驱动程序中,可以使用等待队列来实现阻塞进程的唤醒.等待队列的头部定义如下,是一个双向列表. struct list_head { struct list_head *next, *pre ...

  8. ghostscript之pdf处理

    ghostscript安装: yum install ghostscript 使用: #把tmp目录下的a.pdf压缩成b.pdf gs -sDEVICE=pdfwrite -dPDFSETTINGS ...

  9. jquery如何生成图片验证码

    jQuery(function($){ /**生成一个随机数**/ function randomNum(min, max) { return Math.floor(Math.random() * ( ...

  10. 【快捷键】【idea】的eclipse格式化快捷键Ctrl+Shift+F与win10冲突的解决方法

    1.多按一个win键解决[Ctrl+Shift+Win+F],试了一下,只要F键最后按就可以了 注意:win键就是微软的logo键 2.先按Ctrl+F,然后松开F键[注意不要松开Ctrl键],再按S ...