准备工具vsftpd-3.0.2.tar.gz

 

 

tar  -zxvf   vsftpd-3.0.2.tar.gz   -C  /usr/local/src/(拆包到src目录

 

cd /usr/local/src/vsftpd-3.0.2/(进入到vsftpd-3.0.2目录)

 

ls

 

less INSTALL (查看安装说明--通过安装说明可以非常清楚的了解到安装的步骤)

 

vim  builddefs.h(编辑builddefs.h

 

undef VSF_BUILD_TCPWRAPPERS 改为define VSF_BUILD_TCPWRAPPERS(构建简易防火墙的时候用)

 

ls -l  vsftpdmake之后通过这个命令可以看到vsftpd程序

 

[root@localhost root]# useradd nobody(安装vsftpd时要满足要满足vsftpd的先决条件--匿名 帐号一nobody身份登录)

 

mkdir   -pv  /usr/share/empty/创建 空目录)

 

mkdir   -pv  /var/ftp/

 

useradd -d /var/ftp ftp(创建ftp帐号

 

chmod og-w /var/ftp(修改权限)

 

cp vsftpd.conf /etc(拷贝配置文件)

 

vim  /etc/vsftpd.config(编辑)

 

local_enable=YES,把这一行的注释(#号)去掉(否则,你建立账号登陆时会受到限制)

 

write_enable=YES 把这一行的注释(#号)去掉

 

重启服务之后生效,没有控制脚本的话,就用pkill vsftpd

然后重新启动vsftpd服务

 

./vsftpd &(后台运行)

 

cd Redhat/

 

cp vsftpd.pam   /etc/pam.d/ftp(指定调用模块接口)

 

cd /usr/local/sbin/(vsftpd就放在这个目录

)

cd  sbin

 

./vsftpd   &(让vsftpd后台运行)

 

在ftp目录下建立一个目录(防止测试的时候看不到任何东西)

 

mkdir   /var/ftp/pub

 

配置启动脚本

 

#!/bin/bash

 

#descriptionion: ftp server

 

#chkconfig:   - 88  91

 

VSFTPD=/usr/local/sbin/vsftpd

 

. /etc/init.d/functions

 

start()  {

 

[-f   /var/lock/subsys/ftp ] && echo  vsftpd  is starting....

 

  echo -n  vsftpd   is starting......

 

sleep 1

 

$VSFTPD  & 

 

[$?  -eq  0] &&touch /var/lock/subsys/ftp && echo -e  \033[31m  [ok]  \033[0m||echo  -e  \033[31m   [fail]  \033[0m

 

}

 

stop (){

 

Echo -n  vsftpd is stoping.....

 

sleep 1

 

killproc  vsftpd  && RETVAL=0||RETVAL=1

 

[$RETVAL   -eq  0] && rm -rf  /var/lock/subsys/ftp ||echo  -e  \033[31m   [fail]  \033[0m

 

 

 

 

}

 

 

 

status (){

 

 

[ -f   /var/lock/subsys/ftp ]  &&  echo vsftpd is running  ||echo vsftpd  is  stoped

 

 

 

 

 

 

case $1  in

 

 

start)

 

  start

 

;;

 

stop)

 

stop

 

;;

 

restart)

 

stop

 

start

 

;;

 

status)

 

status

 

;;

 

*)

 

echo Usage:start|stop|restart

 

;;

 

esac

 

chkconfig --add vsftpd(把vsftpd设置开机启动)

 

useradd user1

 

passwd user1

 

service  vsftpd  start (启动vsftpd服务)

 

Netstat   -tupln  |grep 21(查看21端口是否打开)

 

 

 

 

好了,下面只剩下测试了,快输入命令体验一下自己的成果吧。

 

 

 

ftp 127.0.0.1

 

 

输入用户名user1

 

密码user1

 

dir(显示ftp目录)