没玩过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. 在 WPF 中使用 Path 路径

    在 WPF 中总会修改 Button 的 Style,比如一个自定义的 Close 按钮.刚入门的可能会用一张 PNG 格式的图片来做这个按钮的 Icon,但这个是不优雅的.而且你要改的时候还得去操作 ...

  2. Ubuntu离线安装VSCode(附带前期准备工作)

    跨平台系列汇总:http://www.cnblogs.com/dunitian/p/4822808.html#linux 在说正式步骤前先把准备工作做到位: 1.IP设置,这个因为是GUI的,手动设置 ...

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

    package utils { import flash.xml.XMLDocument; import flash.xml.XMLNode; import mx.rpc.xml.SimpleXMLE ...

  4. Shell 学习笔记之变量

    变量 知识点 变量赋值和输出 variable="hello world" echo $variable 或者 echo ${variable} (最后格式统一使用后者) 只读变量 ...

  5. Eclipse插件ObjectAid(UML画图工具)

    原链接:https://my.oschina.net/keyven/blog/856594 最近想找一个Eclipse上的插件,可以方便的把java代码转换为UML图,但是由于我用的是Eclipse ...

  6. 请不要把‘通知的观察者注册’放在-viewWillAppear:中

    接手项目二次开发的吐槽: 接手别人的代码的悲哀之一就是,我反复的把流程走了一遍又一遍,却始终无法发现原来是这个问题. 之前这个人把通知的观察者注册放在了-viewWillAppear:中,导致,我发送 ...

  7. css定位流布局

    上面我们一起研究了浮动布局的特点和如何清除浮动给布局带来的不良影响,今天我们继续来研究定位流布局的特点和一些常用的布局技巧. 定位流主要有三种,一是相对定位,二是绝对定位,三是固定定位:下面我们一一进 ...

  8. 在Centos中yum安装和卸载软件的使用方法

    安装一个软件时 yum -y install httpd 安装多个相类似的软件时 yum -y install httpd* 安装多个非类似软件时 yum -y install httpd php p ...

  9. 严格模式下的javascript

    arguments: ECMA5移除了实参对象(arguments),在非严格模式下函数里的arguments只是一个标识符,在严格模式下它变成了保留字.严格模式下无法使用arguments作为形参名 ...

  10. 【2017-04-18】Ado.Net C#连接数据库进行增、删、改、查

    一.简介 1.ado.net是一门数据库访问技术. 他可以通过程序来操作数据库 2.类库 Connection 类 和数据库交互,必须连接它.连接帮助指明数据库服务器.数据库名字.用户名.密码,和连接 ...