CentOS6.6 install vsftpd

1. 解压
tar -xvf vsftpd-3.0.2.tar.gz //解压

cd vsftpd-3.0.2 //进入解压后的目录
2. 环境配置
//需添加一个nobody用户。如果已有nobody用户,则不需要添加。可以用命令 cat /etc/passwd | grep nobody 来查看
useradd nobody

mkdir /usr/share/empty //vsftpd服务器需要一个empty的空目录放在/usr/share/下。如果存在就不需要了

如果需要开启匿名用户访问,需要做以下几步:

mkdir /var/ftp //创建匿名用户使用的目录

//创建ftp用户并指定家目录为/var/ftp,如果创建提示:user ftp exists(FTP用户存在)就表示此用户已经存在。
useradd -d /var/ftp ftp 

3. 编译安装
make //编译二进制文件
make install //编译完后进行安装

Q1: 在执行make时出现了问题:

sysdeputil.o: In function `vsf_sysdep_check_auth':
sysdeputil.c:(.text+0x109): undefined reference to `crypt'
sysdeputil.c:(.text+0x13a): undefined reference to `crypt'
collect2: ld 返回 1
make: *** [vsftpd] 错误 1

A1:

vi Makefile
LIBS = `./vsf_findlibs.sh`  # 在此行末尾增加 -lcrypt 变成
LIBS = `./vsf_findlibs.sh` -lcrypt

Q2:

install: cannot create regular file `/usr/local/man/man8/vsftpd.8': No such file or directory
install: cannot create regular file `/usr/local/man/man5/vsftpd.conf.5': No such file or directory
make: *** [install] Error 1

A2:

mkdir /usr/local/man/man5
mkdir /usr/local/man/man8 
编译vsftpd时,出现could not read symbols: File in wrong format错误提示,后搜寻相关资料,是因为vsftpd的一个安装文件没有考虑到64位平台库文件位置。

 

 

如果的的系统是64位平台,解决办法如下:

 

编辑源代码安装目录下的vsf_findlibs.sh, 将其中路径中的lib替换成lib64。

 

快速的vim替换命令是:

 

:%s?lib/?lib64/?

 (需要检查是否完全替换)

如果检查系统是否为64位平台?

 

uname -m

如果输出 x86_64,说明是64位平台

4. 进行配置

cp vsftpd.conf /etc/        //将默认配置文件拷贝到/etc
cp RedHat/vsftpd.pam /etc/pam.d/vsftpd        //为了让vsftpd支持本地用户登陆,将身份认证模块文件拷贝到/etc/pam.d

vi /etc/vsftpd.conf
//进入vsftpd.conf进行配置如下
1.     listen=yes                //vsftpd工作在standalone模式
2.     anonymous_enable=yes      //允许匿名用户登陆
3.     local_enable=yes          //允许本地用户登陆
4.     pam_service_name=vsftpd   //使用PAM认证

/* vsftpd有两种工作模式:standalone和xinetd守护进程模式,第1行listen=yes就是让其工作在standalone模式下
 * 此种模式每次修改配置文件必须重启vsftpd服务才会生效*/

cp vsftpd.conf.5 /usr/local/man/man5
cp vsftpd.8 /usr/local/man/man8 

/usr/local/sbin/vsftpd &        //后台启动vsftp

5. 关闭ftp服务

killall vsftpd    //或是 pkill vsftpd
pgrep vsftpd   //查看vsftpd服务器是否已经关闭

开机自启动
用vi打开etc/rc.local在里面加入/usr/local/sbin/vsftpd & 即可。
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值