实验环境:centos7虚拟机若干、windows系统主机若干
实验目的: 1、构建匿名访问的FTP服务器
2、构建本地用户验证的FTP服务器
3、构建虚拟用户验证的FTP服务器
构建匿名访问的FTP服务器
一:安装FTP服务软件包,如下
二:准备匿名用户访问FTP服务的目录
在centos7系统中,FTP匿名用户对应的系统用户为ftp。其宿主目录/var/ftp也就是匿名用户访问vsftpd服务时所在的FTP服务器根目录,FTP根目录的权限不允许匿名用户或其他用户有写入权限(否则访问时会报500错误)。
/var/ftp目录下默认设置了一个名为pub的子目录,可以给匿名用户访问FTP服务器时提供上传、下载文件使用。执行以下操作可以使匿名用户ftp对pub目录拥有写入权限,以便上传数据。如下
三:编辑vsftpd服务的主配置文件,开放匿名用户配置。如下
匿名访问主要修改的配置项有以下4个
四:1、启动vsftpd服务,并检测。如下
2、关闭防火墙,降级沙盒。如下
五:开始测试FTP服务
1、windows系统测试,如下
2、centos7客户机测试,如下
首先客户机需要安装ftp软件包,如下
然后输入“ftp 服务器IP地址”进行访问FTP服务器,如下
在ftp交互界面输入cd pub 切换到服务器的pub目录,并进行下载文件到客户机的/root目录中,如下
从客户机/opt/目录中上传文件到服务器pub目录中,如下
构建本地用户验证的FTP服务器
vsftpd服务可以直接使用linux主机的系统用户作为FTP账号,提供基于用户名、密码的登陆验证
一:安装FTP服务软件包,如下
二:创建系统账号并设定密码。如下
三:编辑vsftpd服务的主配置文件,使用基本的本地用户验证。如下
本地用户验证登陆,只需要修改以下几点即可
四:重启服务,关闭防火墙,降级沙盒。如下
五:开始测试FTP服务
1、windows系统测试,如下
2、centos7系统测试,如下
客户机从/root/目录上传文件到FTP服务器
构建虚拟用户验证的FTP服务器
使用虚拟用户的主要好处在于,可以将FTP登陆的账号与系统登陆的账号区分开。用户名、密码都不相同,从而进一步加强了FTP服务器的安全性。
一:安装FTP服务软件包,如下
二:建立虚拟账号数据库
1、创建文本格式的用户名、密码列表。如下
2、通过db_load工具把建好的账号文本转换成Berkeley DB格式的数据库文件,如下
3、提高虚拟账号文件的安全性,修改权限。如下
4、添加虚拟用户的映射账号,创建FTP服务器的根目录。如下
为了使用户能够上传下载文件,这里把FTP服务器的根目录权限修改以下:
5、为虚拟用户建立pam认证文件。如下
编辑虚拟用户的pam认证文件如下
三:编辑vsftpd服务的主配置文件,添加虚拟用户支持。如下
四:为不同的用户建立独立的配置文件,设置不同访问权限。如下
编辑zhangsan权限如下
五:重启vsftpd服务,关闭防火墙,降级沙盒。如下
六:开始测试FTP服务器。
1、windows系统测试,如下
2、centos7系统测试。如下
从服务器下载文件到客户机的/root目录中
在服务器中创建目录
从客户机的/opt目录上传文件到服务器
试验成功。