centos 7搭建基于虚拟用户的FTP服务

该博文主要记录了centos 7中使用vsftpd服务的虚拟用户配置过程,即将一个真实的系统用户映射为多个虚拟用户。

部署vsftpd虚拟用户的思路:

过程如下:

  • 建立虚拟FTP用户的账号数据库文件。
  • 创建FTP根目录及虚拟用户映射的系统用户。
  • 建立支持虚拟用户的PAM认证文件。
  • 在vsftpd.conf文件中添加支持配置。
  • 为个别虚拟用户建立独立的配置文件。
  • 重新加载vsftpd配置。
  • 使用虚拟FTP账户访问进而测试是否成功。

该博文是最初写博文时,写过的一篇博文,当初不懂排版,截图比较多,导致有人在参考这个文档时,不能够直接复制命令,所以就又抽时间写了一遍,以下博文关于一些命令的解释不够详细,毕竟是写的第二次了,所以,希望大家谅解以下,若想了解配置的详细解释,以及更多的权限配置项,可以参考我之前写的类似的博文:centos 7搭建基于虚拟用户的FTP服务 ,这篇旧的博文链接关于配置的解释比较详细,但是很多命令都是截图,这就是我写现在这篇博文的初衷。不说废话了,开始部署吧!!!

开始部署:

[[email protected] /]# yum  clean all       #清除yum缓存
[[email protected] /]# yum -y install vsftpd*           #安装vsftpd
#配置本地yum仓库或指向互联网都可。
[[email protected] /]# vim /etc/vsftpd/vusers.list      #创建文本格式的用户名/密码列表
#下面写入虚拟账号,其中,奇数行为用户名,偶数行为上一行中用户所对应的密码。
mike
123
john
456
#写完保存退出即可,上面添加了两个虚拟用户,mike的密码是123,John的密码是456。
[[email protected] /]# cd /etc/vsftpd/
[[email protected] vsftpd]# db_load -T -t hash -f vusers.list vusers.db  #创建Berkeley DB格式的数据库文件
[[email protected] vsftpd]# chmod 600 /etc/vsftpd/vusers.*     #为保证数据安全,所以更改下权限
[[email protected] vsftpd]# useradd -d /var/ftproot -s /sbin/nologin test          #添加虚拟用户的映射账号
[[email protected] vsftpd]# chmod 777 /var/ftproot/
[[email protected] vsftpd]# vim /etc/pam.d/vsftpd.vu          为虚拟用户建立PAM认证文件
auth    required        pam_userdb.so db=/etc/vsftpd/vusers
account required        pam_userdb.so db=/etc/vsftpd/vusers
#写完上面两行,保存退出即可
[[email protected] vsftpd]# mkdir /etc/vsftpd/vusers_dir        #为不同的虚拟用户建立独立的配置文件
[[email protected] vsftpd]# cd /etc/vsftpd/vusers_dir/
[[email protected] vusers_dir]# vim john    #写入john用户的权限
anon_upload_enable=YES
anon_mkdir_write_enable=YES
#写完上面两行,保存退出即可
[[email protected] vusers_dir]# cp john mike           #给用户mike复制一份
[[email protected] vusers_dir]# vim /etc/vsftpd/vsftpd.conf     #编辑主配置文件为如下
#我为了使主配置文件简洁一些,注释类的配置我都删除了,以下为我这里主配置文件的所有内容
anonymous_enable=NO
local_enable=YES
write_enable=YES
local_umask=022
dirmessage_enable=YES
xferlog_enable=YES
connect_from_port_20=YES
xferlog_std_format=YES
listen=NO
listen_ipv6=YES
pam_service_name=vsftpd.vu
userlist_enable=YES
tcp_wrappers=YES
guest_username=test
guest_enable=YES
allow_writeable_chroot=YES
anon_world_readable_only=NO
anon_other_write_enable=YES
user_config_dir=/etc/vsftpd/vusers_dir
#将主配置文件更改为如上,即可保存退出。
[[email protected] ~]# systemctl start vsftpd                    #启动vsftpd服务,使用客户端访问验证即可

想要了解更多的权限配置,请移步:centos 7搭建基于虚拟用户的FTP服务

注意:默认的所有虚拟用户登录上的位置是创建test用户时指定的家目录,在上面的配置中,也就是/var/ftproot是所有虚拟用户登录后访问的默认位置

原文地址:https://blog.51cto.com/14154700/2424006

时间: 2024-10-02 23:01:22

centos 7搭建基于虚拟用户的FTP服务的相关文章

cent OS7搭建基于虚拟用户的FTP服务

基本过程如下: 1.创建文本格式的用户名/密码列表文本中奇数行为用户名,偶数行为上一行中用户所对应的密码.如:执行以下操作添加两个用户mike.john,密码分别为123,456 新建一个文本: 输入用户名和密码: 2.创建Berkeley DB格式的数据库文件 有了文本格式的用户名/密码列表文件后,以此文件作为数据源通过db_load工具创建Berkeley DB格式的数据库文件: 在db_load命令中,-f 选项用于指定数据源文件,-T 选项允许非Berkeley DB的应用程序使用从文本

