Linux下FTP服务器的配置与搭建

1.VSFTP概述

安全性是编写VSFTP的初衷,除了这与生俱来的安全特性以外,高速与高稳定性也是VSFTP的两个重要特点。

在速度方面,使用ASCII代码的模式下载数据时,VSFTP的速度是Wu-FTP的两倍,如果Linux主机使用2.4.*的内核,在千兆以太网上的下载速度可达86MB/S。

在稳定方面,VSFTP就更加的出色,VSFTP在单机(非集群)上支持4000个以上的并发用户同时连接,根据Red Hat的Ftp服务器的数据,VSFTP服务器可以支持15000个并发用户

1.1安全特性

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连接类型

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

3.VSFTP工作模式

主动模式port
被动模式passive:随机端口进行数据传输

4.传输模式

Binary模式:不对数据进行处理
ASCII模式:进行文本传输时,自动适应结束符,回车符等

	默认为Binary模式
转换模式:
	在ftp>提示符下输入ascii即转换到ASCII模式,输入bin,即转换到Binary模式

5.VSFTP软件信息

服务端软件名:vsftpd
客户端软件名:ftp
服务名:vsftp
端口号:20,21,指定范围内随机端口
配置文件:/etc/vsftpd/vsftpd.conf

任何主配置文件都是*.conf

6.登录验证方式

匿名用户验证:
	用户帐号名称:ftp或anonymous
	用户帐户密码:无
	工作目录:/var/ftp
	默认权限:默认可下载不可上传,上传权限由两部分组成(主配置文件和文件系统)

本地用户验证:
	
	用户帐号名称:本地用户(/etc/passwd)
	用户帐户密码:用户密码(/etc/shadow)
	工作目录:登录用户的宿主目录
	权限:最大权限(drwx--------)

虚拟用户验证:
	
	1.创建虚拟用户代替本地用户,减少本地用户曝光率。
	2.使用本地用户作为虚拟用户的映射用户,为虚拟用户提供工作目录和权限控制
	3.能够设置严格的权限(为每一个用户生成单独的配置文件)

实验部署:
	1.安装主包
	2.查看主配置文件的目录,配置主配置文件
	3.重启服务
	4.验证服务器
		ftp://IP地址	查看文件是否能下载

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

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配置文件详解:

本地用户权限控制:

  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

  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格式的密钥

  注:密钥文件要在配置文件中单独声明(写入配置文件时,注释要单独行,否则会报错)

匿名用户验证实验:

  匿名权限控制:

  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	#删除文件、文件改名、文件覆盖
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

凉水沏茶

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值