重新整理一下centos7 的VSFTP安装步骤

环境:centos7

 

第一步:安装 vsftpd 

yum install vsftpd

 

 

第二步:创建宿主用户

useradd virture_ftp_user -s /sbin/nologin

passwd virture_ftp_user

 

 

第三步:创建相关文件

3.1  用户上传目录   

mkdir /web

mkdir /web/web1

mkdir /web/web2

 

3.2 日记记录文件

touch /var/log/vsftpd.log

3.3 虚拟用户的控制文件和文件夹

mkdir /etc/vsftpd/v_user_conf
touch /etc/vsftpd/v_user_conf/web1

 

 

第四步 :修改上面创建文件的宿主

chown virture_ftp_user:virture_ftp_user -R /web

chown virture_ftp_user:virture_ftp_user /var/log/vsftpd.log

  

 

 

第五步:  创建ftp的登陆用户 3个web1\web2\admin,登录密码123123

vi /etc/vsftpd/v_user.txt

web1

123123

web2

123123

admin

123123

 生成DB文件,命名为vuser_login.db

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

   改vuser_login.db文件的权限

chmod 700 /etc/vsftpd/vuser_login.db

配置ftp的登录认证模块,可以把vsftpd里面的内容清空,补充下面的2行

vi /etc/pam.d/vsftpd 
auth    sufficient /lib64/security/pam_userdb.so db=/etc/vsftpd/vuser_login
account sufficient /lib64/security/pam_userdb.so db=/etc/vsftpd/vuser_login

 

 

第六步:  配置vsftpd的主文件vsftpd.conf

 

注意:复制时要把//注释删除掉

anonymous_enable=NO
local_enable=YES
write_enable=YES
chroot_local_user=YES
allow_writeable_chroot=YES
local_umask=022

dirmessage_enable=YES

xferlog_enable=YES
xferlog_std_format=YES
xferlog_file=/var/log/vsftpd.log  //注意这个日志文件名

port_enable=NO
connect_from_port_20=NO

pasv_enable=YES
pasv_min_port=60001
pasv_max_port=60010

ftpd_banner=Welcome 欢迎您 Helo.
ls_recurse_enable=NO

listen=YES
guest_enable=YES
guest_username=virture_ftp_user //注意这个宿主用户的名称
virtual_use_local_privs=YES
pam_service_name=vsftpd

user_config_dir=/etc/vsftpd/v_user_conf  //注意这个FTP登录用户的控制文件夹名称

userlist_enable=YES
userlist_deny=YES
tcp_wrappers=YES

max_clients=1

listen_port=4444  //这里改了登录端口

use_localtime=YES


accept_timeout=60

data_connection_timeout=300

idle_session_timeout=300

 

第七步:编辑ftp用户的控制文件,以web1用户为例,其他复制,改一下目录即可

local_root=/web/web1

write_enable=YES

anon_world_readable_only=YES

anon_upload_enable=YES

anon_mkdir_write_enable=YES

anon_other_write_enable=YES

 

 

第八步:关闭防火墙和selinxu

systemctl stop firewalld
setenforce 0

 

测试  ftp://IP:4444

 

补充:  防火墙和selinux相关操作

由于重启以后,selinux和防火墙又启动了。所以希望在防火墙开启的情况下也可以使用

永久关闭selinux:

vi /etc/selinux/config

SELINUX=disabled

开启防火墙指定端口

firewall-cmd --zone=public --add-port=4444/tcp --permanent
firewall-cmd --zone=public --add-port=60001-60010/tcp --permanent

systemctl stop firewalld
systemctl start firewalld

 

posted @ 2019-02-12 18:18  趟坑的  阅读(303)  评论(0编辑  收藏  举报