CentOS7 FTP服务搭建(虚拟用户访问FTP服务)

概述 最近在搞Oracle在Linux系统下集群,针对Linux系统,笔人也是一片空白.Liunx外部文件的传输,避免不了使用FTP服务,所以现在就整理下,CentOS7环境下,FTP服务的搭建.FTP服务器需要安装vsftp服务端软件.我们知道,在建立vsftpd用户时,我们一般是在linux下建立用户useradd的方式来访问ftp,但有时我们只想提供ftp服务,而避免用户用ftp的帐号去登录linux,采用一般的方式只能是限制该用户的访问权限,但还是避免不了用户登录进linux系统,所以比

centos 7虚拟用户访问FTP

在vsftpd服务中,虚拟用户被默认作为匿名用户进行处理以降低权限,因此对应的配置项通常以anon_开头.基本搭建过程如下:cent OS7搭建基于虚拟用户的FTP服务 1.创建文本格式的用户名/密码列表文本中奇数行为用户名,偶数行为上一行中用户所对应的密码.如:执行以下操作添加两个用户mike.john,密码分别为123,456 新建一个文本:cent OS7搭建基于虚拟用户的FTP服务 输入用户名和密码:cent OS7搭建基于虚拟用户的FTP服务 2.创建Berkeley DB格式的数据库

搭建FTP/NFS服务(vsftpd基于虚拟用户的访问形式)

题目:搭建一套文件vsftp文件共享服务,共享目录为/ftproot,要求:(描述完整的过程) 1)基于虚拟用户的访问形式: 2)匿名不允许上传: 3)禁锢所有的用户于其家目录当中: 4)限制最大并发连接数为200: 5)匿名用户的最大传输速率512KB/s: 6)虚拟用户的账号存储在mysql数据库当中. 7)数据库通过NFS进行共享. 搭建环境: FTP/NFS服务器:192.168.10.99 (CentOS 7) 搭建FTP/NFS详细过程: 1.配置vsftpd基于pam_mysql的

Linux Centos 通过虚拟用户访问FTP的配置

Linux Centos 通过虚拟用户访问FTP的配置 实验需求: 让下面4个虚拟用户使用系统用户ftpvu的权限来连接到Linux FTP服务器,并确保都锁定在 自己的虚拟用户目录,不能切换到其他目录. ftp1-3的带宽速率限制在500KB,davidge用户不限制带宽. 系统环境: [root@cent7-184 ~]# uname -r 3.10.0-229.el7.x86_64 [root@cent7-184 ~]# cat /etc/redhat-release CentOS Lin

PXE安装Centos65 postfix+exmail+mysql实现基于 虚拟用户的web邮件系统

PXE安装Centos postfix+exmail+mysql实现基于 虚拟用户的web邮件系统 在实现centos+postfix的web内网邮件之前,参考了许多网上.书本知识,经过两次大的改动,目前该系统已经为公司正常服务工作五年多. 第一部分 win7+tftpd32+PXE安装CentOS6.5 32bit 第一步 安装CentOS6.5 32bit操作系统 基于win7+tftpd32+PXE来安装,但我这里只用虚拟机VMware Workstation9.0.1 build-894

CentOS7基于虚拟用户的vsfptd

一.安装及配置文件介绍 1.使用yum的方式即可实现.  yum -y install vsftpd 2.用户认证配置文件 /etc/pam.d/vsftpd 3.主配置文件 /etc/vsftpd/vsftpd.conf 4.共享目录的位置:/var/ftp/ 二.vsfptd常用配置 1.匿名用户的常用配置  annoymous_enable=YES  #是否启用匿名用户 anno_upload_enable=YES #是否允许匿名用户上传权限 anno_mkdir_write_enable

samba基于虚拟用户的生产环境配置

前段时间,加入了学校的一个实验室.后来学长让我们小组在5天之内搭建出一个基于虚拟用户的samba共享服务.要求是实验室三个小组的成员能够访问所有共享资料,但不能上传和删除.每个组的组长可以上传和删除本组资料.另外需要使用虚拟用户实现.一开始,大家都有点懵,然后就在网上找资料,最后基本确定了一个实现方案. 刚开始给了一台服务器装机,乍一看,这服务器有年头了,大箱子似的,是浪潮的一款比较老的机器,04年进的学校,古董级别的,哈哈.于是,我们小组的人开始装机了,但是中间遇到了许多问题.仔细一研究,这东

CentOS 下vsftp 安装--虚拟用户

FTP文件传输协议(File Transfer Protocol),即能够让用户在互联网中上传.下载文件的文件协议,而FTP服务器就是支持FTP传输协议的主机,要想完成文件传输则需要FTP服务端和FTP客户端的配合才行. FTP协议占用两个端口号: 21端口:命令控制,用于接收客户端执行的FTP命令. 20端口:数据传输,用于上传.下载文件数据. FTP数据传输的类型: 主动模式:FTP服务端主动向FTP客户端发起连接请求. 被动模式:FTP服务端等待FTP客户端的连接请求. 下面介绍用虚拟用户