zoukankan      html  css  js  c++  java
  • CentOS7种搭建FTP服务器

    一:安装FTP

    //查看是否安装
    rpm -q vsftpd
    //安装vsftpd
    yum -y install vsftpd

    启动vsftpd服务

    systemctl start vsftpd.service

    查看vsftpd服务是否启动

    systemctl statu vsftpd.service
    //设置开机自动启动
    systemctl enable vsftpd.service

    二:关闭firevall和SELinux

    //查看firewalld状态
    systemctl status firewalld
    //开启防火墙
    systemctl start firewalld
    //再次查看防火墙状态
    systemctl status firewalld
    //FTP服务添加到防火墙
    firewall-cmd --permanent --zone=public --add-service=ftp
    firewall-cmd --reload
    setenforce 0   # 设置SELinux 成为permissive模式  (关闭SELinux)
    setenforce 1   # 设置SELinux 成为enforcing模式   (开启SELinux)
    
    //或者修改配置
    vi /etc/selinux/config
    //关闭SEliunx SELINUX=disabled //设置SELinux getsebool -a | grep ftp setsebool -P ftpd_full_access on

    三:修改配置文件

    地址:/etc/vsftpd/vsftpd.conf

    //不允许匿名访问,禁用匿名登录
    anonymous_enable=NO
    //启用限定用户在其主目录下    
    chroot_local_user=YES  
    //使用本地时(自行添加)
    use_localtime=YES 
    chroot_list_enable=YES
    //允许使用本地账号进行FTP用户登陆验证
    local_enable=YES 
    //如果启用了限定用户在其主目录下需要添加这个配置,解决报错 500 OOPS: vsftpd: refusing to run with writable root inside chroot()
    allow_writeable_chroot=YES 
    //启用上传和下载的日志功能,默认开启。
    xferlog_enable=YES  
    //设置本地用户默认文件掩码022
    local_umask=022  

    创建用户文件

    vim /etc/vsftpd/virtusers添加虚拟用户

    #第一行用户名

    wordpress

    #第二行密码

    123456

    生成用户文件

    //安装db(如果有不用安装)
    yum  search db4
    yum install-y  compat-db47.x86_64  (以你的机器为准) 
    //生成db文件
    db_load -T -t hash-f /etc/vsftpd/virtusers /etc/vsftpd/virtusers.db
    //设置权限
    chmod 600/etc/vsftpd/virtusers.db

    修改配置文件

    //生成备份
    cp /etc/pam.d/vsftpd /etc/pam.d/vsftpd.bak
    //添加语句和注释掉auth及account的所有配置行
    auth sufficient/lib64/security/pam_userdb.so db=/etc/vsftpd/virtusers
    account sufficient/lib64/security/pam_userdb.so db=/etc/vsftpd/virtusers

    创建虚拟用户配置文件

    //创建文件
    touch wordpress
    //创建用户目录
    mkdir -p /home/vsftpd/test/
    //添加信息(自选)
    当virtual_use_local_privs=YES 时,虚拟用户和本地用户有相同的权限;
    当virtual_use_local_privs=NO  时,虚拟用户和匿名用户有相同的权限,默认是NO。
    当virtual_use_local_privs=YES,write_enable=YES时,虚拟用户具有写权限(上传、下载、删除、重命名)。
    当virtual_use_local_privs=NO,write_enable=YES,anon_world_readable_only=YES,
    anon_upload_enable=YES时,虚拟用户不能浏览目录,只能上传文件,无其他权限。
    当virtual_use_local_privs=NO,write_enable=YES,anon_world_readable_only=NO,
    anon_upload_enable=NO时,虚拟用户只能下载文件,无其他权限。
    当virtual_use_local_privs=NO,write_enable=YES,anon_world_readable_only=NO,
    anon_upload_enable=YES时,虚拟用户只能上传和下载文件,无其他权限。
    当virtual_use_local_privs=NO,write_enable=YES,anon_world_readable_only=NO,
    anon_mkdir_write_enable=YES时,虚拟用户只能下载文件和创建文件夹,无其他权限。
    当virtual_use_local_privs=NO,write_enable=YES,anon_world_readable_only=NO,
    anon_other_write_enable=YES时,虚拟用户只能下载、删除和重命名文件,无其他权限。

    重启

    //重启服务
    systemctl restart vsftpd.service
    //启动服务
    systemctl start vsftpd.service
    // 服务状态查看
    systemctl status vsftpd.service

    参考地址:

        https://segmentfault.com/a/1190000008161400

        https://blog.csdn.net/qq_26941173/article/details/54575952

    可能存在问题的解决办法地址:

         http://bbs.51cto.com/viewthread.php?tid=1480655&extra=&page=1

  • 相关阅读:
    替换configparser 中指定的值
    configparser 读取与赋值
    接口测试第五步 --》 拼接url
    接口测试第四步 --》 封装excel
    接口测试第三步 --》 封装请求方法
    接口测试第二步 --》 推荐定义一个log 文件
    超级直观理解tcp握手
    crash 潜水
    提高MySQL查询速度
    JSON文件存入MySQL数据库
  • 原文地址:https://www.cnblogs.com/cpxjl/p/9073506.html
Copyright © 2011-2022 走看看