天天看点

Linux下的vsftpd服务配置

**

Redhat下的vsftpd服务配置

**

什么是vsftpd服务?

FTP(文件传输协议)全称是:Very Secure FTP Server。 FTP是INTERNET上仍常用的最老的网络协议之一,它为系统系统提供了通过网络与远程服务器进行传输的简单方法,在RED HAT ENTREPRISE LINUX 6 中,FTP服务器包的名字称为VSFTPD,他代表Very Secure File TransferProtocol Damon 服务器名称也叫做 vsftpd。

vsftp提供三种登陆方式:1.匿名登录 2.本地用户登录 3.虚拟用户登录

vsftpd的特点:1.较高的安全性需求 2.带宽的限制 3.创建支持虚拟用户 4.支持IPV6 5.中等偏上的性能 6.可分配虚拟IP 7.高速

FTP服务分为tftp(文件推送),vsftpd(文件传输,安全),fastftp,qftp,lftp(浏览器)。

部署FTP服务器

  • 首先:在虚拟机中修改他的主机名为ftp_server, 方便识别主机
hostnamectl set-hostname ftp_server.westos.com
           
Linux下的vsftpd服务配置
  • 修改网络配置,并重启网络
Linux下的vsftpd服务配置
  • 搭建yum源,下载vsftpd,lftp服务,并开启服务。
    Linux下的vsftpd服务配置
    Linux下的vsftpd服务配置
  • 禁用内核防火墙
vim /etc/sysconfig/selinux     
更改SELINUX=disabled
           
Linux下的vsftpd服务配置
  • 设置防火墙允许ftp服务,并重载防火墙
Linux下的vsftpd服务配置
Linux下的vsftpd服务配置

那么前期的配置已经完成!

下面进入实验环节!!!!

首先介绍一下FTP服务的基本信息

  • 软件安装包:vsftpd
  • 默认发布目录:/var/ftp
  • 协议接口:21/tcp
  • 服务配置文件:/etc/vsftpd/vsftpd.conf
  • 报错的ip解析
500 文件系统权限过大
530 用户认证失败,密码输错或者在服务器的黑名单中
550 服务本身功能未开启或配置文件有问题
553 服务器上文件系统的权限过小,服务未拒绝

实验一:匿名用户的设定

配置文件:/etc/vsftpd/vsftpd.conf, 每次修改完后就需要重启服务

systemctl restart vsftpd.service
           
  1. 匿名用户是否可以登陆 (12行) anonymous_enable=YES|NO
  2. 匿名用户上传(29行)anon_upload_enable=YES

    write_enable=YES

    Linux下的vsftpd服务配置
    匿名用户上传功能
    Linux下的vsftpd服务配置
Linux下的vsftpd服务配置

显示550服务本身功能未开启

将anon_upload_enable=YES

Linux下的vsftpd服务配置

报错553,显示文件系统权限过小,我们需要修改/var/ftp/pub目录的权限

Linux下的vsftpd服务配置

修改文件权限

chgrp ftp /var/ftp/pub        //修改目录所属组
chmod 775 /var/ftp/pub    //修改权限775
           
Linux下的vsftpd服务配置

匿名用户家目录修改

在根目录下创建一个新的文件夹作为家目录

创建文件

Linux下的vsftpd服务配置

修改配置文件

Linux下的vsftpd服务配置

修改以后家目录

Linux下的vsftpd服务配置

匿名用户上传文件默认权限修改anon_umask=022

Linux下的vsftpd服务配置
Linux下的vsftpd服务配置

匿名用户建立目录

Linux下的vsftpd服务配置

创建文件

Linux下的vsftpd服务配置

匿名用户下载

Linux下的vsftpd服务配置
Linux下的vsftpd服务配置

匿名用户删除

Linux下的vsftpd服务配置
Linux下的vsftpd服务配置

匿名用户使用的用户身份修改

Linux下的vsftpd服务配置

最大上传速率

Linux下的vsftpd服务配置
Linux下的vsftpd服务配置

最大连接数

Linux下的vsftpd服务配置

本地用户的设定

本地用户指的是服务端存在的用户

本地用户是否可以登录

Linux下的vsftpd服务配置
Linux下的vsftpd服务配置

ftp是否对登陆用户可写

修改为NO,不可写

Linux下的vsftpd服务配置
Linux下的vsftpd服务配置

修改回YES,可删除

Linux下的vsftpd服务配置
Linux下的vsftpd服务配置

本地用户家目录修改

Linux下的vsftpd服务配置
Linux下的vsftpd服务配置

本地用户上传文件权限修改

Linux下的vsftpd服务配置

修改以后文件权限

Linux下的vsftpd服务配置

限制本地用户浏览目录

所有本地用户都被锁定在自己家里

Linux下的vsftpd服务配置
Linux下的vsftpd服务配置

修改本地用户的家目录权限

chmod u-w /home/student
           
Linux下的vsftpd服务配置

用户黑名单的建立

Linux下的vsftpd服务配置

在/etc/vsftpd/chroot_list文件中写入用户名,该用户就被锁在自己的家目录

Linux下的vsftpd服务配置
Linux下的vsftpd服务配置

用户白名单的建立

Linux下的vsftpd服务配置

白名单中的不会被锁

Linux下的vsftpd服务配置

限制本地用户的登陆

用户永久黑名单 /etc/vsftpd/ftpusers

将student添加到/etc/vsftpd/ftpusers中

Linux下的vsftpd服务配置

在配置文件中添加userlist_deny=YES,重启服务

Linux下的vsftpd服务配置

student登入失败

Linux下的vsftpd服务配置

westos登陆成功

Linux下的vsftpd服务配置

FTP虚拟用户的设定

Linux系统中能创建的用户数量是有限的,但是如果我们需要创建无数的用户要怎么办?我们可以设置虚拟用户。

可以通过/etc/login.def中读取创建用户规则,可以看到数量是有限的。

Linux下的vsftpd服务配置

创建虚拟帐号身份vim /etc/vsftpd/login

Linux下的vsftpd服务配置

对文件进行加密

db_load -T -t hash -f login login.db       
           
Linux下的vsftpd服务配置

在/etc/pam,d/westos文件中写入以下内容

Linux下的vsftpd服务配置

在配置文件中写入以下内容

Linux下的vsftpd服务配置

使用创建的虚拟用户登陆

Linux下的vsftpd服务配置

虚拟用户配置独立

目的是让虚拟用户相互独立,只能查看自己的家目录

先给每个虚拟用户创建一个家目录

Linux下的vsftpd服务配置

修改配置文件添加以下内容

Linux下的vsftpd服务配置

使用创建的用户访问家目录

Linux下的vsftpd服务配置

虚拟用户的权限设定

对创建的虚拟用户权限进行设定,使只有user1能上传文件

在/etc/vsftp新建目录和文件,名为westos,添加以下内容

Linux下的vsftpd服务配置
Linux下的vsftpd服务配置

在配置文件中,将匿名用户上传文件功能注销

并添加内容,指向刚才创建的目录,重启服务

Linux下的vsftpd服务配置

使用user1和user2分别测试

Linux下的vsftpd服务配置
Linux下的vsftpd服务配置

继续阅读