最近在解决客户的问题时接触到了一些FTP的问题,自己在使用过程中发现了很多问题,所以这里总结了一些调优的办法:

服务:vsftp 非常安全文件传输

配置文件:/etc/vsftpd/vsftpd.conf

问题1:

开启本地用户访问,包括root访问

首先要在配置文件中设置以下这些配置:

anonymous_enable=NO
local_enable=YES
write_enable=YES
local_umask=022
userlist_deny=YES 这个一般配置文件不带的,所以如果改好后重启vsftp发现文件不存在可以注释掉它。
userlist_enable=YES

https://www.cnblogs.com/revo/p/7444897.html

Root用户登录失败问题:

然后重启服务,这里有一点需要注意,user_list是白名单,如果单开启userlist_enable=YES这个时,这个文件内的所有未注释用户不允许登录;这也是默认设置root是不被注释的,防止root登录,需要注释到这里的root;如果userlist_deny=NO,userlist_enable=YES时,只允许user_list里的用户登录。

这里还有个问题,如果报这个错,有可能是你的用户密码错误,密码就是你登录实例的密码,用root执行passwd user名就可以改了;还有可能是你的用户不是本地用户哈,就是属性是/sbin/nologin这样也会无法登录的。

若root登录时如果还是报530logincorrect再试着将/etc/vsftp/ftpusers 中的root也给注释掉,就可以登录了。

问题2:

主被动模式问题,Windows连接时vsftp默认开启主动模式,所以需要使用20,21端口来建立并传输数据;Linux连接时默认是被动模式,但是本人亲测了Windows主动模式,效果不太理想,如果客户是filezilla连接,尽量使用被动模式,下面介绍下被动模式:

被动模式是需要配置 vsftpd.conf的配置文件的,在配置文件里要有以下配置:

pasv_enable=YES #开启被动模式

pasv_min_port=20000 #被动模式随机端口范围最小 这里两个端口范围也要在云服务器的安全组中放行,否则不能连接

pasv_max_port=30000 #被动模式随机端口范围最大

pasv_address=120.27.x.x #本地用户访问时要开启公网访问,默认好像是内网,所以会报错

主要体现在连接好后,执行ls会失败,

如果用filezilla连接时,这里也有个坑,一是端口一定要选21连,第二个就是传输设置要选被动,不要选主动,默认我也说不好是啥,好像是被动模式;然后才能连接上。

问题3:

匿名用户fillzilla登录情况下,登录成功了,上传和下载文件需要给配置:

anonymous_enable=YES #允许匿名登陆

write_enable=YES #写权限

local_umask=022 #给定新建文件初始umask,文件就是666-022=644 ,目录同理755

另外还需要其他设置:

anon_upload_enable=YES #允许匿名用户上传

anon_mkdir_write_enable=YES #配置文件里官方是这个说的

Uncomment this if you want the anonymous FTP user to be able to create

# new directories.

说可以创建新目录,但其实这是个坑,没有下面的这个配置,一样无法创建新目录和文件,下面这个配置是没有的自带的,要我们手动加上去,否则你的匿名用户就是无法做修改等其他操作。

anon_other_write_enable=YES

问题4:文件目录和文件的权限问题

vsftp默认的访问目录是/var/ftp,有时候我们图省事会直接把这个目录给到777,但是这样是官方不允许的,它最多能给到755,否则你连接时就会失败报错,越权了~

所以拧不过官方,咱就老实给/var/ftp/再随便建一个目录,然后再给777就好,如果是本地用户再chown更改下所属者和所属组,这样可以避免因系统层面的问题导致文件修改等操作受限!

后续再有其他问题,我会再这里补充,希望可以帮到大家,也希望有错误de地方大家可以在此探讨下~thanks for watching.

