欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  科技

Linux文件服务器实战(虚拟用户)

程序员文章站 2022-04-01 13:29:54
vsftpd基于系统用户访问ftp服务器,系统用户越多越不利于管理,不利于系统安全,这样就以vsftp虚拟防护的方式来解决。 虚拟用户没有实际的真实系统用户,,而是通过映射到其中一个真实用户以及设置相应权限来访问验证,虚拟用户不能登陆系统。 1.安装虚拟用户需要用到的软件以及认证模块 [root@w ......

vsftpd基于系统用户访问ftp服务器,系统用户越多越不利于管理,不利于系统安全,这样就以vsftp虚拟防护的方式来解决。

虚拟用户没有实际的真实系统用户,,而是通过映射到其中一个真实用户以及设置相应权限来访问验证,虚拟用户不能登陆系统。

1.安装虚拟用户需要用到的软件以及认证模块

[root@www ~]# yum install pam* libd-utils libdb* --skip -broken -y

2.创建虚拟用户临时文件

/etc/vsftpd/ftpusers.txt

xj3

123456

xj4

123456

3.生成虚拟用户数据库认证文件,权限为700

[root@www vsftpd]# db_load -T -t hash -f /etc/vsftpd/ftpusers.txt /etc/vsftpd/vsftpd_login.db

[root@www vsftpd]# chmod 700 /etc/vsftpd/vsftpd_login.db

4.配置pam认证文件/etc/pam.d/vsftpd加入下面两行代码:

auth_required pam_userdb .so db=/etc/vsftpd/vsftpd_login

account_required pam_userdb.so db=/etc/vsftpd/vsftpd_login

5.vsftp虚拟用户需要映射到一个系统用户,该系统用户不需要密码,也不需要登陆,主要用于虚拟用户映射使用

useradd -s /sbin/nologin ftpuser

6.vsftpd配置

#globle config vsftpd 2018

  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=YES
  listen_ipv6=NO
  userlist_enable=YES
  tcp_wrappers=YES

#  config virtual user ftp

  pam_service_name=vsftpd 虚拟用户企业pam认证

 

  guest_enable=YES         启用虚拟用户

  guest_username=ftpuser 映射虚拟用户至系统用户ftpuser

  user_config_dir=/etc/vsftpd/vsftpd_user_conf虚拟用户配置文件所在的目录

  virtual_use_local_privs=YES 虚拟用户使用与本地用户相同的权限

 7至此,所有虚拟用户共同使用/home/ftpuser主目录实现上传下载,可以在/etc/vsftpd/vsftpd_user_conf目录创建虚拟用户各自的配置文件,创建虚拟用户配置文件主目如下:

mkdir -p /etc/vsftpd/vsftpd_user_conf/

8,为虚拟用户创建配置文件,同时创建私有的虚拟目录

vim /etc/vsftpd/vsftpd_user_conf/xj3

local_root=/home/ftpuser/xj3   虚拟用户配置文件路径

write_enable=YES 允许登陆用户有写权限

anon_world_readable_onle=YES允许匿名用户下载,然后读取文件

anon_upload_enable=YES允许匿名用户上传文件权限,只有在write_enable=yes是才生效

anon_mkdir_write_enable=YES允许匿名用户创建目录,只有在write_enable=yes是才生效

anon_other_write_enable=YES允许匿名用户其它权限,如删除,重命名

vim /etc/vsftpd/vsftpd_user_conf/xj3

local_root=/home/ftpuser/xj3

write_enable=YES

anon_world_readable_onle=YES

anon_upload_enable=YES

anon_mkdir_write_enable=YES

anon_other_write_enable=YES

 

9创建虚拟用户各自虚拟目录

mkdir -p /home/ftpuser/{xj3,xj4};

chown -R ftpuser:ftpuser /home/ftpuser