Linux Centos7 搭建vsftp文件服务器过程详解

一、环境检查

1.1、检查是否安装vsftp服务

执行:vsftpd -v 或 rpm -q vsftpd。如图所示表示该服务器没有安装vsftp服务。
Linux Centos7 搭建vsftp文件服务器过程详解

1.2、查看操作系统版本

执行:uname -r,该操作系统版本为centos7
在这里插入图片描述

二、安装vsftp服务

执行:yum install vsftpd
在这里插入图片描述在这里插入图片描述
至于vsftp服务安装完毕,接下来是服务的相关配置。(如果没有在线安装,可以执行下载rpm安装包,执行 rpm -ivh vsftpd-3.0.2-22.el7.x86_64 安装即可,下载链接:http://www.rpmfind.net/linux/rpm2html/search.php?query=vsftpd)

三、创建一个系统用户提供予虚拟用户映射

执行:useradd vsftpd -d /home/vsftpd -s /bin/nologin,如果用户已经存在执行:(如已存在用户则usermod -s /sbin/nologin vsftpd)
在这里插入图片描述

四、vsftpd.conf配置

进入/etc/vsftpd 目录下,执行 vi vsftpd.conf
在这里插入图片描述
输入配置文件如下:

anonymous_enable=NO #关闭匿名登录

local_enable=YES #允许本地用户登录

write_enable=YES #是否允许登陆用户有写权限。属于全局设置,默认值为YES。

local_umask=022 #本地用户新增档案时的umask 值。默认值为077

anon_upload_enable=YES #(允许匿名ftp 用户上传文件)

anon_mkdir_write_enable=YES #(允许匿名用户 创建新的目录)

anon_other_write_enable=YES #(允许匿名用户改名和删除文件)

dirmessage_enable=YES #激活目录消息,向远程用户发送消息,进入某个目录

xferlog_enable=YES #激活上传/下载 日志记录

connect_from_port_20=YES #确保RORT传输连接来自端口 20

xferlog_file=/var/log/xferlog #日志文件路径

xferlog_std_format=YES #日志文件使用标准ftpd xferlog格式的日志文件 ,默认位置 /var/log/xferlog

ascii_upload_enable=YES #允许ASCII模式上传文件

ascii_download_enable=YES #允许ASCII模式下载文件

ftpd_banner=This FTP is for the use of authorized users only. Individuals using this computer system without authority, or in excess of their authority, are subject to having all of their activities on this system monitored and recorded by system personnel, if such monitoring reveals possible evidence of criminal activity, system personnel may provide the evidence of such monitoring to law enforcement officials.

chroot_list_enable=NO  #yes, chroot_list为能访问主目录外的文件的用户

chroot_list_file=/etc/vsftpd/chroot_list

listen=YES  #是否以独立运行的方式监听服务

pasv_enable=YES  # 默认允许被动模式连接(YES)

pam_service_name=vsftpd  #设置用于用户认证的PAM文件位置(/etc/pam.d/目录中对应的文件名)

userlist_enable=YES  #是否启用userl_ist用户列表文件;

tcp_wrappers=YES   #是否启用tcp_wrappers主机访问控制;

reverse_lookup_enable=NO  #禁止DNS解析,解决登录验证过程缓慢问题

guest_enable=YES   #是否启用虚拟用户

guest_username=vsftpd  #指定映射的系统用户名称

user_config_dir=/etc/vsftpd/vsftpd_user_conf   # 指定虚拟用户独立的配置文件目录

dual_log_enable=YES

vsftpd_log_file=/var/log/vsftpd.log

use_localtime=YES

listen_port=10021   #监听端口

allow_writeable_chroot=YES  # centos7添加

五、生成虚拟用户数据文件

我们配置登录用户,每个用户的访问以及执行权限各自独立,相互隔离。执行:vi /etc/vsftpd/vsftpd_login.txt
在这里插入图片描述在这里插入图片描述如图配置了两个账户:joachiming,zhuang。密码都是123456

然后执行:db_load -T -t hash -f /etc/vsftpd/vsftpd_login.txt /etc/vsftpd/vsftpd_login.db
在这里插入图片描述

六、配置PAM验证文件

执行:vi /etc/pam.d/vsftpd 注释掉原文件的内容,输入以下内容:

32位系统:

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

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

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

在这里插入图片描述在这里插入图片描述

七、创建用户配置目录

这个目录和vsftpd.conf中的参user_config_dir配置的路径一致,当前配置的
目录为user_config_dir=/etc/vsftpd/vsftpd_user_conf,所以在/etc/vsftpd路
径下创建vsftpd_user_conf目录。执行:mkdir vsftpd_user_conf

在这里插入图片描述
进入vsftpd_user_conf目录,创建与vsftpd_login.txt目录配置的用户名称一样的文件,当前配置的用户为joachiming,所以执行: vi joachiming
在这里插入图片描述
加入配置:

anon_world_readable_only=NO
anon_upload_enable=YES
anon_mkdir_write_enable=YES
anon_other_write_enable=YES
local_root=/home/vsftpd/joachiming
ftpd_banner=This FTP is for the use of authorized users only
anon_other_write_enable=yes

在这里插入图片描述然后保存即可。同样的方式新加zhuang用户目录,修改下数据目录即可。
在这里插入图片描述

八、创建数据目录并赋权(重要)

配置的joachiming用户数据目录为:/home/vsftpd/joachiming,zhuang用户数据目录为:/home/vsftpd/zhuang,,执行创建目录命令:mkdir -p /home/vsftpd/joachiming 以及 mkdir -p /home/vsftpd/zhuang 分别创建用户目录
在这里插入图片描述 这时候要修改目录的执行权限以及目录所有权,把目录的所有权赋予给虚拟vsftpd用户,执行:chown -R vsftpd:vsftpd /home/vsftpd/joachiming 以及 chown -R vsftpd:vsftpd /home/vsftpd/zhuang
在这里插入图片描述
接着分别在joachimng目录下创建joachimng_test目录,以及在zhuang目录下创建zhuang_test目录,同样的方式修改文件的所有者。
在这里插入图片描述

九、启动

systemctl start vsftpd.service #启动
systemctl restart vsftpd.service #重启
systemctl status vsftpd.service #查看运行状态

浏览器输入:ftp://ip:port ,然后输入用户名密码即可。
登录zhuang用户
在这里插入图片描述
在这里插入图片描述
切换到joachiming用户查看在这里插入图片描述

  • 1
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值