VSFTP在centos7上安装

5vsftpd服务安装和配置

本章节介绍如何安装和配置Vsftpd软件。

5.1安装vsftpd

1.检查vsftpd是否安装。

rpm -qa|grep vsftpd

2.如果没有安装,请获取安装包后,上传服务器,并安装vsftpd。

rpm -ivh vsftpd*.rpm(或者直接通过yum安装:yum install -y vsftpd)

具体请参见如下图。

5-1安装vsftpd

5.2创建vsftpd密码文件

 3.进入vsftpd目录。

cd /etc/vsftpd

4.创建密码文件。

vi vsftpd_login.txt

具体请参见如下图。

5-2创建vsftpd密码文件

5.设置ftp用户名和密码,请将如下样例两行填加到vsftpd_login.txt中。

ftpin

yjyjs@123

ftpout

yjyjs@123

如果有多个用户名和密码,请依次按照用户名、密码的顺序填加到密码文件中。

 

 

5.3生成虚拟用户帐户数据库

5.以root用户登录,执行如下命令生成虚拟用户账户数据库vsftpd_login.db。

db_load -T -t hash -f /etc/vsftpd/vsftpd_login.txt /etc/vsftpd/vsftpd_login.db

6.赋予文件可读可写权限。

具体请参见如下图。

 5-4生成虚拟用户账号数据库

5.4生成vsftpd.vu

7.以root用户登录,并编辑文件vsftpd.vu。

vi /etc/pam.d/vsftpd.vu

8.将如下内容填加到vsftpd.vu文件。

              #64位操作系统

#auth required /lib64/security/pam_userdb.so db=/etc/vsftpd/vsftpd_login

#account required /lib64/security/pam_userdb.so db=/etc/vsftpd/vsftpd_login

auth required pam_userdb.so db=/etc/vsftpd/vsftpd_login

account required pam_userdb.so db=/etc/vsftpd/vsftpd_login


auth sufficient pam_userdb.so db=/etc/vsftpd/vsftpd_login

account sufficient pam_userdb.so db=/etc/vsftpd/vsftpd_login

 

5.6创建ftp用户权限目录

使用如下命令创建FTP用户权限目录,具体请参见如下图。

cd /etc/vsftpd

mkdir user.d

 

5.7修改vsftpd.conf文件

9.以root用户登录,进入vsftpd目录。

cd /etc/vsftpd

10.修改vsftpd.conf文件,具体参数含义如下(请在原有配置文件基础上修改,以下项是需要修改的项,不是全量配置项

#取消匿名用户登录

anonymous_enable=NO

#指定授权文件

pam_service_name=vsftpd.vu

#启用虚拟用户

guest_enable=YES

guest_username=app#这里和前面通过useradd创建的用户名一致,云渡一般就直接用云渡应用(exch服务)的用户就可以

#只用ftp用户的权限目录

user_config_dir=/etc/vsftpd/user.d

pasv_min_port=12300 #被动模式时,指定最小端口范围,主动模式时不需要

pasv_max_port=12910 #被动模式时,指定最大端口范围,主动模式时不需要

allow_writeable_chroot=YES

file_open_mode=0766 #指定上传文件后的文件权限,和local_umask=011的意思一样

 

 

5.8配置ftp用户的权限

11.以root用户登录,编辑ftpin文件,设置如下配置项,具体可参见如下。

vi /etc/vsftpd/user.d/ftpin           #ftpin这个和前面的vsftpd_login.txt中的用户名保持一致

write_enable=YES

anonymous_enable=NO

anon_world_readable_only=NO

anon_upload_enable=YES

anon_mkdir_write_enable=YES

anon_other_write_enable=YES

local_umask=022

download_enable=Yes

#该目录为虚拟用户通过ftp登录后的根目录,目录需要自己手动创建
local_root=/home/app/yundu/data/ftp/IN 

 

12.以root用户登录,编辑ftpout文件,设置如下配置项,具体可参见如下:

vi /etc/vsftpd/user.d/ftpout        #ftpout这个和前面的vsftpd_login.txt中的用户名保持一致

write_enable=YES

anonymous_enable=NO

anon_world_readable_only=NO

anon_upload_enable=YES

anon_mkdir_write_enable=YES

anon_other_write_enable=YES

local_umask=022

download_enable=Yes

local_root=/home/app/yundu/data/ftp/OUT #这里的ftpout目录需要自己手动创建,名称要是实际的用户名,和vsftpd_login.txt中的名称保持一致

5.9重启vsftpd

使用如下命令重启vsftpd

service vsftpd restart   或         systemctl start vsftpd

5.9、验证vsftp是否可用

打开ftp客户端,用前面设置的ftp用户名密码登录,并上传文件,查看是否可以上传成功,可以则表明VSFTP安装和设置是OK的。
 

常见FAQ

Q1.无法启动vsftp,启动报错:

Answer:修改/etc/vsftpd/vsftpd.conf文件中的listen=NO,然后重启即可。

猜你喜欢

转载自blog.csdn.net/tl4832194/article/details/82223464