没玩过linux,折腾了半天的ftp,好不容易亲测通过了。不容易啊。

  操作环境:vm虚拟机 centos7

  首先:搞定网络问题;默认情况下使用ifconfig可以看到虚拟机下是无网络的。(注:虚拟机网络设置为NAT或桥接模式都是可以的)

  

  输入命令nmtui 打开网络配置

  回车-》回车

  

  

  将倒数第二项 Automatically connect 勾上 然后就有网络了

  

  

  然后更新系统:yum update

  查看vsftpd是否已安装:vsftpd -v  (默认都是没安装的)

  安装vsftpd:yum install vsftpd

  然后  y y y......

  安装完成后配置防火墙(firewall)

  firewall-cmd --permanent --add-service=ftp

  firewall-cmd --add-port=21

  firewall-cmd --reload

  

  配置vsftpd: vi /etc/vsftpd/vsftpd.conf  

  

  打开并设置以下配置:

  anonymous_enable=NO (修改)

  chroot_local_user=YES (取消注释)(此项为限定用户访问目录为当前目录)

  

  然后最底部设置并添加:

 

  pam_service_name=vsftpd

  userlist_enable=YES

  tcp_wrappers=YES

  listen_port=21

  data_connection_timeout=12

  guest_enable=YES

  guest_username=ftpuser (ftp的用户名,多个用户可重复这一行并修改用户名)

  user_config_dir=/usr/website(用户访问的文件夹)

  pasv_enable=YES

  virtual_use_local_privs=YES

  pasv_min_port=10060

  pasv_max_port=10090

  accept_timeout=5

  connect_timeout=1

  allow_writeable_chroot=YES (解决连接是提示500 OOPS:vsftpd:refusing to run with writable root inside chroot() 的问题)

  退出并保存:wq

  重启vsftpd:

    systemctl restart vsftpd.service

    相关命令:systemctl start vsftpd.service

         systemctl status vsftpd.service

  创建文件夹: mkdir /usr/website

  创建用户:

    useradd -g root -M -d /usr/website -s /sbin/nologin ftpuser

  设置密码:

    passwd ftpuser

  文件夹授权:

    chown -R ftpuser.root /usr/website

  

  到目前为止,还有最后一个问题:selinux (不设置的情况下ftp提示:553 Could not create file)

  捣鼓了半天都没配置成功。最后尝试了两个方案。

  一、关闭selinux;

    vi /etc/selinux/config

    设置 SELINUX=Disabled

    重启系统。

  二、将selinux改成permissive(宽容模式)

    命令:setenforce 0

然后,可以试试看了。

