小生接触 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

    系统显示如下信息:Created symlink from /etc/systemd/system/multi-user.target.wants/vsftpd.service to /usr/lib/systemd/system/vsftpd.service.

    思考:小生将本段信息进行了颜色标记,从中可以看出,如果想让一个进程开机自启动,使用 systemctl enable XXXX.service 命令就是

    让这个程序自己的启动配置创建一个链接到系统的启动配置文件下,系统开机的时候就能运行 /usr/lib/systemd/system/ 文件下的配置文件对应的程序。

    有时间可以去那里窥探一下研究一下。    

四、配置文件

  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 检测是否成功链接

  4.3.1 先在 linux 系统上进行检测:[root@localhost ~]# ftp localhost(本主机名称)

  出现提示登录用户名,小生使用匿名用户登录 anonymous(密码未设置,所以为空),输入 ls 命令可显示信息,效果如图:

    

  4.3.2 使用 windows ping 一下 linux 服务器,检查是否能联网

    从下图可以看出,windows 能与 linux 网络联通,当可以正常联通网络再进行 ftp 链接测试,

    也可使用 root 帐号进行登录,root 帐号登录之后可以操作系统内任意文件。以下章节列出可以链接之后通过 ftp 软件链接后出现的一些常见问题解决方案。

    

4.4 常见 ftp 链接问题

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

创作不易,感谢打赏关注。

centos 7 linux系统默认ftp安装配置和部署(详细讲解)的更多相关文章

  1. 【Oracle RAC】Linux系统Oracle11gR2 RAC安装配置详细过程V3.1(图文并茂)

    [Oracle RAC]Linux系统Oracle11gR2 RAC安装配置详细过程V3.1(图文并茂) 2 Oracle11gR2 RAC数据库安装准备工作2.1 安装环境介绍2.2 数据库安装软件 ...

  2. 【Oracle RAC】Linux系统Oracle12c RAC安装配置详细记录过程V2.0(图文并茂)

    [Oracle RAC]Linux系统Oracle12c RAC安装配置详细过程V2.0(图文并茂) 2 Oracle12c RAC数据库安装准备工作2.1 安装环境介绍2.2 数据库安装软件下载3 ...

  3. 【Oracle RAC】Linux系统Oracle18c RAC安装配置详细记录过程(图文并茂)

    本文Oracle 18c GI/RAC on Oracle Linux step-by-step 的安装配置步骤,同时也包含dbca 创建数据库的过程. 1. 关闭SELINUX,防火墙vi /etc ...

  4. CentOS(六)--Linux系统的网络环境配置

    Linux系统下的网络环境配置,Linux.Unix就是网络的世界,所以在Linux系统中如何配置网络环境变量是至关重要的,这里将会给出3种Linux系统下网络环境配置的方法! 在配置网络环境之前,首 ...

  5. Linux系统下tomcat安装配置

    Linux系统中Tomcat的安装配置. 前提JDK已经安装好. 安装 下载tomcatwget http://mirrors.cnnic.cn/apache/tomcat/tomcat-8/v8.0 ...

  6. Linux系统Java环境安装配置

    jdk安装配置 首先下载JDK和JRE,这里你的需要看看你的Linux系统是多少位的,比如我的是64位的: 下载JDK并指定到Download目录,JRE同样操作: 解压并且配置环境: tar -zx ...

  7. 在Debian系列Linux系统Ubuntu上安装配置yum的试验

    用习惯了Red Hat系统的都知道我们习惯于三种安装方式:一种是rpm包的方式安装,一种就是tar包的方式来安装,还有一种方式就是yum源的安装. 首先rpm包的用法,我们一般是在Red Hat光驱里 ...

  8. linux系统下jdk安装配置

    1.有jdk包(linux版) 2.放到linux系统下 3.建议在usr下新建jdk目录之后将jdk文件放到该目录下 3.配置系统信息   /etc/profile 需要配置的信息如下:#set j ...

  9. Linux系统下JDK安装配置(转载)

    转载出处:http://www.cnblogs.com/xuliangxing/p/7066913.html 本文主要介绍的是如何是Linux环境下安装JDK的,因为Linux环境下,很多时候也离不开 ...

随机推荐

  1. Linux学习---内存分布基础

    内核空间 应用程序不允许访问 -----------------------------------------3G 栈空间 局部变量 RW ----------------------------- ...

  2. WinDbg分析Dump常用方法和命令

    记录下自己使用WinDbg分析Dump时常用的一些方法和命令 !analyze -v //找出出错的堆 .exrc //找到程序崩溃的位置 !heap //打印出错函数的局部位置 !for_each_ ...

  3. 基于ajax提交数据

    昨日回顾: 1 inclusion_tag -干什么用的?生成html的片段(动态,传参数,传数据) -app下新建一个模块,templatetags -创建一个py文件(mytag.py) -fro ...

  4. 查询树节点、oracle、select...start with...connect by prior...

    通过子节点向根节点追朔. select * from persons.dept start with deptid=76 connect by prior paredeptid=deptid 通过根节 ...

  5. android-基础编程-Notification

    Notification 的创建主要涉及到 Notification.Builder . Notification . NotificationManager . Notification.Buile ...

  6. idea 中dao层自动生成接口

    1.在生成接口的类上右键 2.选中要生成的接口方法 3.点击Yes 4.出现(? reference in ? file)即生成成功

  7. C# WebAPI系列(1)

    WebApi是微软在VS2012 MVC4版本中绑定发行的,WebApi是完全基于Restful标准的框架.RestFul: (英文:Representational State Transfer,简 ...

  8. C#.NET开源项目、机器学习、Power BI

    [总目录]本博客博文总目录-实时更新   阅读目录 1.开源Math.NET基础数学类库使用系列 2.C#操作Excel组件Spire.XLS文章目录 3.彩票数据资料库文章 4.数据挖掘与机器学习相 ...

  9. [编译] 3、在Linux下搭建51单片机的开发烧写环境(makefile版)

    星期二, 10. 七月 2018 01:01上午 - beautifulzzzz 一.SDCC(Small Device C Compiler)编译环境搭建 SDCC是一个小型设备的C语言编译器,该编 ...

  10. 如何在Linux(Ubuntu)上安装Redmine

    费话就不多说了,本文主要描述如何在如何在Linux(Ubuntu)上安装Redmine.通过这篇文章你将了解如下内容. TL;DR 在Linux(Ubuntu)上安装Redmine的基本流程 配置ph ...