博客搬家: centos7中搭建ftp服务

最近想和同学共享一些文件资源,于是在实验室服务器上搭建个ftp服务,本博客记录一下配置的流程。过程基本是参照别人的方法来做的,博客也是在别人博客基础上修改的,当然排除了一些坑点。

1. 安装vsftpd

  1. 安装vsftpd: yum install vsftpd -y
  2. 启动vsftpd: systemctl start vsftpd
  3. 设置开机启动:systemctl enable vsftpd
  4. 创建ftp根目录: mkdir -p /ftpserver

2. 设置配置文件

vim /etc/vsftpd/vsftpd.conf

listen=YES                 // 需要把ipv6那个改成NO,两个不能同时开启

#禁止匿名访问
anonymous_enable=NO
anon_upload_enable=NO
anon_mkdir_write_enable=NO
anon_other_write_enable=NO chroot_list_enable=NO           // 不允许用户离开自己的主目录
chroot_list_file=/etc/vsftpd.chroot_list   // 虚拟用户列表,每行一个用户名
local_enable=YES               // 允许本地用户访问
write_enable=YES              // 允许本地用户写入
local_umask=022              // 上传后的文件的默认掩码
chroot_local_user=YES            // 禁止本地用户离开自己的主目录
pam_service_name=vsftpd       // 权限验证需要的加密文件
guest_enable=YES              // 开启虚拟用户功能
guest_username=bt            // 宿主用户,这个用户需要创建,或者使用已有用户,同样可以通过ftp来登录
virtual_use_local_privs=YES        // 用户登录后操作目录和本地用户权限一样
user_config_dir=/etc/vsftpd/vconf     // 虚拟用户主目录设置文件
allow_writeable_chroot=YES        // 允许写入用户主目录,这条特别重要

3. 添加虚拟用户,并创建用户目录

  1. vim /etc/vsftpd.chroot_list,添加两个用户如进去,分别为:
  user1

  user2
  1. mkdir -p /ftpserver/user1 /ftpserver/user2 // 创建用户目录
  2. chmod –R 755 /ftpserver/user1 /ftpserver/user2 // 修改目录权限,如果希望用户有写入权限,给other添加写权限即可,例如777
  3. 指定用户目录
mkdir –p /etc/vsftpd/vconf

cd /etc/vsftpd/vconf

touch user1 user2
# vim user1
local_root=/ftpserver/user1 #vim user2
local_root=/ftpserver/user2

4. 设置用户密码和数据库

echo -e "user1\n123456\nuser2\n123456" >/etc/vsftpd/vusers.lis

cd /etc/vsftpd

db_load –T –t hash –f vusers.list vusers.db

chmod 600 vusers.*

5. 指定登录认证方式

vim /etc/pam.d/vsftpd

修改为如下

auth  sufficient /lib64/security/pam_userdb.so    db=/etc/vsftpd/vusers
account sufficient /lib64/security/pam_userdb.so db=/etc/vsftpd/vusers

6. 关闭SELINUX的屏蔽

vi /etc/selinux/config

    #SELINUX=enforcing #注释掉
SELINUX=disabled #增加 setenforce 0 #使配置立即生效

最后 systemctl restart vsftpd即可

