CENTOS安装FTP服务器

依据网上的一些相关配置,由于公司需要实现虚拟用户,故采用相对较为复杂的方法。

1.安装VSFTPD

   yum install vsftpd -y

2.添加SELINUX,和开放防火墙端口

   getsebool -a | grep ftp

   setsebool -P ftp_full_access on

   由于准备采用被动模式,故开放端口6069 和59980-59991

  firewall-cmd --zone=public --add-port=6069/tcp --permanent
  firewall-cmd --zone=public --add-port=59980-59991/tcp --permanent

  3.修改配置文件

   cd /etc/vsftpd

   vi vsftpd.conf    

 listen_port=6069                         监听端口
 chroot_local_user=YES               将用户限制在为其配置的主目录
 chroot_list_enable=YES
 chroot_list_file=/etc/vsftpd/chroot_list
 ascii_upload_enable=YES        允许ascii文件上传和下载
 ascii_download_enable=YES
 guest_enable=YES            设置启用虚拟用户功能
 guest_username=ftpuser    制定宿主用户名
 user_config_dir=/etc/vsftpd/vuser_conf    制定虚拟用户配置文件放置文件夹
 allow_writeable_chroot=YES                 允许写
 anon_umask=022         虚拟用户UMASK值
 pasv_enable=YES          被动端口启用
 pasv_min_port=59980     连接端口范围
 pasv_max_port=59991   

 anonymous_enable=NO  匿名就无法登录

注(以下为修改默认目录,非必须

  1. local_root=/tmp/test
  2.  
    chroot_local_user=YES
  3.  
    anon_root=/tmp/test

4.创建宿主用户

   cd /home

   mkdir vsftpd

   useradd -g root -M -d /home/vsftpd -s /sbin/nologin ftpuser  (不建主目录,组ROOT,家目录,不许登录)

5.设置密码

  passwd ftpuser

6. 修改文件夹权限

    chown -R ftpuser:root /home/vsftpd  递归

7.创建虚拟用户文件

    cd /etc/vsftpd

    touch vuser_passwd

    vi vuser_passwd

     ftp_test

     123456

8. 生成虚拟用户数据文件    

   db_load -T -t hash -f /etc/vsftpd/vuser_passwd /etc/vsftpd/vuser_passwd.db

    chmod 600 /etc/vsftpd/vuser_passwd.db

9.编辑pam认证文件

    vi /etc/pam.d/vsftpd

    注释掉所有,添加下列

    32位    

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

    required pam_userdb.so db=/etc/vsftpd/vuser_passwd

    64位    

     auth required /lib64/security/pam_userdb.so db=/etc/vsftpd/vuser_passwd

    account required /lib64/security/pam_userdb.so db=/etc/vsftpd/vuser_passwd

   (查看系统位数 getconf LONG_BIT)

10.建立虚拟账户根目录

    mkdir /home/vsftpd/ftp_test

    修改权限

    chmod 777 ftp_test

11.创建虚拟用户配置目录

    mkdir /etc/vsftpd/vuser_conf

   cd /etc/vsftpd/vsuer_conf

  创建虚拟用户配置文件,文件名和用户相同

  touch ftp_test

  编辑文件  

   local_root=/home/vsftpd/ ftp_test

   write_enable=YES

   anon_umask=022

  anon_world_readable_only=NO

   anon_upload_enable=YES

  anon_mkdir_write_enable=YES

  anon_other_write_enable=YES

 12.创建chroot_list

     cd /etc/vsftpd

     touch chroot_list

     vi chroot_list

     ftp_test

13.重启服务

systemctl restart vsftpd

 

posted @ 2020-11-24 20:10  魅力无法挡  阅读(149)  评论(0编辑  收藏  举报