红联Linux门户
Linux帮助

CentOS 6.5_64位系统安装vsftp

发布时间:2015-03-27 10:10:04来源:linux网站作者:linux人

VSFTP是一个基于GPL发布的类Unix系统上使用的FTP服务器软件,它的全称是Very Secure FTP 从此名称可以看出来,编制者的初衷是代码的安全。


下面说说在CentOS 6.5_64位系统下安装VSFTP步骤:


1.查看linux系统版本和内核信息
[root@vmware1 ~]# cat /etc/issue
CentOS release 6.5 (Final)
Kernel \r on an \m
[root@vmware1 ~]# cat /etc/issue
CentOS release 6.5 (Final)
Kernel \r on an \m


2.关闭防火墙和selinux。

[root@vmware1 ~]# /etc/init.d/iptables stop
[root@vmware1 ~]# chkconfig iptables off
[root@vmware1 ~]# setenforce 0


3.安装vsftp软件包。
[root@vmware1 ~]# yum install -y vsftpd

先备份vsftpd的默认配置文件;
[root@vmware1 ~]# cd /etc/vsftpd/
[root@vmware1 vsftpd]# cp vsftpd.conf vsftpd.conf.bak


4.清空vsftpd.cong默认的内容。
root@vmware1 vsftpd]# >vsftpd.conf


5.修改后的内容为:
[root@vmware1 vsftpd]# cat vsftpd.conf
anonymous_enable=NO                    #不允许匿名用户登陆
local_enable=YES                      #vsftpd所在系统的用户可以登录vsftpd
write_enable=YES                      #允许使用任何可以修改文件系统的FTP的指令
local_umask=002                        #匿名用户新增文件的umask数值
anon_upload_enable=NO                  #匿名用户不可以上传文件
anon_mkdir_write_enable=NO            #匿名用户不可以修改文件
xferlog_enable=YES                    #启用一个日志文件,用于详细记录上传和下载。              
use_localtime=YES                      #使用本地时间而不是GMT
vsftpd_log_file=/var/log/vsftpd.log    #vsftpd日志存放位置
dual_log_enable=YES                    #用户登陆日志
connect_from_port_20=YES              #开启20端口    
xferlog_file=/var/log/xferlog          #记录上传下载文件的日志
xferlog_std_format=YES                #记录日志使用标准格式
idle_session_timeout=600              #登陆之后超时时间60秒,登陆之后,一分钟不操作,就会断开连接。
chroot_local_user=YES                  #用于指定用户列表文件中的用户,是否允许切换到上级目录    
listen=YES                            #开启监听
pam_service_name=vsftpd.vu            #验证文件的名字
userlist_enable=YES                    #允许由userlist_file指定文件中的用户登录FTP服务器                  
tcp_wrappers=YES                      #支持tcp_wrappers,限制访问(/etc/hosts.allow,/etc/hosts.deny)
guest_enable=YES                      #起用虚拟用户
guest_username=taokey                  #虚拟用户名
user_config_dir=/etc/vsftpd/vsftpuser  #虚拟用户配置文件路径
pasv_min_port=35000
pasv_max_port=45000
pasv_enable=YES
pasv_promiscuous=YES
anon_other_write_enable=YES


6.创建ftp访问的目录,创建本地ftp用户,设置密码。
[root@vmware1 vsftpd]# mkdir /data/taokey -p
创建用户taokey.
[root@vmware1 vsftpd]# useradd taokey
[root@vmware1 vsftpd]# passwd taokey  密码:123.com
更改用户 taokey 的密码 。
新的 密码:
重新输入新的 密码:
passwd: 所有的身份验证令牌已经成功更新。
给taokey目录,设置成
[root@vmware1 vsftpd]# chown -R taokey.taokey /data/taokey
[root@vmware1 vsftpd]# ll /data/
总用量 4
drwxr-xr-x 2 taokey taokey 4096 1月  16 14:54 taokey


7.安装db4数据包,一会生成数据库文件时候用,安装ftp客户端。
[root@vmware1 ~]# yum install -y db4*
[root@vmware1 vsftpd]# yum install -y ftp


8.创建一个匿名账号.
[root@vmware1 ~]# cd /etc/vsftpd
[root@vmware1 vsftpd]# echo "taokey" >vftpuser.txt
[root@vmware1 vsftpd]# echo "123.com" >>vftpuser.txt    
[root@vmware1 vsftpd]# cat vftpuser.txt
taokey
123.com
[root@vmware1 vsftpd]# db_load -T -t hash -f vftpuser.txt vftpuser.db          
[root@vmware1 vsftpd]# ll vftpuser.db
-rw-r--r-- 1 root root 12288 1月  16 15:14 vftpuser.db


9.添加验证信息,在/etc/pam.d目录下,新创建一个vsftpd.vu文件,写入内容如下。
[root@vmware1 vsftpd]# cat /etc/pam.d/vsftpd.vu
auth required /lib64/security/pam_userdb.so db=/etc/vsftpd/vftpuser
account required /lib64/security/pam_userdb.so db=/etc/vsftpd/vftpuser


10.创建虚拟用户的配置文件。
[root@vmware1 ~]# cd /etc/vsftpd/
[root@vmware1 vsftpd]# mkdir vsftpuser
[root@vmware1 vsftpd]# cd vsftpuser/
[root@vmware1 vsftpuser]# touch taokey
[root@vmware1 vsftpuser]# cat taokey
local_root=/data/taokey
write_enable=YES
anon_mkdir_write_enable=YES
anon_world_readable_only=NO
anon_upload_enable=YES
anon_umask=022
anon_other_write_enable=YES


11.重启vsftpd,然后查看端口是否开启。
[root@vmware1 ~]# service vsftpd restart    
关闭 vsftpd:                                              [确定]
为 vsftpd 启动 vsftpd:                                    [确定]
[root@vmware1 ~]# netstat -anpt | grep vsftpd
tcp        0      0 0.0.0.0:21                  0.0.0.0:*                  LISTEN      2191/vsftpd


12.在本地ftp服务器登陆测试。
[root@vmware1 ~]# ftp 127.0.0.1
Connected to 127.0.0.1 (127.0.0.1).
220 (vsFTPd 2.2.2)
Name (127.0.0.1:root): taokey
331 Please specify the password.
Password:
230 Login successful.
Remote system type is UNIX.
Using binary mode to transfer files.
ftp> dir
227 Entering Passive Mode (127,0,0,1,149,179).
150 Here comes the directory listing.
226 Directory send OK.
ftp> mkdir hello
257 "/hello" created
ftp> dir
227 Entering Passive Mode (127,0,0,1,141,105).
150 Here comes the directory listing.
drwxr-xr-x    2 500      500          4096 Jan 16 15:27 hello
226 Directory send OK.


到此为止,VSFTP搭建完成,实验结束。