1.rpm包更新

类似以下更新即可

rpm -Uvh vsftpd-2.2.-.el6.x86_64.rpm

2.源码更新

不懂为什么对于新版本可能只有源码包而没有rpm等包,如此只能以源码更新了。

tar -zxf nginx-1.10..tar.gz
cd vsftpd-3.0.
make
make install
service vsftpd restart

3.INSTALL文件说明

vsftpd源码包内有INSTALL文件,该文件是安装的说明文档。

该文件最关键的步骤仍是make和make install其他内容是前置条件和以xinted方式启动的说明。

其实完全可以先装个rpm包这样前置条件就不用自己操心了,正常起动即可xinted不用管。

4.出现的错误

make报错:make: gcc: Command not found

解决:yum install gcc-c++

说明:直接安装gcc也是可以的;gcc-c++只是c++的编译器,gcc是包括c++在内的多种语言的编译器

make报错:/usr/bin/ld: cannot find -lcap

解决:yum install libcap-devel

说明:对于/usr/bin/ld: cannot find -lxxx类问题,只要类似地安装libxxx-devel(CentOS)或libxxx-dev(Ubuntu)即可

启动报错:Starting vsftpd for vsftpd: 500 OOPS: config file not owned by correct user, or not a file

/etc/vsftpd/vsftpd.conf文件属主不对:chown -R root:root /etc/vsftpd

5.修改banner信息(隐藏版本号)

最新的vsftpdvsftpd-2.2.2-24.el6.x86_64.rpm也没有解决'ls.c' 远程拒绝服务漏洞(CVE-2011-0762),而3.0版本又没有对应rpm包只能以源码安装

在实际操作发现,有些机器以源码形式升级后版本号不知何故并没有改变,为此需手动修改版本号以避免扫描器误报(由此如果只是要躲避扫描器扫描可以不用升级直接修改版本号即可)

vsftpd的banner中默认有当前版本号,可通过/etc/vsftpd/vsftpd.conf中的ftpd_banner项来自定义banner信息

但如果只是将ftpd_banner赋为随意语句,测试发现在部分操作系统上扫描器还是可以猜出大致版本号;为此我们最稳委的做法是将其值以默认banner信息的格式赋值:

sed -i 's/ftpd_banner=/#ftpd_banner=/' /etc/vsftpd/vsftpd.conf
sed -i '/ftpd_banner=/a\ftpd_banner=(vsFTPd 3.3.3)' /etc/vsftpd/vsftpd.conf

上边语句的意思是,找到ftpd_banner将其前面的#去除,然后赋值为(vsFTPd 3.3.3)。如果不习惯使用sed,可以使用编缉器打开/etc/vsftpd/vsftpd.conf编缉

最后需要重启vsftpd使配置生效,重启命令service vsftpd restart:

vsftpd更新和修改版本号教程的更多相关文章

  1. MySQL修改版本号教程

    处理扫描器扫出的漏洞,基本有四种方法:一是升级软件包到新版本(包括打补丁和整个替换升级),二是修改banner配置项(包括禁用banner和修改banner内容),三是添加白名单(包括主机防火墙和软件 ...

  2. ntpd修改版本号教程

    1.查看当前ntpd版本号 执行:ntpd -v 2.查看当前ntpd位置 执行:which ntpd 3.备份ntpd 执行:cp /usr/sbin/ntpd /usr/sbin/ntpd.bak ...

  3. Tomcat修改版本号教程(CentOS)

    1 到apache-tomcat安装目录下的lib子文件夹,找到catalina.jar备份该文件然后将该文件下载到本地. 2 使用winrar等工具直接打开该jar包进入到org/apache/ca ...

  4. Apache隐藏版本号教程(CentOS)

    1 找到Apache配置文件/etc/httpd/conf/httpd.conf 2 给该文件添加写权限:chmod u+w httpd.conf 3 打开该文件找到ServerTokens字段将其值 ...

  5. CodePush热更新组件详细接入教程

    CodePush热更新组件详细接入教程 什么是CodePush CodePush是一个微软开发的云服务器.通过它,开发者可以直接在用户的设备上部署手机应用更新.CodePush相当于一个中心仓库,开发 ...

  6. [Azure DevOps] 编译时自动修改版本号

    1. 需求 在使用 Pipeline 自动化 CI/CD 流程的过程中,我还还需要自动修改程序集的版本号.这个功能 EdiWang 和LeoLaw 都写文章讲解过做法.不过我的项目基本都是 .Net ...

  7. versions-maven-plugin插件批量修改版本号

    1.简介 versions-maven-plugin插件可以管理项目版本, 特别是当Maven工程项目中有大量子模块时, 可以批量修改pom版本号, 插件会把父模块更新到指定版本号, 然后更新子模块版 ...

  8. Android SDK 更新时修改hosts文件仍然无法更新,可试试这个方法……

    Android SDK 更新时修改hosts文件仍然无法更新,此时必定万分蛋疼.在hosts文件中更换了各种ip,仍然解决不了!!!!!!!!!!!!!!? 第一步: 打开此软件,等待服务器连接 第二 ...

  9. Red Gate系列之五 .NET Reflector 7.6.1.824 Edition .NET程序反编译神器(附插件安装教程2012-10-13更新) 完全破解+使用教程

    原文:Red Gate系列之五 .NET Reflector 7.6.1.824 Edition .NET程序反编译神器(附插件安装教程2012-10-13更新) 完全破解+使用教程 Red Gate ...

随机推荐

  1. [从零开始搭网站三]CentOS配置JDK

    点击下面连接查看从零开始搭网站全系列 从零开始搭网站 上一章我介绍了,如何不用每次都输密码连接服务器.那么这一章终于要开始服务器的开发环境配置了. 1:先输入以下代码来检验有没有已经安装的CDK: r ...

  2. 封装fetch的使用(包含超时处理)

    // 1: 传统fetch操作 fetch('http://facebook.github.io/react-native/movies.json') .then((response) => r ...

  3. _faction

    一.自定义阵营独立于联盟,部落,联盟和部落玩家可以加入同一阵营 二._function_menu表可以配置自定义阵营开启 二.配合_pvp表,可以实现区域的自定义阵营PVP 三.配合_req表fact ...

  4. tarjan 缩点(模板)

    描述: 给定一个n个点m条边有向图,每个点有一个权值,求一条路径,使路径经过的点权值之和最大.你只需要求出这个权值和. 注:允许多次经过一条边或者一个点,但是,重复经过的点,权值只计算一次. 思路: ...

  5. mysql利用navicat导出表结构和表中数据

    LZ在网上搜索了要如何导出mysql的表结构和表中数据,发现有的方法不好用 记录一下好用的方式: 用navicat打开DB链接后,点击数据库,右击选择转储SQL文件,然后选择结构和数据: 之后弹出新的 ...

  6. “ORA-06550: 第 1 行, 第 7 列”解决方法

    将本机能正常运行的维修生产日志代码发布到公司内测环境里无法正常运行,报错如下: execute() - pls–QuartzJob.java–quartzjob 开始执行! java.sql.SQLE ...

  7. 借助JCharDet获取文件字符集

    前段时间,在学习lucene的时候,遇到了读取txt文档遇到编码错误的问题.学了几个解决方案,大部分是将文件转十六进制(可以使用UE的Ctrl+H来查看),读取开头的四个标志位来判断.可是总有些文本文 ...

  8. 力扣(LeetCode)231. 2的幂

    给定一个整数,编写一个函数来判断它是否是 2 的幂次方. 示例 1: 输入: 1 输出: true 解释: 20 = 1 示例 2: 输入: 16 输出: true 解释: 24 = 16 示例 3: ...

  9. 学习笔记47—PhotoShop技巧

    1.photoshop里怎么给画布画对角线? photoshop里给画布画对角线有二种方法: 1) 选直线工具 从一角拉向另一对角 就OK了 非常简单: 2) 选钢笔工具 鼠标先点击某一角 然后再点击 ...

  10. Linux下的JDK和OpenJDK有什么具体的区别

      OpenJDK是JDK的开放原始码版本,以GPL(General Public License)协议的形式放出(题主提到的open就是指的开源).在JDK7的时候,OpenJDK已经作为JDK7的 ...