Linux编译安装vsftpd服务器(本地用户验证方式)

Linux vsftpd编译安装和配置允许本地用户登录FTP

1、下载vsftpd源码

wget https://security.appspot.com/downloads/vsftpd-2.3.4.tar.gz

2、编译vsftpd源码
64位的系统编译之前先要执行cp /lib64/libcap.so.1 /lib/libcap.so.1命令:

代码如下:

tar xzvf vsftpd-2.3.4.tar.gz
cd vsftpd-2.3.4
make
make install

3、配置vsftpd

代码如下:

cp vsftpd.conf /etc
cp RedHat/vsftpd.pam /etc/pam.d/ftp
sed i 's/anonymous_enable/#anonymous_enable=YES/g' /etc/vsftpd.conf
sed i 's/#local_enable=YES/local_enable=YES/g' /etc/vsftpd.conf
sed i 's/#write_enable=YES/write_enable=YES/g' /etc/vsftpd.conf
sed i 's/#local_umask=022/local_umask=022/g' /etc/vsftpd.conf
sed i 's/#chroot_local_user=YES/chroot_local_user=YES/g' /etc/vsftpd.conf

4、启动vsftpd并设置开机启动

/usr/local/sbin/vsftpd &
sed -i '$a\/usr/local/sbin/vsftpd &' /etc/rc.d/rc.local

5、添加FTP用户(用户名:ftpuser ftp根目录/home/wwwroot/ftpuser)

useradd -d /home/wwwroot/ftpuser -g ftp -s /sbin/nologin ftpuser

本地用户验证方式

(1)下载文件

wget http://jaist.dl.sourceforge.net/project/buluoos/0.1/src/vsftpd-2.2.2.tar.gz
tar zxvf vsftpd-2.2.2.tar.gz
cd vsftpd-2.2.2

(2)编辑程序代码。用tcp_wrappers验证方式,取消PAM验证。

sed -i 's/undef VSF_BUILD_TCPWRAPPERS/define VSF_BUILD_TCPWRAPPERS/g' builddefs.h
sed -i 's/define VSF_BUILD_PAM/undef VSF_BUILD_PAM/g' builddefs.h

(3)安装
make -j 8

(4)添加系统用户“nobody”(此用户可能已经存在)

useradd nobody

(5)创建目录“/usr/share/empty”(此目录可能已经存在)

mkdir /usr/share/empty/

(6)安装vsftpd配置文件,可执行程序。

install -m 644 vsftpd.conf /etc/vsftpd.conf
install -m 755 vsftpd /usr/local/sbin/vsftpd
install -m 644 vsftpd.8 /usr/share/man/man8
install -m 644 vsftpd.conf.5 /usr/share/man/man5

(7)编辑配置文件

cat >>/etc/vsftpd.conf<<EOF
anonymous_enable=NO
local_enable=YES
write_enable=YES
tcp_wrappers=YES
EOF

(8)启动vsftpd

/usr/local/sbin/vsftpd /etc/vsftpd.conf &

* 安装后使用系统用户登录,最好是使用运行WEB服务器的用户,这样可以避免上传之后再修改属主属组和权限。
* 安装文件下载地址不在本地,如果失效,可以自行搜索个下载地址,其他安装步骤不影响。

(0)