centos7中搭建ftp服务的更多相关文章

  1. Linux(Centos7) 实例搭建 FTP 服务

    本文以 CentOS 7.2 64位系统为例,使用 vsftpd 作为 FTP 服务端,FileZilla 作为客户端.指导您如何在 Linux 云服务器上搭建 FTP 服务. 操作步骤 安装 vsf ...

  2. 阿里云 CentOS7中搭建FTP服务器

    1配置 vsftpd-3.0.2-27.el7.x86_64 阿里云 centos 7.0 2 ftp工作模式 2.1 ftp通道 ftp工作会启动两个通道: 控制通道,数据通道 在ftp协议中,控制 ...

  3. CentOS7.4搭建ftp服务

    1.使用yum安装vsftpd yum install vsftpd -y 2.安装完成后,启动 FTP 服务: service vsftpd start 3.配置ftp权限 目前 FTP 服务登陆允 ...

  4. Centos7搭建FTP服务详细过程

    Centos7搭建FTP服务详细过程https://blog.csdn.net/sinat_30802291/article/details/81706152

  5. 在Win7的IIS上搭建FTP服务及用户授权

    FTP服务 FTP是文件传输协议(File Transfer Protocol)的简称,该协议属于应用层协议(端口号通常为21),用于Internet上的双向文件传输(即文件的上传和下载).在网络上有 ...

  6. 在Win7的IIS上搭建FTP服务及用户授权——转载!!

    原文地址:http://blog.sina.com.cn/s/blog_6cccb1630100q0qg.html FTP服务 FTP是文件传输协议(File Transfer Protocol)的简 ...

  7. 【阿里云】在 Windows Server 2016 下使用 FileZilla Server 安装搭建 FTP 服务

     Windows Server 2016 下使用 FileZilla Server 安装搭建 FTP 服务 一.安装 Filezilla Server 下载最新版本的 Filezilla Server ...

  8. 【转】在Win7的IIS上搭建FTP服务及用户授权

    [转]在Win7的IIS上搭建FTP服务及用户授权 [转]在Win7的IIS上搭建FTP服务及用户授权 FTP服务 FTP是文件传输协议(File Transfer Protocol)的简称,该协议属 ...

  9. 如何在Windows Server 2008 R2下搭建FTP服务

    在Windows Server 2008 R2下搭建FTP服务,供客户端读取和上传文件 百度经验:jingyan.baidu.com 工具/原料 Windows Server 2008 R2 百度经验 ...

随机推荐

  1. CSS单行文字超出省略

    .ellipsis { white-space:nowrap overflow:hidden text-overflow:ellipsis }

  2. bootstrap4.4 Stretched link的使用

    Stretched link功能介绍:扩大可点击区域. 原理 .stretched-link::after { position: absolute; top: 0; right:0; bottom: ...

  3. Spring Security 实战干货: 简单的认识 OAuth2.0 协议

    1.前言 欢迎阅读 Spring Security 实战干货 系列文章 .OAuth2.0 是近几年比较流行的授权机制,对于普通用户来说可能每天你都在用它,我们经常使用的第三方登录大都基于 OAuth ...

  4. placeHolder和defaultValue的区别

    placeHolder和defaultValue的区别 (1)placeHolder用于提示用户,它不与后端进行交互. (2)defaultValue则是与后端交互时的默认值. 举例说明:在Selec ...

  5. C++装饰器模式

    UML图: #include <iostream> #include <string> #include <windows.h> using namespace s ...

  6. Huffman树及其编码(STL array实现)

    这篇随笔主要是Huffman编码,构建哈夫曼树有各种各样的实现方法,如优先队列,数组构成的树等,但本质都是堆. 这里我用数组来存储数据,以堆的思想来构建一个哈弗曼树,并存入vector中,进而实现哈夫 ...

  7. JSON小记

    json: { "1" : "2", "1" : "3" } 在json中如果有重复的key,会取最后一个key的值,如 ...

  8. 如何应用threejs实现立方体每个面用图片替换

    var geometry = new THREE.BoxGeometry(200, 200, 200);var materialsbg = []; for (var i = 0; i < geo ...

  9. Java小白集合源码的学习系列:LinkedList

    目录 LinkedList 源码学习 LinkedList继承体系 LinkedList核心源码 Deque相关操作 总结 LinkedList 源码学习 前文传送门:Java小白集合源码的学习系列: ...

  10. doT的高级用法及loadData的使用

    本文出自APICloud官方论坛, 感谢论坛版主 gp3098的分享. 之前直接把模板写在页面底部的script标签内的,但是现在不同. 使用了doT.js配合api的loadData方法,整个页面就 ...