参考资料:

檔案伺服器之三: FTP 伺服器

用 vsftpd 配置FTP服务器

vsftpd 的所有选项

注意,如果要所有人同时编辑 FTP 上的所有文件,可以将 vsftpd.conf 配置文件中的 local_umask 选项设置为 002,并且在创建用户时通过 -g ftp 将所有的 FTP 用户加入同一个用户组。

1. 安装 ftp 服务端软件

yum install vsftpd

2. 配置 vsftpd.conf 配置文件

vsftpd 只需要设置这个文件即可,所有设置项的等号两边不能有空白!!

vim /etc/vsftpd/vsftpd.conf

常见的设置如下,所有的可用设置可以通过 man 5 vsftpd.conf 查看:

#FTP 用户新建文件和目录的默认权限,022 对应 755 只有自己可以修改,002 对应 775 同一个用户组的都可以修改
local_umask=002
#禁止匿名访问
anonymous_enable=NO
#接受本地用户
local_enable=YES
#允许上传
write_enable=YES
#用户只能访问限制的目录
chroot_local_user=YES
#设置所有的 FTP 用户使用同一个目录,不然所有用户默认使用各自的家目录。
local_root=/home/ftp
#支持 PAM 服务的管理,为 vsftpd 使用配置文件
pam_service_name=vsftpd

3. 创建 FTP 目录并调整权限

这个是避免“500 OOPS: vsftpd: refusing to run with writable root inside chroot()”

mkdir /home/ftp
chmod a-w /home/ftp
mkdir /home/ftp/data

4. 添加ftp用户

-M 不自动建立用户的家目录,-d <登入目录> 指定用户登入时的启始目录,-g ftp 将所有用户添加到同一个用户组,-s /sbin/nologin 使这些用户只能使用 FTP 无法登陆系统:

useradd -d /home/ftp -M -g ftp -s /sbin/nologin xiaoming
passwd xiaoming

5. 修改 pam.d/vsftpd

这时候登录 ftp 会报错: 530 login incorrect

vim /etc/pam.d/vsftpd

注释掉下面一行:

#auth    required pam_shells.so

6. 启动 vsftpd

systemctl start vsftpd

现在可以登录了,看到的是 /home/ftp,并且限制在该目录。

可以在浏览器用 ftp://xxx.xxx.xxx.xxx 访问,也可以用 ftp 软件比如 FileZilla,密码就是 xiaoming 的密码。

FTP 服务器搭建(基于 CentOS 7)的更多相关文章

  1. Linux CentOS 6.5 下 vsftpd ftp服务器搭建

    Linux CentOS 6.5 下 vsftpd ftp服务器搭建 by:授客 QQ:1033553122   操作系统环境:CentOS 6.5-x86_64 下载地址:http://www.ce ...

  2. centos7 配置ftp服务器搭建(匿名访问,以及本地登录)

    大家好,今天来给大家分享一个基于centos 7的ftp服务器搭建 实现功能:匿名访问,本地登录 查看系统版本: [root@localhost ~]# cat /etc/redhat-release ...

  3. Android中FTP服务器搭建入门

    http://www.2cto.com/kf/201501/374048.html http://blog.csdn.net/smile3670/article/details/44343617  有 ...

  4. Linux之匿名FTP服务器搭建

    FTP(File Transfer Protocol)是在服务器与客户端进行文件传输的一种传输协议.本次介绍的是vsftpd的软件体验ftp服务. FTP服务器默认情况下依据用户登录情况分为三种不同的 ...

  5. 记一次ftp服务器搭建走过的坑

    记一次ftp服务器搭建走过的坑 1.安装 ①下载 wget https://security.appspot.com/downloads/vsftpd-3.0.3.tar.gz #要FQ ②解压 ta ...

  6. FTP服务器搭建及操作(一)

    FTP服务器搭建及操作(一) FTP搭建 PHP FTP操作 搭建方法参照(windows):http://www.cnblogs.com/lidan/archive/2012/06/04/25351 ...

  7. 《Linux下FTP服务器搭建及FTP使用》

    .LOGAndy:mxtd114 <Linux下FTP服务器搭建> 0.root登录 1.安装ftp # yum -y install ftp 2.安装vsftpd # yum -y in ...

  8. ftp服务器搭建及简单操作

    ftp服务器搭建及简单操作 1. 添加一个新用户,使用名useradd testftp,然后使用passwd testftp对新添加的用户设置密码(这里设置为“1234567”). 2. 安装ftp服 ...

  9. FTP-Linux中ftp服务器搭建

    一.FTP工作原理 (1)FTP使用端口 [root@localhost ~]# cat /etc/services | grep ftp ftp-data 20/tcp #数据链路:端口20 ftp ...

  10. (转)【Java FTP及FTP服务器搭建】

    转至 http://blog.csdn.net/studyvcmfc/article/details/8147052 目录(?)[+] -[Java FTP及FTP服务器搭建] 一:本文采用apach ...

随机推荐

  1. 嵌入式软件工程师C语言经典笔试1

    一. 预处理器(Preprocessor) 1.1. 用预处理指令#define 声明一个常数,用以表明1年中有多少秒(忽略闰年问题) #define SECONDS_PER_YEAR (60 * 6 ...

  2. web框架Django一

    一.django安装 # pip 安装 pip3 install Django # 克隆下载最新版本 git clone https://github.com/django/django.git # ...

  3. 一篇包含了react所有基本点的文章

    去年,我写了一本关于学习React.js的小书,原来是大约100页. 今年我要挑战自己,把它归纳为一篇文章. 本文不会涵盖什么是React,或者为什么要学习它. 相反,这是面向已经熟悉JavaScri ...

  4. keep-alive 被 beforeRouteEnter 骗了

    大家中秋假期快乐,假期分享一些实战文章给大家,原创不易,欢迎转发,一起学习 现在大家基本都在单页应用里面使用了 keep-alive 来缓存不活动的组件实例,而不是销毁它们. 如果你还没有使用,可以看 ...

  5. Arcmap10.7连接oracle,但不装oracle客户端的配置

    环境:arcgis 10.7,oracle服务端12cR1.理论上其他版本方法一样 使用情况:一般开发人员不安装oracle服务端,甚至oracle客户端也不装,此时要用arcmap连oracle需要 ...

  6. ORACLE之字符集修改(10g)

    当从oracle服务器将数据导出成dmp文件后,再导入到本地的oracle数据库时,出现: IMP-00019: 由于 ORACLE 错误 12899 而拒绝行 IMP-00003: 遇到 ORACL ...

  7. 机器学习-K-means聚类及算法实现(基于R语言)

    K-means聚类 将n个观测点,按一定标准(数据点的相似度),划归到k个聚类(用户划分.产品类别划分等)中. 重要概念:质心 K-means聚类要求的变量是数值变量,方便计算距离. 算法实现 R语言 ...

  8. Email常用缩写

    Abbreviations Used in email Abbreviation Meanings ATM at the moment AFAIK as far as I know BTW by th ...

  9. ARM平台常用性能测试方法

    测试磁盘读写速度: 通过安装hdparm,可以测试EMMC的读写速度: dolphin@localhost:~$ sudo apt-get install hdparm dolphin@localho ...

  10. CSS3 Transform实例

    移动translate <!doctype html> <html> <head> <meta charset="utf-8"> & ...