Centos7 ftp环境搭建的更多相关文章

  1. Centos7 python3环境搭建 兼容python2.7

    Centos7 python3环境搭建 兼容python2.7 安装前提依赖 yum install openssl-devel bzip2-devel expat-devel gdbm-devel ...

  2. FTP环境搭建及客户代码调用公共方法封装

    一.背景 大型系统架构往往被分解为多个独立可运行的组件, 以满足性能.可靠性.可扩展性的需求.多个组件间的数据交互往往采用两种方式:小量数据通过Sock函数.RMI.WebService等接口方式传递 ...

  3. LNMP小项目搭建,Centos7.6环境搭建Linux+nginx+mysql+php,wordpress个人博客的搭建(完整搭建步骤)

    一.LNMP搭建,基于nginx服务器搭建wordpress个人博客 准备环境:centos7.6环境下web服务器(nginx+php):主机名:web01,ip:192.168.248.172my ...

  4. [原创]LAMP+phpmyadmin+FTP环境搭建

    ***简单ftp服务器搭建: rpm –qa|grep vsftpd   //检查是否安装服务 yum –y install vsftpd-*   //安装服务 mkdir /var/ftp/uplo ...

  5. CentOS7 FTP服务搭建(虚拟用户访问FTP服务)

    概述 最近在搞Oracle在Linux系统下集群,针对Linux系统,笔人也是一片空白.Liunx外部文件的传输,避免不了使用FTP服务,所以现在就整理下,CentOS7环境下,FTP服务的搭建.FT ...

  6. MPSOC之9——host、embeded间tftp、nfs、ftp环境搭建

    tftp 可传输单个文件,不能传文件夹 需要通过命令传输文件,略显复杂 ==一般调试kernel时,用uboot通过tftp方式启动,不用每次都烧写存储介质== nfs 在host linux(ubu ...

  7. centos7 lamp环境搭建

    一.安装Apache1.安装yum -y install httpd2.开启apache服务systemctl start httpd.service3.设置apache服务开机启动systemctl ...

  8. Centos6.5和Centos7 php环境搭建如何实现呢

    首先我们先查看下centos的版本信息 代码如下: #适用于所有的linux lsb_release -a#或者cat /etc/redhat-release#又或者rpm -q centos-rel ...

  9. linux之CentOS-7.0环境搭建

    此文作为新手安装centos-7的图文教程.  一.  前言 最近,师兄要进行实验室架构搭建,需要学习docker.而docker是完全依赖于linux系统的.所以,有了这篇文章. linux有很多发 ...

随机推荐

  1. Map集合概述和特点

    A:Map集合概述和特点(Set底层依赖的是Map) 将键映射到值的对象 一个映射不能包含重复的键 每个键最多只能映射到一个值 B:Map接口和Collection接口的不同 Map是双列的(是双列集 ...

  2. 初识 Javascript.02 -- Date日期、Math对象、数据类型转换、字符串、布尔Boolean、逻辑运算符、if else 、三元表达式、代码调试方法、

    Date()对象: Date对象用于处理日期和时间. 1.1 Math对象  ◆Math.ceil()   天花板函数    向上取整  只取整数,不足则进1 ◆Math.floor()  地板函数 ...

  3. iOS打包后收不到推送信息

    今天遇到的一个特别神奇的问题: 应用在测试环境下打的包收不到推送了,打包之后都没有推送,但是我真机测试又是可以收到推送消息的.经过好久才找到原因,感觉很坑.这里记录一下问题: 1.由于我的推送第三方使 ...

  4. English Learn

    English Learn 一直决定好好学习英语.越来越觉得英语的重要性,解决日常问题.学习新东西.使用google时都经常碰到英文.所以觉得在blog上记录些学习英语的文章,也算是对自己的一种监督. ...

  5. vuejs2.0子组件改变父组件的数据

    在vue2.0之后的版本中,不允许子组件直接改变父组件的数据,在1.0的版本中可以这样操作的,但是往往项目需求需要改变父组件的数据,2.0也是可一个,区别是,当我们把父元素的数据给子组件时,需要传一个 ...

  6. 20155214 2016-2017-2 《Java程序设计》第5周学习总结

    20155214 2016-2017-2 <Java程序设计>第5周学习总结 教材学习内容总结 1.错误会被包装为可抛出的对象,继承自java.lang.Throwable类. 2.可以利 ...

  7. 【Flex】读取本地XML,然后XML数据转成JSON数据

    干了一年H5,最近被要求写编辑器,Electron等级还不够,写不了,只有重新拿起as3,用flex,最近写到数据表编辑模块,有这部分功能,基本完成 . package utils { /** * 模 ...

  8. 性能测试培训:tomcat性能调优方法

    性能测试培训:tomcat性能调优方法   poptest是国内唯一一家培养测试开发工程师的培训机构,以学员能胜任自动化测试,性能测试,测试工具开发等工作为目标.在poptest的loadrunner ...

  9. 老李分享:《Linux Shell脚本攻略》 要点(六)

    老李分享:<Linux Shell脚本攻略> 要点(六)   1.打印网络接口列表 [root@localhost touch_more]# ifconfig | cut -c-10 | ...

  10. vuejs学习笔记(1)--属性,事件绑定,ajax

    属性 v-for 类似于angular中的 ng-repeat ,用于重复生成html片段: <ul id="box"> <li v-for="(v, ...