CentOS7--FTP


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

需求描述

  • 添加三个FTP虚拟用户devadm、sales、saleadm
  • 设置用户访问及文件权限控制:
    • 开放匿名访问,任何用户均可下载服务器/var/ftp/soft/目录中的软件资料
    • 用户devadm可以对/var/ftp/soft/目录进行上传、删除等操作
    • 用户sales可以从服务器/var/market/目录下载资料
    • 用户saleadm可以对/var/market/目录进行上传、删除等操作
    • 所有上传的文件,均去除非属主位的写(w)权限(即将权限掩码设为022)
    • 对服务器中没有明确授权的其他目录,均禁止以上用户访问
  • 传输速率和并发连接控制:
    • 最多允许150个并发用户连接,每IP并发连接数不超过5个
    • 匿名用户及sales用户的下载带宽限制为100KB/s
    • saleadm用户的下载、上传带宽限制为200KB/s

selinux firewall

[root@ftp_server ~]# getenforce 
Disabled
[root@ftp_server ~]# systemctl status firewalld
● firewalld.service - firewalld - dynamic firewall daemon
   Loaded: loaded (/usr/lib/systemd/system/firewalld.service; disabled; vendor preset: enabled)
   Active: inactive (dead)
[root@ftp_server ~]#

vsftpd 软件包

[root@ftp_server ~]# rpm -qa | grep vsftpd
vsftpd-3.0.2-11.el7_2.x86_64

建立文本格式的列表文件

[root@ftp_server ~]# vim /etc/vsftpd/vusers.list
[root@ftp_server ~]# cat /etc/vsftpd/vusers.list
devadm
123123
sales
123123
salesadm
123123

用db_load工具转换出DB格式的数据库文件

[root@ftp_server ~]# cd /etc/vsftpd/
[root@ftp_server vsftpd]# db_load -T -t hash -f vusers.list vusers.db
[root@ftp_server vsftpd]# file vusers.db 
vusers.db: Berkeley DB (Hash, version 9, native byte-order)
[root@ftp_server vsftpd]# useradd -d /var/market -s /sbin/nologin vulab
[root@ftp_server vsftpd]# chmod 755 /var/market
[root@ftp_server vsftpd]# ls -ld /var/market
drwsr-sr-x 2 vulab vulab 59 Jul 27 00:17 /var/market

results matching ""

    No results matching ""