centos 7 linux系统默认ftp安装配置和部署(详细讲解),centos安装配置


小生接触 Linux 系统时间不长,想解决linux系统ftp安装及部署问题,折腾了大半天,终于弄出来了,将各路
高手的配置方法综合了一下,如有不对之处,欢迎各位看客指正,感谢!

一、声明:

  本文采用操作系统版本: Centos 7 Linux系统  
  版本源:CentOS-7-x86_64-DVD-1708.iso
  官网下载地址:http://isoredirect.centos.org/centos/7/isos/x86_64/CentOS-7-x86_64-DVD-1708.iso
  安装包选择:最小安装包
  用户无,只有root用户。

二、安装 vsftpd

  2.1 检测系统是否已安装 vsftpd   
    方法一:[root@localhost ~]# rpm -q vsftpd  
    方法二:[root@localhost ~]# vsftpd -v
  2.2 安装 vsftpd:
    [root@localhost ~]# yum -y install vsftpd
  2.3 查看 vsftpd 安装位置: 
    [root@localhost ~]# whereis vsftpd

三、启动 vsftpd

  启动:[root@localhost ~]# systemctl start vsftpd.service
  设置开机自启: [root@localhost ~]# systemctl enable vsftpd.service

四、配置文件

  4.1 配置文件 /etc/vsftpd/vsftpd.conf

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

  - 注意:vsftpd 配置文件如果修改,需要重新启动 vsftpd :systemctl restart vsftpd.service

4.2 防火墙设置

  使用 dos 窗口进行 ping linux i地址
  如果成功会出现:ftp链接成功的信息,一般第一次配置的情况下,系统的防火墙是开启的,因此需要关闭防火墙或者设置防火墙的配置

    查看防火墙状态:
    [root@localhost ~]# systemctl status firewalld.service

    一般情况下,如果外部无法链接 vsftp ,排除网络的问题,很有可能是防火墙在作祟。

    开启防火墙:
    [root@localhost ~]# systemctl start firewalld.service
    关闭防火墙:
    [root@localhost ~]# systemctl stop firewalld.service
    重启防火墙:
    [root@localhost ~]# systemctl restart firewalld.service
    禁止开机启动:
    [root@localhost ~]# systemctl disable firewalld.service
    开启开机启动:
    [root@localhost ~]# systemctl enable firewalld.service

    说明:如果你不愿意关闭防火墙,需要防火墙添加FTP服务。
    firewall-cmd --permanent --zone=public --add-service=ftp
    firewall-cmd --reload

4.3 常见 ftp 链接问题

  链接ftp的时候如果出现无法访问目录列表问题:
  查看ftp的Selinux状态:
  [root@localhost ~]# sestatus -b | grep ftp
  将状态改为on:
  [root@localhost ~]# setsebool -P rftp_home_dir on (注意:P为大写)
  [root@localhost ~]# setsebool -P ftpd_full_access on  (注意:P为大写)

相关内容

    暂无相关文章