书接上回:

三、Vsftpd系统用户配置

1、存放私密文件在ftp服务端,并保证文件或目录专属于拥有者

linux系统中创建系统用户cm1,cm2,分别设密码:123456

  useradd cm1

  useradd cm2

  passwd cm1

  passwd cm2

2、修改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

  userlist_enable=YES

  tcp_wrappers=YES

3、重启vsftpd服务

4、通过windows资源客户端,使用cm1,cm2登录ftp,上传下载删除,cm1,cm2系统上传文件在 home 目录下,/home/cm1 、/home/cm2

 

 

四、Vsftpd 虚拟用户配置

vsftpd基于系统用户访问FTP服务器,系统用户越多越不利于管理,且不利于系统安全,为了更安全使用ftp,可以使用vsftp虚拟用户方式

 

Vsftp虚拟用户配置如下:

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

  yum install pam* libdb-utils libdb * --skip -broken -y

2、创建虚拟用户临时文件 /etc/vsftpd/ftpusers.txt ,新建虚拟用户和密码:cm01、cm02      123456,123456

  cd /etc/vsftpd

  touch ftpusers.txt

  格式为:

  cm01

  123456

  cm02

  123456

3、生成 vsftpd 虚拟用户数据库认证文件,设置权限700

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

  chmod 700 /etc/vsftpd/vsftpd_login.db

4、配置 PAM 认证文件, /etc/pam.d/vsftpd 行首加入两行的代码:

  auth sufficient /lib64/security/pam_userdb.so db=/etc/vsftpd/vsftpd_login

  account sufficient /lib64/security/pam_userdb.so db=/etc/vsftpd/vsftpd_login

5、vsftp虚拟用户需要映射一个系统用户,该系统用户不需要设置密码,也不需要登录,主要用于虚拟用户映射使用

  useradd -s /sbin/nologin ftpuser

6、修改 vsftpd.conf 配置文件

  anonymous_enable=YES

  local_enable=YES

  write_enable=YES

  local_umask=022

  dirmessage_enable=YES

  xferlog_enable=YES

  connect_form_port_20=YES

  xferlog_std_format=YES

  listen=NO

  listen_ipv6=YES

  userlist_enable=YES

  tcp_wrappers=YES

#指定目录

chroot_local_user=YES  
chroot_list_enable=NO  /添加后就只能访问自己的家目录
chroot_list_file=/etc/vsftpd/chroot_list
#加入
allow_writeable_chroot=YES

#虚拟用户配置

  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、分别为虚拟用户cm01,cm02创建配置文件

  vi /etv/vsftpd/vsftpd_user_conf/cm01

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

    write_enable=YES #允许登录用户有写的 权限

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

    anon_upload_enable=YES # 允许匿名用户上传文件的权限,只有在write_enable=YES时,该参数才能生效

    anon_mkdir_write_enable=YES #允许匿名用户创建目录,只有write_enable=YES时,该参数才能生效

    anon_other_write_enbale=YES #允许匿名用户权限,例如删除,重命名等

  

cm02配置文件同上

9、mkdir -p /home/ftpuser/{cm01,cm02} ;chown -R ftpuser:ftpuser /home/ftpuser

重启vsftp服务:systemctl restart vsftpd.service

 

 

 

 

Vsftp配置结束

posted on 2019-12-30 14:36  草根920  阅读(119)  评论(0编辑  收藏  举报