我是靠谱客的博主 天真毛巾,这篇文章主要介绍Linux下FTP服务器的配置与搭建,现在分享给大家,希望可以做个参考。

1.VSFTP概述

复制代码
1
2
3
4
5
6
安全性是编写VSFTP的初衷,除了这与生俱来的安全特性以外,高速与高稳定性也是VSFTP的两个重要特点。 在速度方面,使用ASCII代码的模式下载数据时,VSFTP的速度是Wu-FTP的两倍,如果Linux主机使用2.4.*的内核,在千兆以太网上的下载速度可达86MB/S。 在稳定方面,VSFTP就更加的出色,VSFTP在单机(非集群)上支持4000个以上的并发用户同时连接,根据Red Hat的Ftp服务器的数据,VSFTP服务器可以支持15000个并发用户

1.1安全特性

复制代码
1
2
3
4
5
6
7
8
9
10
11
12
1、它是一个安全、高速、稳定的FTP服务器; 2、它可以做基于多个IP的虚拟FTP主机服务器; 3、匿名服务设置十分方便; 4、匿名FTP的根目录不需要任何特殊的目录结构,或系统程序或其它的系统文件; 5、不执行任何外部程序,从而减少了安全隐患; 6、支持虚拟用户,并且每个虚拟用户可以具有独立的属性配置; 7、可以设置从inetd中启动,或者独立的FTP服务器两种运行方式; 8、支持两种认证方式(PAP或xinetd/ tcp_wrappers); 9、支持带宽限制; VSFTP市场应用十分广范,很多国际性的大公司和自由开源组织在使用, 如:Red Hat, Suse,Debian,OpenBSD。

2.VSFTP连接类型

复制代码
1
2
3
控制连接(持续链接) TCP21(命令信道) 用户收发FTP命令 数据连接(按需连接) TCP20(数据信道) 用于上传下载数据

3.VSFTP工作模式

复制代码
1
2
3
主动模式port 被动模式passive:随机端口进行数据传输

4.传输模式

复制代码
1
2
3
4
5
6
7
Binary模式:不对数据进行处理 ASCII模式:进行文本传输时,自动适应结束符,回车符等 默认为Binary模式 转换模式: 在ftp>提示符下输入ascii即转换到ASCII模式,输入bin,即转换到Binary模式

5.VSFTP软件信息

复制代码
1
2
3
4
5
6
7
8
服务端软件名:vsftpd 客户端软件名:ftp 服务名:vsftp 端口号:20,21,指定范围内随机端口 配置文件:/etc/vsftpd/vsftpd.conf 任何主配置文件都是*.conf

6.登录验证方式

复制代码
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
匿名用户验证: 用户帐号名称:ftp或anonymous 用户帐户密码:无 工作目录:/var/ftp 默认权限:默认可下载不可上传,上传权限由两部分组成(主配置文件和文件系统) 本地用户验证: 用户帐号名称:本地用户(/etc/passwd) 用户帐户密码:用户密码(/etc/shadow) 工作目录:登录用户的宿主目录 权限:最大权限(drwx--------) 虚拟用户验证: 1.创建虚拟用户代替本地用户,减少本地用户曝光率。 2.使用本地用户作为虚拟用户的映射用户,为虚拟用户提供工作目录和权限控制 3.能够设置严格的权限(为每一个用户生成单独的配置文件) 实验部署: 1.安装主包 2.查看主配置文件的目录,配置主配置文件 3.重启服务 4.验证服务器 ftp://IP地址 查看文件是否能下载

FTP服务器的部署: 切记:配置任何服务器之前都要配置静态IP地址

复制代码
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
1.用#rpm -qa | grep vsftp 产看是否安装vsftp 1.没有包: Mount /dev/cdrom /mnt Cd /mnt/P.../ Ls vs* Rpm -ivh vsftp 2.yum -y install vsftpd* //前提能上网 2.vsftp的主配置文件 vim /etc/vsftp/vsftpd.conf 3.去掉配置文件vsftpd.conf里面一下,另个配置文件前的注释: anon_upload_enable=YES //打开上传权限 anon_mkdir_write-enable=YES //打开下载权限 注:27行和31行redhat6.4版本 4.关闭防火墙和selinux iptables -F setenforce 0 5.重启服务 systemctl restart vsftpd.service 6.FTP默认存放文件路径在cd /var/ftp/pub目录下 此目录下随意创建目录或文件 7.ftp://IP地址 备注:默认访问FTP服务器时不能上传!!!因为pub目录没有权限 解决上传问题:chmod 777 /var/ftp/pub/ 只能通过IP地址打开,想要使用域名打开,要搭建DNS服务器, 并在DNS服务器的数据库文件内,写入FTP主机记录 ftp.agan.com

FTP配置文件详解:

本地用户权限控制:

复制代码
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
local enable =YES #是否启用本地系统用户 local umask 022 #本地用户所上传文件的权限掩码 local root-/var/ftp #设置本地用户的FTP根目录 chroot local user YES #是否将用户禁铜在主目录 local max rate=0 #限制最大传输速率 ftpd _banner =Welcome to blahFTP service #用户 登录时显示的欢迎信息 userlist enable YES & userlisf dany YES #禁etc/vsftpduser list 文件中出现的用户名登录 FTPuserlist enable =YES & userlist deny-NO #禁止/ete'ysfpgd/user list 文件中出现的用户名登录FTP 配置文件: ftpusers #禁止ete/sfpd ftpuwers文件中出现的用户名登录FTP,权限比user list更高,即时生效

主配置文件/etc/ysftpd/vsftpd. conf

复制代码
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
ssl enable=YES#启用ssl认证 ssl tlsvl=YES ssl_ ss1v2=YES ssl sslv3=YES #开启tlsvl、ss1v2、 sslv3都支持 allom anon. ss1=YES #允许匠名用户(虚拟用户} force_ anon_ logins ssl=YES force_ anon_ data_ ssl=YES #医名登录和传输时强制使用ssl force_ local logins ssl=YES force_ local data ss1=YES #本地登录和传输时强制使用ssl rsa_cert_file=/etc/ssl/certs/vsftpd.crt #rsa格式的证书 rsa_private_key_file=/etc/ssl/certs/vsftpd. key #rsa格式的密钥 注:密钥文件要在配置文件中单独声明(写入配置文件时,注释要单独行,否则会报错)

匿名用户验证实验:

复制代码
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
匿名权限控制: anonymous_enable= YES #启用匿名访问 anon_umask=022 #匿名用户所上传文件的权限掩码 anon_root=/var/ftp #控名用户的FTP根目录 anon_upload_enable=YES #允许上传文件 anon_mkdir_write_enable=YES #允许创建目录 anon_other_write_ anable=YES #开放其他写入权(删除、覆盖、重命名) anon_max_rate =0 #限制最大传输速率(0为不限速,单位: bytes/秒) 实现创建目录和文件其他操作: anon_mkdir _write_enable=YES #允许创建目录 anon_other_write_enable=YES #删除文件、文件改名、文件覆盖

最后

以上就是天真毛巾最近收集整理的关于Linux下FTP服务器的配置与搭建的全部内容,更多相关Linux下FTP服务器内容请搜索靠谱客的其他文章。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(63)

评论列表共有 0 条评论

立即
投稿
返回
顶部