FTP服务配置实例

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了FTP服务配置实例相关的知识,希望对你有一定的参考价值。

FTP服务配置实例
试验环境:在VMware虚拟机上开启一台Windows作为客户机;开启一台Linux作为服务器并对其配置FTP服务。
试验目的:客户机进行匿名访问FTP服务
本地用户访问FTP服务(禁锢家目录、黑白名单 、虚拟账户)
FTP连接及传输模式:1.控制连接TCP21,用于发送FTP命令信息2.数据连接TCP20,3.数据连接模式:1)主动模式2)被动模式
FTP的站点:/var/ftp/ ----pub
Vsftpd软件包:vsftpd-2.2.2-11.el6_4.1.x86_6
官方站点:http://vsftpd.beasts.org/
主程序:/uer/sbin/vsftpd
服务名:vsftpd
用户控制列表文件:/etc/vsftpd/ftpusers ; /etc/vsftpd/user_list
主配置文件:/etc/vsftpd/vsftpd.conf
常用的全局配置项:
listen=YES 是否以独立运行的方式监听服务;
listen_address=192.168.4.1 设置监听的IP地址;
listen_port=21 设置监听FTP服务的端口号;
write_enable=YES 是否启用写入功能;
download_enable=YES是否允许下载文件
userlist_enable=YES是否启用user_list列表文件;
userlist_deny=YES是否禁用user_list中的用户;
max_clients=0限制并发客户端连接数;
max_per_ip=0限制同一个IP地址的并发连接数;
常用的匿名FTP配置项:
anonymous_enable=YES启用匿名访问
anon_umask=022(反掩码) 匿名用户所上传文件的权限掩码
anon_root=/var/ftp匿名用户的FTP根目录
anon_upload_enable=YES允许上传文件
anon_mkdir_write_enable=YES允许创建目录
anon_other_write_enable=YES开放其他写入权
anon_max_rate=0限制最大传输速率(字节/秒)
常用的本地用户FTP配置项:1.local enable=YES是否启用本地系统用户
local umask=022本地用户所上传文件的权限掩码
Local root=/var/ftp设置本地用户的FTP根目录
Chroot_local_user=YES是否将用户禁锢在主目录
Local_max_rate=0限制最大传输速率(字节/秒)
接下来进行试验:
1.首先打开Linux挂载镜像文件、安装vsftpd软件包。如下图所示:
技术分享图片
2.安装完成之后,现在已经可以匿名访问服务器了。所以在验证访问之前先开启FTP服务、关闭防火墙、关闭增强性安全功能。如下图所示:
技术分享图片
3.接下来在客户端匿名访问,从而还可以查出ftp的站点及所在根目录。如下图所示:
技术分享图片
4.在Linux服务器上在ftp的根目录下新建文件并写入内容,通过客户端进行访问。如下图所示:
技术分享图片
技术分享图片
5.在客户端Windows系统中还有个E盘是空的,所以我们将路径切换到E盘中来,然后进行重新登录访问ftp服务,我们可以将刚在Linux服务器中新建的文件下载到E盘里。如下图所示:
技术分享图片
6.在E盘查看刚刚下载的文件。如下图所示:
技术分享图片
7.匿名访问下载文件的试验我们已经完成,接下来我们通过客户端进行文件上传。这里我们就选择将刚下载的文件把文件名改一下,后边进行上传试验。如下图所示:
技术分享图片
8.上传文件的时候由于权限受限,所以接下来需要修改FTP服务器配置文件:
通过命令vim vsftpd.conf进行修改。X注释掉“#”,添加允许上传文件和允许创建目录,然后wq保存退出。如下图所示:
技术分享图片
9.刚才没有找到anon_other_write_enable=YES开放其他写入权,所以借助参考手册man
手工加上去:man vsftpd.conf
技术分享图片
10.通过命令vim vsftpd.conf进行修改,添加开放其他写入权限。如下图所示:
技术分享图片
11.可以通过管道符号过滤查看新添加的配置信息,配置文件改完需要重载一下。如下图所示:
技术分享图片
12.到此还是不能上传文件,除了设置完FTP服务器的允许权限外,还需要对文件自身权限进行设置:
技术分享图片
技术分享图片
13.在客户机上将tes.txt文件上传到pub目录上。如下图所示:
技术分享图片
技术分享图片
14.接下来用本地用户进行登录访问,现在Linux服务器新添加两个用户。如下图所示:
技术分享图片
15.本地用户创建好之后,接下来还需要修改一下配置文件,开启将用户禁锢在主目录,不然在客户端上就可以随意切换到系统别的目录中去,这样的话对于服务器来说是非常不安全的。修改完进入客户端进行登录验证,可以上传文件。如下图所示:
技术分享图片
技术分享图片
技术分享图片
技术分享图片
技术分享图片
技术分享图片
16.配置完成之后,再次加载配置文件。然后在客户端验证一下:
技术分享图片
17.所以客户端上用户xiaoyang就再不能登录访问了:
技术分享图片
18.接下来创建虚拟用户和本地已经创建好的用户建立一个映射关系,用虚拟用户登录访问FTP服务:
在配置文件下编辑两个虚拟用户Lisa和Tom:[[email protected] vsftpd]# vi vuser
技术分享图片
技术分享图片
19.接下来把vuser这个文件转化为数据库文件,就可以让Pam数据认证模块进行认证。
技术分享图片
20.接下来在家目录下创建一个本地用户vuser,用来进行登录访问FTP服务但不能登录系统。如下图所示:
技术分享图片
21.接下来查看Pam认证模块的模板形式。重新编辑一个模板:
vim /etc/pam.d/vsftpd.vu 编辑添加一个新的文件vsftpd.vu
技术分享图片
技术分享图片
22.注释掉原来的原来的Pam认证,开启虚拟用户,使用Pam认证登录保存并退出。如下图所示:
技术分享图片
技术分享图片
23.在客户端用新建的虚拟用户Lisa登录访问,可以上传文件。如下图所示:
技术分享图片
24.服务器切换到用户所在目录中可以查看到刚刚客户端上传的文件。如下图所示:
技术分享图片
25.我们还可以给虚拟用户中的单个用户配置不同的权限。接下来命令vim vsftpd.conf修改配置文件,添加单独用户配置文件。如下图所示:
技术分享图片
26.在配置文件夹里创建用户的配置文件,给虚拟用户Tom单独设置权限,然后重启服务。如下图所示:
技术分享图片
27.配置文件中编辑反掩码,指定上传文件的权限。如下图所示:
技术分享图片
技术分享图片
28.在客户端用Tom进行登录访问ftp服务。如下图所示:
技术分享图片
29.在Linux服务器上进行查看。如下图所示:
技术分享图片
到此试验成功!

以上是关于FTP服务配置实例的主要内容,如果未能解决你的问题,请参考以下文章

Python 连接FTP服务器并实现文件夹下载实例演示,python区分ftp目录下文件和文件夹方法,ftp目录下包含中文名问题处理

Python 连接FTP服务器并实现文件夹下载实例演示,python区分ftp目录下文件和文件夹方法,ftp目录下包含中文名问题处理

Windows server 2008 布署FTP服务器实例(适用于阿里云)!

3-ftp搭建成功,服务器能访问,外网无法连接和访问

python 搭建ftp服务器

windows server 2008 r2服务器上怎么搭建ftp连不上