Linux CentOS7中搭建FTP服务器

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/weixin_44018093/article/details/86300832

Linux CentOS7中搭建FTP服务器

1. 安装

首先检查是否安装了vsftpd服务

  • 在终端中输入"rpm -q vsftpd"

在这里插入图片描述

  • 如未安装输入"yum install -y vsftpd"进行安装
  • 注:需要切换到root用户才能进行安装,否则权限不够
  • 等待安装完成…
    在这里插入图片描述

2. 配置

  • 修改配置文件
    • /etc/vsftpd/vsftpd.conf 是主配置文件,核心配置文件

    • 使用 vim vsftpd.conf 打开并编辑主配置文件

    • 注:一般模式下输入":set nu"显示行号以便查找,按i或a进入编辑模式
      在这里插入图片描述

      主要更改配置如下:

      • anonymous_enable=YES
      • anon_upload_enable=YES
      • anon_mkdir_write_enable=YES
      末尾增加下列内容
      • anon_other_write_enable=YES
      • anon_world_readable_only=NO
      • anon_root=/home/vsftpd

      :wq 保存并退出

  • 配置登录用户
    //创建用户,myftp为用户名
    useradd myftp
    //为用户myftp设置密码
    passwd myftp
    
  • 配置防火墙
    • 添加FTP到白名单

      firewall-cmd --add-service=ftp --permanent
      firewall-cmd --reload
      
    • 放宽SELinux的控制权限,即更改SELinux为Permissive模式

      //查看当前SELinux模式
      getenforce
      //更改当前模式为Permissive模式
      setenforce 0
      
    • 修改SELinux对FTP的控制权限

      //使用getsebool -a | grep -i ftp查看相关权限,on表示允许,off表示不允许
      //开启匿名上传
      setsebool -P ftpd_anon_write=1 
      
    • 开放端口号 21、20

      //开放21端口号
      firewall-cmd --zone=public --add-port=21/tcp --permanent
      //开放20端口号
      firewall-cmd --zone=public --add-port=20/tcp --permanent
      //查看已开放的端口号
      firewall-cmd --list-ports
      

      在这里插入图片描述

    • 修改完成后重启防火墙和vsftpd服务

      //重启防火墙
      firewall-cmd --reload
      //重启vsftpd服务
      systemctl start vsftpd
      

vsftpd常用命令:

  • 状态 systemctl status vsftpd.service
  • 启动 systemctl start vsftpd.service
  • 关闭 systemctl enable vsftpd.service
  • 重启 systemctl restart vsftpd.service
  • 开机启动 systemctl enable vsftpd.service

解决Windows端无法访问的问题:

  • 打开控制面板—>网络和共享中心—>(左侧)Internet选项—>高级
    去掉“使用被动FTP”
    在这里插入图片描述
  • 使用命令"systemctl stop firewalld.service"关闭Linux防火墙

END

猜你喜欢

转载自blog.csdn.net/weixin_44018093/article/details/86300832