FTP调优的更多相关文章

  1. linux下的FTP安装及调优

    前言: 在之前交换平台的开发中,FTP的各种操作算是核心功能点. 在FTP的开发中,遇到了不少坑. 如FTP需要设置被动模式,否则10M以上的包可能会上传失败. 如FTP需要设置囚牢模式,否则访问的文 ...

  2. centos linux安全和调优 第四十一节课

    centos  linux安全和调优    第四十一节课 上半节课 Linux安全 下半节课 Linux调优 2015-07-01linux安全和调优 [复制链接]--http://www.apele ...

  3. JVM 性能调优实战之:使用阿里开源工具 TProfiler 在海量业务代码中精确定位性能代码

    本文是<JVM 性能调优实战之:一次系统性能瓶颈的寻找过程> 的后续篇,该篇介绍了如何使用 JDK 自身提供的工具进行 JVM 调优将 TPS 由 2.5 提升到 20 (提升了 7 倍) ...

  4. JVM调优之JMeter使用(三)

    JMeter是Apache 下基于Java 的一款性能测试和压力测试工具.它基于Java 开发,可对HTTP 服务器和FTP服务器,甚至是数据库进行压力测试. 下载地址:http://jmeter.a ...

  5. 深入理解JAVA虚拟机(内存模型+GC算法+JVM调优)

    目录 1.Java虚拟机内存模型 1.1 程序计数器 1.2 Java虚拟机栈 局部变量 1.3 本地方法栈 1.4 Java堆 1.5 方法区(永久区.元空间) 附图 2.JVM内存分配参数 2.1 ...

  6. 《Linux 性能及调优指南》2.3 监控工具

    翻译:飞哥 (http://hi.baidu.com/imlidapeng) 版权所有,尊重他人劳动成果,转载时请注明作者和原始出处及本声明. 原文名称:<Linux Performance a ...

  7. 《Linux 性能及调优指南》1.5 网络子系统

    翻译:飞哥 (http://hi.baidu.com/imlidapeng) 版权所有,尊重他人劳动成果,转载时请注明作者和原始出处及本声明. 原文名称:<Linux Performance a ...

  8. Kettle性能调优汇总

      性能调优在整个工程中是非常重要的,也是非常有必要的.但有的时候我们往往都不知道如何对性能进行调优.其实性能调优主要分两个方面:一方面是硬件调优,一方面是软件调优.本章主要是介绍Kettle的性能优 ...

  9. MySQL性能调优与架构设计——第13章 可扩展性设计之 MySQL Replication

    第13章 可扩展性设计之 MySQL Replication 前言: MySQL Replication 是 MySQL 非常有特色的一个功能,他能够将一个 MySQL Server 的 Instan ...

  10. 使用阿里开源工具 TProfiler 在海量业务代码中精确定位性能代码 (jvm性能调优)

    技术交流群:233513714 本文是<JVM 性能调优实战之:一次系统性能瓶颈的寻找过程> 的后续篇,该篇介绍了如何使用 JDK 自身提供的工具进行 JVM 调优将 TPS 由 2.5 ...

随机推荐

  1. ORM执行sql语句 双下划线 外键字段创建 ORM跨表查询

    目录 模型层之ORM执行SQL语句 方式1一 方式二 方式三 神奇的双下划线查询 ORM外键字段的创建 1.创建基础表 2.确定外键关系 3.表的查看 数据的录入 外键字段相关操作 针对一对多 ''' ...

  2. war包形式安装jenkins

    (1)下载war包 输入命令:java -jar jenkins.war --httpPort=8080,更改端口 重新登录之后,输入密码创建用户等完成设置 (2)结合Tomcat安装: 将jenki ...

  3. vue中单独封装elementui中的Dialog弹框组件

    一.在components文件中新建 弹框组件 <template> <div> <el-dialog title="提示" :visible.syn ...

  4. 软件安装——tortoiseGit安装和配置

    Tortoisegit安装指南 TortoiseGit是一个开放的Git版本控制系统的源客户端,它是Git和Windows资源管理器的整合,提供了Git的图形化操作界面 一.软件安装 1.进入tort ...

  5. js节流防抖 减少服务器请求

  6. NuxtJS踩坑日记,一步一步爬出我自己挖的坑。

    NuxtJS    2 errors and 2 warnings potentially fixable with the `--fix` option. 第二种报错 Error: No build ...

  7. Java基础1-1-5—java基础语法(idea开发工具)

    5. 开发工具 5.1 idea中项目结构 project(项目.工程) module(模块) package(包) class(类) 一个项目中可以存在多个模块多个模块中,存放项目不同的业务功能代码 ...

  8. java入门与进阶P-2.3

    判断 if语句 一个基本的if语句由一个关键字if开头,跟上在括号里的表示条件的逻辑表达式, 然后是一对大括号"{}"之间的若干条语句.如果表示条件的逻辑表达式的结果为true,那 ...

  9. 结构型模式 - 外观模式Facade

    1.tm的NT审核机制,满篇文章哪来的广告? 就算有也是你们自己加的吧?等财富能支持我自己的网站后,就是和你们说再见之时. 2.tm第二遍说,我接着提交,这个审核机制的傻逼设计者或者是程序敲出来的bu ...

  10. Python 内置界面开发框架 Tkinter入门篇 丙(文末有福利彩蛋,今天可是元宵节)

    以下内容为本人的学习笔记,如需要转载,请声明原文链接微信公众号「ENG八戒」https://mp.weixin.qq.com/s/B1hH5Qzd2RkAiiUId1tLWw 本文大概 2874 个字 ...