相关推荐

  • linux安装jdk,tomcat 配置vsftp远程连接的步骤

    不知不觉入行也有一年了,这两天在公司上班有空了就自己装了个vmware虚拟机,装了个红帽6.1完全命令行的操作系统,想着搭个公司现在在用的测试环境,没想到中间碰到了很多问题,不过大部分都解决了,现在可以达到自行上传项目等等操作,在这里把这两天学习的东西记录一下,防止记忆丢失. 一开始,要下载安装虚拟机,我选的是vmware,当然你也可以选择别的虚拟机,比如virtualBox等,虚拟机只是用来装操作系统的一个工具而已,当然vmware可能更强大一些,但是对于我们现在做的操作,随便一个工具就可以.

  • Linux配置VSFTP服务器的方法

    一.Linux FTP服务器分类: <1>wu-ftp  <2>proftp=profession ftp  <3>vsftp=very security ftp 配置文件: /etc/vsftpd/vsftpd.conf   //主配置文件 /etc/vsftpd.ftpusers      //被禁止登录FTP的用户文件 /etc/vsftpd.user_list     //允许登录FTP的用户文件 二.访问方式 <1>匿名登录  <2>帐

  • 关于linux服务器下vsftpd的一些问题

    前段时间碰到一位牛B的人物,帮我修正了vsftpd基于PAM认证的问题.今天又碰到N个问题,比如Access denied. 和403错误,无法上传文件等等之类的错误.于是,只好请这个高人再次出马,帮忙再次修正.很感谢这位牛B人物.在利益大于一切的这个X蛋的社会,还能为了咱们这群小菜鸟去分析N个文件..这种精神实在是值得佩服. 针对我自己本身出现的问题,将高人与我的QQ聊天记录整理了一份,然后再加上实际的操作.终于让我大彻大悟.现在与大家狠狠的分享这位高人的成果. 用户上传文件访问出现403或者

  • Linux平台通过nginx和vsftpd构建图片服务器

    因为开发需要,需要在Linux上构建一个独立的图片服务器,此处默认您已安装好Linux系统.系统环境:CentOs6.5,Vmware10 一.Nginx安装 1.nginx安装环境 nginx是C语言开发,建议在linux上运行,本教程使用Centos6.5作为安装环境. 安装nginx需要先将官网下载的源码进行编译,编译依赖gcc环境,如果没有gcc环境,需要安装gcc:yum install gcc-c++ PCRE(PerlCompatible Regular Expressions)是

  • Linux 下VSFTP服务搭建过程

    Vsftp服务 服务功能:文件传输 1.环境部署 ip=192.168.1.50 [root@localhost /]# rpm -ivh /mnt/Packages/vsftpd-2.2.2-11.el6_4.1.x86_64.rpm 2.匿名访问 1)设置配置文件 [root@localhost /]# vi /etc/vsftpd/vsftpd.conf chown ftp /var/ftp/pub --设置准备目录 anonymous_enable=YES --开启匿名访问 local_

  • Linux编译安装vsftpd服务器(本地用户验证方式)

    Linux vsftpd编译安装和配置允许本地用户登录FTP 1.下载vsftpd源码 wget https://security.appspot.com/downloads/vsftpd-2.3.4.tar.gz 2.编译vsftpd源码 64位的系统编译之前先要执行cp /lib64/libcap.so.1 /lib/libcap.so.1命令: 复制代码 代码如下: tar xzvf vsftpd-2.3.4.tar.gz cd vsftpd-2.3.4 make make install

  • CentOS 7 安装vsftpd 服务器的具体操作步骤

    在CentOS7上安装ftp服务器用于保存服务端上传的图片. 1.CentOS卸载vsftpd的方法 如果服务器上已经安装了vsftpd服务,配置出错需要卸载vsftpd服务. 1.1 查找vsftpd服务 [root@localhost /]# rpm -aq vsftpd 返回结果显示: vsftpd-3.0.2-21.el7.x86_64 #此处是查找vsftpd的返回结果 表示此服务期之前已经安装过vsftpd服务. 1.2 删除查找到的vsftpd服务 注:在卸载vsftpd之前,先停

  • linux 编译安装python3.6的教程详解

    1. 首先去官网  https://www.python.org/downloads/source/ 下载 Gzipped source tarball 不要下载 " XZ compressed source tarball " ,目前 python3.6 最新版压缩包名字是:Python-3.6.7.tgz. 把下载的压缩包随便放到一个地方,也可以放到桌面(便于安装过后删除安装包和解压后的安装包). 2. 命令行切换到上面压缩文件所在的目录(比如桌面),然后输入 tar -xzf P

  • Aliyun Linux 编译安装 php7.3 tengine2.3.2 mysql8.0 redis5的过程详解

    介绍 之前写过 CentOS 安装 PHP,MySQL,Nginx 的相关文章,具体介绍这里就不写了,直接上操作步骤. 安装 Tengine 1. 安装必要的编译环境 yum update yum install gcc gcc-c++ autoconf automake 2. 安装需要的组件 PCRE PCRE(Perl Compatible Regular Expressions) http://www.pcre.org 是一个Perl库,包括 perl 兼容的正则表达式库.nginx re

  • 图解Linux下安装Tomcat服务器

    图解Linux下安装Tomcat服务器的具体过程,供大家参考,具体内容如下 上传Tomcat服务器: 首先,需要下载Tomcat-上传到服务器. 安装Tomcat服务器 解压tomcat服务器压缩包 现在已经在java目录下了. tar zxvf apache-tomcat-7.0.72.tar.gz 解压成功了: 配置环境变量 tomcat服务器运行时是需要JDK支持的,所以必须配置好JDK用到的那些环境变量 cd /etc/ ls #显示目录下所有文件及文件夹 编辑/etc下的profile

  • Linux下安装Memcached服务器和客户端与PHP使用示例

    本文实例讲述了Linux下安装Memcached服务器和客户端与php使用.分享给大家供大家参考,具体如下: Memcached是高性能的分布式内存缓存服务器,通过缓存数据库查询结果,减少数据库访问次数,以提高动态Web应用的速度和可扩展性. 系统环境:CentOS 7.2 64位  Apache2.4.33 安装libevent依赖库 wget https://github.com/downloads/libevent/libevent/libevent-2.0.15-stable.tar.g

  • ubuntu16.04 linux 编译安装apache2.4.33的教程详解

    下载软件包: wget http://mirror.bit.edu.cn/apache//httpd/httpd-2.4.33.tar.gz wget http://mirrors.tuna.tsinghua.edu.cn/apache//apr/apr-1.6.3.tar.gz wget http://mirrors.tuna.tsinghua.edu.cn/apache//apr/apr-util-1.6.1.tar.gz 首先需要安装apr和apr-util tar xf apr-1.6.

  • AR系列路由器使用SSH用户验证方式为password登录路由器的典型配置

    大 | 中 | 小    SSH是Secure Shell(安全外壳)的简称,用户通过一个不能保证安全的网络环境远程登录到路由器时,SSH特性可以提供安全保障和强大的认证功能,以保护路由器不受诸如IP地址欺诈.明文密码截取等等的攻击. 使用SSH Client通过password方式登录路由器 # sysname Quidway # radius scheme system # domain system # local-user huawei             /创建本地帐号"huawe

  • Linux下的 mariadb 使用 root 用户启动方式(推荐)

    近日因测试安全产品需要,想调整mariadb的启动用户为root, 经历一番波折后终于成功! 注意:以root身份启动mysql是一项非常危险行为,相当于给了数据库操作用户(数据库管理员或黑客)一个通过mysql对系统直接操作的通道! 实际上是官方不允许root启动的, 因此在一般启动方式下root启动会返回启动失败,并于 /var/log/mariadb/mariadb.log 中提示 Please consult the Knowledge Base to find out how to r

  • 在Mac OS上自行编译安装Apache服务器和PHP解释器

    Apache 2.2.27和PHP 5.5.12在Mac OS X 10.8.5编译安装过程: 在开始之前首先升级Xcode的组件: preferences => Downloads => 下载Command Line Tools包 然后进入Apache的源码包,对于大部分的源码包都可以使用下面这个指令来查看编译选项: ./configure --help 配置编译选项: ./configure --prefix=/Users/levin/dev/apache2.2.27 --enable-m

随机推荐