欢迎来到冘冗的博客

个性签名:世上只有想不通的人,没有走不通的路。

构建 FTP 文件传输服务器

实验环境:

    根据公司开发部门和市场部门的业务发展要求,需要面向 internet 搭建一台 FTP 文件服务器。以提供公测版软件,市场资料的下载和上传,文件管理等应用。同时要对用户访问和下载/上传流量进行控制。考虑到服务器的运行效率及稳定性、安全性、选择通过在 CentOS 7 操作系统下搭建 vsftpd 服务器来实现。

需求概述:

1,采用 FTP 虚拟用户的方式,添加三个用户:devadm, sales, salesadm。

2,用户访问及文件权限控制。
开放匿名访问,任何用户均可下载服务器 /var/ftp/soft/ 目录下的软件资料。
用户 devadm 可以对服务器的 /var/ftp/soft/ 目录进行上传、删除等操作。
用户 sales 可以下载服务器 /var/market/ 目录中的市场活动,销售方案等资料。
用户 salesadm 可以对服务器 /var/market/ 目录进行上传、删除等操作。
所有通过 FTP 上传的文件,均去除非属主位的写权限(即将权限掩码设为 022 )。
对服务器中没有明确授权的其他目录,禁止任何用户访问。

3,传输速率和并发连接控制
最多允许 150 个并发用户连接,每个 IP 并发连接数不超过 5 个。
匿名用户及 sales 用户的下载带宽限制为 100KB/s 。
devadm,salesadm 用户的下载、上传带宽限制为 200KB/s 。

一、安装ftp服务器

 

 

 二、安装客户端

 

 

 三、创建虚拟用户

3.1创建虚拟用户目录

 

 

 3.2修改为db文件

 

 

 3.3修改权限

 

 

 3.4创建用户目录和系统用户

 

 

 3.5修改权限

 

 

 3.6创建虚拟认证

 

 

 3.7修改配置文件

 

 

 

 3.8创建上传下载目录

 

 

 3.9创建用户权限文件

 

 

 3.10为用户添加权限

 

 

 四、防火墙

4.1开启防火墙端口

 

 

 4.2关闭selinux

 

 

五、测试

5.1启动服务

 

 

 

 5.2用户登陆测试

 

 

 

 

 5.3上传下载文件

5.3.1devadm用户

 

 

 

 

 

 

 

 

5.3.2sales 

 

5.3.3sales adm

 

 六、排错

6.1vsftpd:500 OOPS: vsftpd: refusing to run with writable root inside chroot ()

解决办法:

在配置文件中添加

allow_writeable_chroot=YES

6.2 500 OOPS: cannot locate user entry:虚构用户名

解决办法:

guest_enable=YES

guest_username=vir (useradd添加的系统用户用户)

6.3 ftp新建文件夹显示错误550

解决办法:

创建的目录没有写入的权限

6.4 登陆失败

创建的目录属组和属主不是创建系统用户

还有就是权限不够

6.5 启动失败

语法错误:

在等号的两侧不能有空格

还有就是IPv4和IPv6地址监听问题

6.6 注意

在创建db文件时要在创建虚拟用户的文件下操作

posted @ 2020-11-25 14:22  冘冗  阅读(258)  评论(0编辑  收藏  举报