精华内容
下载资源
问答
  • Linux FTP 虚拟用户的使用配置

    千次阅读 2013-05-22 15:14:13
    Linux FTP 虚拟用户的使用配置   LinuxFTP服务支持3种用户: 1.匿名帐户 2.本地帐户 3.虚拟用户 为什么要使用虚拟用户: 匿名帐户可以很好的保证FTP服务器的安全性,但是,对匿名用户的权限管理不够...

    Linux FTP 虚拟用户的使用配置

     

    Linux的FTP服务支持3种用户:


    1.匿名帐户

    2.本地帐户

    3.虚拟用户


    为什么要使用虚拟用户:


    匿名帐户可以很好的保证FTP服务器的安全性,但是,对匿名用户的权限管理不够灵活.如果想对访问FTP的帐户给予更多的权限,就可以用本地帐户来 实现.但是,本地帐户默认情况下是可以登陆Linux系统的,这样对Linux系统来说是一个安全隐患.那么怎么能在灵活的赋予FTP用户权限的前提下, 保证FTP服务器乃至整个Linux系统的安全呢?使用虚拟用户就是一种解决办法.

    下面,我们就一起来学习,该怎样在Linux下配置FTP服务器的虚拟用户.

    开始配置前,让我们先大概了解下FTP虚拟用户的工作原理:

    虚拟用户,顾名思义,并不是一个合法的Linux系统帐户,但是他可以用来登陆该系统上运行的FTP服务器.

    当用户在连接上FTP服务器后,会被要求输入用户名和密码.FTP服务器在拿到这个用户名和密码后,会调用相应的PAM认证模块对,和系统中的 FTP认证文件进行相比较.如果该用户名和密码与FTP认证文件中的某条记录相符,就通过认证,然后该帐户就被映射成一个Linux下的本地帐户,然后根 据使用该本地帐户对FTP资源进行访问.否则则断开该连接请求.

    了解了FTP虚拟用户的工作原理后,我们就可以开始配置FTP虚拟用户了.


    整个过程可以分这几个步骤:


    1.准备一个虚拟用户的口令库文件.该文件中保存的用户名和密码是用户连接FTP服务器时,需要输入的用户名和密码.文件可以自己创建,位置无关紧要,文件格式为:奇数行为用户名,偶数行为密码.

    例如:touch login.txt          //创建一个名为login.txt的虚拟用户口令库文件

         vi login.txt             //编辑该口令库文件

         mike                     //虚拟用户mike

         123                      //虚拟用户mike的密码

         john                     //虚拟用户john

         321                      //虚拟用户john的密码

    保存退出.


    2.用刚才建立的虚拟用户口令库文件生成FTP服务器的认证文件.该认证文件是一个被加密后的密文.PAM在调用相应的认证模块后,会对从FTP服务器发来的用户名和密码进行加密,然后在跟该文件进行对比,发现相符条目后,登陆用户才会被允许登陆.

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

                   //在运行该命令前,别忘记安装db4-utils软件包,该包包含有db_load命令等.关于该命令的使用不在本文讨论范围内.其中-f参数后跟的为刚才创建的虚拟用户口令库文件.最后的路径为生成的FTP认证文件的存放位置.

    为了进一步保证安全,可以将该FTP认证文件的权限设置为600.


    3.建立虚拟用户所需要的PAM配置文件.由于FTP服务器在接受到用户的用户名和口令后会调用PAM认证,所以我们还要创建虚拟用户的PAM配置文件.

    我们将该文件保存在/etc/pam.d目录下,文件名暂时取为:vsftpd.这里要注意一点就是,该文件名要与FTP服务主配置文件(/etc/vsftpd/vsftpd.conf)中的pam_service_name=vsftpd选项的选项值相同.

    创建好该文件后,将下面的内容加入到该文件中:

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

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

    改好后,保存退出.注意3个红色文件的文件名.该3个文件为1个文件,只不过在使用中写法不同.


    4.由于用户在通过PAM的认证后要被映射成一个本地用户,所以我们还要建立一个本地用户供虚拟用户使用.

    我们只需要对该本地用户赋予FTP主目录的适当访问权限就行.即使FTP服务器遭到攻击,这个本地用户也没有访问其他目录的权限,相对比较安全一些.

    useradd -d /home/ftpsite virtual        //用户名为virtual,主目录为FTP的根

    chmod 700 /home/ftpsite                 //将其权限设置为700,可以根据实际情形进行修改

    5.在FTP的主配置文件中,启用FTP虚拟用户.增加如下选项即可:

    guest_enable=YES

    guest_username=virtual             //将虚拟用户映射成本地的哪个用户.这里用的是virtual,刚才建

                                         立的那个用户.

    pam_service_name=/etc/vsftpd/vsftpd    //切记要修改该项的值


    6.配置到这里就完成了,别忘记重启FTP服务进行测试.

     

    7.为不同的虚拟用户分配权限

    默认情况下,虚拟用户拥有相同的权限,就是virtual的权限,我们可以根据实际需求对不同的虚拟用户分配权限.

    首先在FTP的主配置文件中加一个选项:

    user_config_dir=/etc/vsftpd_user_conf             //文件名和路径都可以自己定义

    然后创建该目录.

    mkdir /etc/vsftpd_user_conf

    下面就可以在该目录下编辑不同虚拟用户的权限配置文件了,比如要对mike编辑其权限.

    touch mike                  //建立mike的权限文件.文件名要与虚拟用户名相同

    可以根据实际需求为该文件添加下面的选项和值:

    anon_world_readable_only=NO               //表示用户可以浏览FTP目录和下载文件

    anon_upload_enable=YES                    //表示用户可以上传文件

    anon_mkdir_write_enable=YES               //表示用户有创建和删除目录的权限

    anon_other_write_enable=YES               //表示用户具有文件改名和删除文件的权限

     

    到这里,虚拟用户就算完成配置完成了

    展开全文
  • 用pam模块创建虚拟用户,登录成功,却无法获取目录信息等 下面是错误信息: [root@wincenter /mnt/data_bak/ftpuser/tmp_user/logout_xiaohu]# ftp 10.123.209.54 Connected to 10.123.209.54 (10.123.209.54). 220 ...

    用pam模块创建虚拟用户,登录成功,却无法获取目录信息等
    下面是错误信息:

    [root@wincenter /mnt/data_bak/ftpuser/tmp_user/logout_xiaohu]# ftp 10.123.209.54
    Connected to 10.123.209.54 (10.123.209.54).
    220 (vsFTPd 3.0.2)
    Name (10.123.209.54:root): 5g_ftp
    331 Please specify the password.
    Password:
    230 Login successful.
    Remote system type is UNIX.
    Using binary mode to transfer files.
    ftp> ls
    227 Entering Passive Mode (10,123,209,54,222,169).
    150 Here comes the directory listing.
    226 Transfer done (but failed to open directory).

    ftp> cd aa
    550 Failed to change directory.

    这是我给这个虚拟用户的配置文件
    在这里插入图片描述
    可以看到一切都是正常的,权限都么有问题。
    去排查防火墙等因素也是发现没有问题的。ORZ~

    如果配置文件权限、防火墙等都没有问题,那么问题只有在家目录上了

    local_root=/Users/5G_ftp/csv
    

    在这里插入图片描述
    可以看到该目录是属于root组的,修改为ftp就好了,我们这个是虚拟用户!
    chown -Rf ftp /Users/5G_ftp/
    在这里插入图片描述
    再去看看ftp的情况
    在这里插入图片描述
    一切正常!

    展开全文
  • Linux FTP服务器虚拟用户登录

    千次阅读 2019-04-16 10:22:44
    LinuxFTP服务器配置(三、虚拟用户登录) 在这篇文章中,我将通过vsftp对FTP服务器进行配置。并且以虚拟用户形式,实现VM虚拟机下的Linux系统和实际的Windows系统进行交互。(我的Liunx系统是CentOS6系统) FTP...

    Linux:FTP服务器虚拟用户登录

    在这篇文章中,我将通过vsftp对FTP服务器进行配置。并且以虚拟用户形式,实现VM虚拟机下的Linux系统和实际的Windows系统进行交互。(我的Liunx系统是CentOS6系统)

    FTP服务的具体工作过程如下:
    ①当FTP客户端发出请求时,系统将动态分配一个端口(如1032)。
    ②若FTP服务器在端口21侦听到该请求,则在FTP客户端的端口1032和FTP服务器的端口21之间建立起一个FTP会话连接。
    ③当需要传输数据时,FTP客户端再动态打开一个连接到FTP服务器的端口20的第2个端口(如1033),这样就可以在这两个端口之间进行数据传输。当数据传输完毕后,这两个端口会自动关闭。
    ④ 当FTP客户端断开与FTP服务器的连接时,客户端上动态分配的端口将自动释放掉。

    完成以下任务,(其它两种形式请查看我的其它两篇文章):

    1. 配置三种不同的用户形式:匿名用户形式、本地用户形式、虚拟用户形式。
    2. 控制三种不同用户对文件的下载权限。
    3. 控制三种不同用户对文件夹的创建、删除和重命名权限。
    4. 控制三种不同用户的限制速度。
    5. 控制三种不同用户的上传权限

    使用虚拟用户进行登录:

    1.vsftpd的配置文件在 /etc/vsftpd 目录下,修改 vsftp.conf 文件:(建议复制一个备份文件在同一目录下,以防直接修改错误,而无法恢复。)

    # vi /etc/vsftpd/vsftpd.conf
    

    2.查看以下授权是否开启:
    在这里插入图片描述
    3.在 /etc/vsftpd 目录下创建vuser文件,加入信息(用户名和密码,例如:vsftp //回车 123),生成虚拟用户:
    在这里插入图片描述
    4.生成虚拟用户的数据库文件,如果 cat 此文件,发现会是乱码,乱码是为保护信息:
    在这里插入图片描述
    在这里插入图片描述
    5.设置权限:
    在这里插入图片描述
    6.编辑 /etc/pam.d/vsftpd 文件:
    在这里插入图片描述
    将文件内容全部注释,添加两行信息:

    auth	      required		 pam_userdb.so	    db=/etc/vsftpd/vuser
    account       required       pam_userdb.so	    db=/etc/vsftpd/vuser
    

    在这里插入图片描述
    7.删除虚拟用户文件:
    在这里插入图片描述
    8.创建虚拟用户:
    在这里插入图片描述
    9.重启FTP服务器:
    在这里插入图片描述
    10.在Windows的系统终端工具操作,如果发现无法连接,需要设置Selinux:
    在这里插入图片描述
    在这里插入图片描述
    连接成功,其他操作可以参考我的其它两篇文章,希望能够帮助到大家。
    Linux:FTP服务器匿名用户登录
    Linux:FTP服务器本地用户登录

    展开全文
  • Linux ftp服务器虚拟用户的建立

    千次阅读 2015-12-03 18:52:28
    vsftp下的虚拟用户的特点是只能访问服务器为其提供的FTP服务,而不能访问系统的其它资源。所以,如果想让用户对FTP服务器站内具有写权限,但又不允许访问系统其它资源,可以使用虚拟用户来提高系统的安全性。 首先第...

    vsftp下的虚拟用户的特点是只能访问服务器为其提供的FTP服务,而不能访问系统的其它资源。所以,如果想让用户对FTP服务器站内具有写权限,但又不允许访问系统其它资源,可以使用虚拟用户来提高系统的安全性。

    首先第一步:创建虚拟用户 并且生成口令文件(前提 一定要装上 db.util服务)

    touch /etc/vsftp/virtual.txt
    vim /etc/vsftpd/virtual.txt
    


    生成VSFTPD的认证文件(并且修改认证文件的权限)

    db_load -T -t hash -f virtual.txt /etc/vsftpd/virtual.db
    chmod 600 /etc/vsftpd/virtual.db
    第二步:修改PAM的配置文件(/etc/pam.d/virtual.vu)

    cd /etc/pam.d
    touch vsftpd.vu
    chmod 777 vsftp.vu

    第三步:建立虚拟用户并且设置访问目录及各虚拟用户的权限

    <span style="color:#000000;">useradd -d /var/virtual -s /sbin/nologin virtual
    </span>

    第四步:修改vsftpd.conf的配置文件


    <span style="color:#000000;">vim /etc/vsftp/vsftp.conf
    </span>

    在文件的最后加入上述配置信息其中:

    pam_service_name=vsftp.vu 指定pam文件

    如果想实现不同的虚拟用户有不同的权限可以加上 user_config_dir=/etc/vsftpd/vsftpd_user_conf

    <span style="color:#000000;">mkdir /etc/vsftpd/vsftp_user_conf
    cd /etc/vsftpd/vsftp_user_conf
    touch virtual1
    vim virtual1</span>
    在vsftpd_user_conf目录下建立与虚拟用户同名的文件 将不同的权限写入相应的用户名文件中就可以达到不同的虚拟用户有不同的权限

    vim virtual1
    anon_world_readable_only=NO(可以浏览目录下载文件)
    anon_upload_enable=YES(可以上传文件)
    anon_mkdir_write_enable=YES(可以创建 删除目录)
    anon_other_write_enable=YES(可以更名删除文件)
    
    
    最后要 service vsftpd restart
    



    展开全文
  • linux CentOS FTP /redhat ftp linux ftp 安装vsftp 虚拟用户设置全解 让Vsftp支持虚拟用户 环境:CentOS 5.5 操作系统 一.安装: 1.安装Vsftpd服务相关部件: [root@KcentOS5 ~]# yum install vsftpd* ...
  • Linux—— vsftp,ftp配置,ftp虚拟用户

    千次阅读 2019-01-25 15:28:11
    一.ftp:简单文件传输协议 ftp 是为系统提供了通过网络与远程服务器进行传输的简单方法,只要在服务端配置好,在客户端就可以下载相应的文件。 服务端:安装 vsftpd 客户端:安装 lftp ...
  • Linux FTP服务器的配置(虚拟用户

    千次阅读 2020-01-19 20:41:02
    FTP有两种传输模式: 命令端口21 数据端口20 控制连接(被动模式) 命令连接和数据连接都由客户端发起 命令连接:客户端大于1024端口 -> 服务器 21端口 数据连接:客户端大于1024端口 -> 服务器大于1024...
  • 配置FTP虚拟用户访问

    千次阅读 2014-12-03 15:37:24
    FTP虚拟用户并不是操作系统的用户账户,不能登入系统,只能访问FTP服务器,对操作系统的影响更小。虚拟用户主要用来访问提供给非信任用户,但又不适合公开的内容。  PAM(Pluggable Authentication Modu
  • ftp虚拟用户

    2018-08-31 16:06:48
    实验 基于文件验证的vsftpd 虚拟用户 1 vim /etc/vsftpd/vusers.txt 奇数行为虚拟用户 偶数行为密码 cd /etc/vsftpd/ db_load -T -t hash -f vusers.txt vusers.db 编码文件为hash 格式 chmod 600 vusers...
  • FTP 虚拟用户登录

    千次阅读 2018-08-15 20:32:23
    它的全称是Very Secure FTPFTP三种认证模式:匿名用户、本地用户、虚拟用户,在建立vsftpd用户时,我们一般是在linux下建立普通用户useradd的方式来访问ftp,但有时我们只想提供ftp服务,而避免用户用ftp的帐号去...
  • Linux下搭建FTP示例(虚拟用户)

    千次阅读 2019-02-27 11:45:23
    搭建FTP示例(虚拟用户) 第一步:安装FTP服务端 第二步:安装PAM 第三步:创建虚拟用户,并配置相关PAM 第四步:编写配置文件 第五步:开放FTP对应的端口 第六步:修改selinux 第七步:启动(或重启)FTP服务 ...
  • Linux FTP服务器匿名用户登录

    万次阅读 2019-04-16 09:57:16
    并且以三种用户形式,实现VM虚拟机下的Linux系统和实际的Windows系统进行交互。(我的Liunx系统是CentOS6系统) FTP服务的具体工作过程如下: ①当FTP客户端发出请求时,系统将动态分配一个端口(如1032)。 ②若...
  • 安装ftp服务:参考上个博文...创建虚拟用户映射的本地用户及家目录  [root@iZ28ldgf0u6Z ~]#useradd -d /home/ftp yunwei2 创建虚拟用户文件并生成db文件  [root@iZ28
  • CentOS Linux release 7.5.1804 (Core) vsftpd: version 3.0.2     第一步:安装vsftpd服务器 yum install vsftpd   第二步:修改配置文件/etc/vsftpd/vsftpd.conf 。我的配置文件如下 anonymous_...
  • LinuxFTP虚拟账号环境部署总结

    千次阅读 2017-05-07 04:11:08
    vsftp的用户有三种类型:匿名用户、系统用户、虚拟用户。 ... 2)本地用户登录:使用系统用户登录,在/etc/passwd中。...FTP虚拟用户是FTP服务器的专有用户,使用虚拟用户账号可以提供集中管理的FTP根目录,方便
  • 配置 FTP 虚拟用户

    2015-01-11 10:05:47
    原理: 虚拟用户,顾名思义,并不是一个合法的Linux系统帐户,但是他可以用来登陆该系统上运行的FTP服务器.当用户在连接上FTP服务器后,会被要求输入用户名和密码.FTP服务器在拿到这个用户名和密码后,会调用相应的PAM...
  • ftp虚拟用户文件目录配置问题 无法用ftp localhost登录虚拟用户:在本地用为mary的时候,虚拟用户也为mary;此时无法登录mary虚拟用户,主要的问题就是虚拟用户的mary目录和本地用户mary目录发生了冲突 在创建虚拟...
  • Linux FTP服务器本地用户登录

    千次阅读 2019-04-16 10:11:44
    并且以本地用户形式,实现VM虚拟机下的Linux系统和实际的Windows系统进行交互。(我的Liunx系统是CentOS6系统) FTP服务的具体工作过程如下: ①当FTP客户端发出请求时,系统将动态分配一个端口(如1032)。 ②若...
  • linux ftp限定用户目录

    千次阅读 2008-09-24 11:13:00
    useradd myuser -g mygroup -d /webroot/mydir -M如果group不存在,则需要使用groupadd mygroup来添加用户组添加用户myuser在mygroup群组下,并指定其目录为 /webroot/mydirchown -R mygroup.myuser /webroot/mydir...
  • ##############ftp服务文件传输协议###两台主机需在同一网段在服务端主机上: yum install vsftpd.x86_64 -y systemctl start vsftpd systemctl enable vsftpd firewall-cmd --list-all ##列出火墙状态 ...
  • Linux虚拟用户

    千次阅读 2018-11-05 13:21:44
    这里就用到了虚拟用户。 一.虚拟用户: 服务端: 1.getenforce 设置为disable,配置文件为/etc/sysconfig/selinux,修改完之后必须重启,因为它是内核级的,必须重启才能重新加载。 重启 已经设置为了...
  • 1.在实际环境中,为了安全考虑,我们一般是建议将匿名访问的功能关闭,使用系统用户或者虚拟用户进行访问: 2.使用系统用户默认访问的是自己的家目录,我们也可以添加设置项来指定自己想要让用户访问的FTP主目录...
  • Linux ftp 限制目录切换

    千次阅读 2017-05-09 23:20:01
    文章来源:Linux ftp访问控制配置,包括访问ftp权限和访问ftp目录权限 在Linux 上建立用户为website1  ...home目录是/data/home/...在linux系统上建立ftp用户,并限制其通过ftp访问时,只能访问用户主目录;其主目录
  • 安装ftp,配置虚拟用户和设置权限这块,网上很多,不再写,主要写配置共享目录。 我们都知道local_root就是每个虚拟用户的家目录,这样每个用户登录到ftp后后面的目录就是工作目录,如果我们想实现多个用户共享一.....
  • 其中FTP服务器用来存储文件,用户可以使用FTP客户端通过FTP协议访问位于FTP服务器上的资源。 软件安装包: vsftpd 默认发布目录: /var/ftp 协议接口: 21/tcp 服务配置文件: /etc/vsftpd/vsftpd.conf 报错id解析:...
  • FTP配置虚拟用户

    千次阅读 2018-10-09 15:49:40
    建立vsftpd服务的宿主用户(root) # useradd vir -s /sbin/nologin [-d /ftp/dir] 创建日志文件(root) # touch /var/log/vsftpd.log # chown vir:vir /var/log/vsftpd.log 修改vsftpd配置文件(root) # ...
  • Linux FTP服务器的搭建

    2017-05-17 13:51:51
    Linux FTP服务器的搭建参考Linux中搭建一个ftp服务器详解LinuxFTP的配置文件的参数详解CentOS FTP基于虚拟用户的配置ubuntu 下新建的用户无法进行FTP连接:原因:该用户的参数不完整,在useradd创建用户时需要指定...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 49,401
精华内容 19,760
关键字:

linuxftp虚拟用户

linux 订阅