linux下安装vsftp

一.什么是vsftp


VSFTP是一个基于GPL发布的类Unix系统上使用的FTP服务器软件,它的全称是Very Secure FTP 从此名称可以看出来,编制者的初衷是代码的安全。


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


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


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




二.vsftp的优点


1、它是一个安全、高速、稳定的FTP服务器;


2、它可以做基于多个IP的虚拟FTP主机服务器;


3、匿名服务设置十分方便;


4、匿名FTP的根目录不需要任何特殊的目录结构,或系统程序或其它的系统文件;


5、不执行任何外部程序,从而减少了安全隐患;


6、支持虚拟用户,并且每个虚拟用户可以具有独立的属性配置;


7、可以设置从inetd中启动,或者独立的FTP服务器两种运行方式;


8、支持两种认证方式(PAP或xinetd/ tcp_wrappers);


9、支持带宽限制;






FTP原理:
   FTP会话时包含了两个通道,一个叫控制通道,一个叫数据通道
   控制通道:控制通道是和FTP服务器进行沟通的通道,连接FTP,发送FTP指令都是通过控制通道来完成的, PI称为控制连接
  数据通道:数据通道是和FTP服务器进行文件传输或者列表的通道。
FTP协议中,控制连接均有客户端发起,而数据连接有两种工作方式:PORT方式和PASV方式,DTP称为数据连接


  PORT模式(主动方式)


FTP 客户端首先和FTP Server的TCP 21端口建立连接,通过这个通道发送命令,客户端需要接收数据的时候在这个通道上发送PORT命令。 PORT命令包含了客户端用什么端口(一个大于1024的端口)接收数据。在传送数据的时候,服务器端通过自己的TCP 20端口发送数据。 FTP server必须和客户端建立一个新的连接用来传送数据。




  PASV模式(被动方式)


在建立控制通道的时候和PORT模式类似,当客户端通过这个通道发送 PASV 命令的时候,FTP server打开一个位于1024和5000之间的随机端口并且通知客户端在这个端口上传送数据的请求,然后FTP server 将通过这个端口进行数据的传送,这个时候FTP server不再需要建立一个新的和客户端之间的连接传送数据。






三、安装
 直接用rpm包安装


首先查看vsftp是否安装
# rpm -qa | grep vsftpd


如果已经有安装,那么就卸载
rpm -e  跟包名
[root@localhost home]# rpm  -ivh vsftpd-2.0.5-16.el5_4.1.i386.rpm 
warning: vsftpd-2.0.5-16.el5_4.1.i386.rpm: Header V3 DSA signature: NOKEY, key ID 37017186
Preparing...                ########################################### [100%]
   1:vsftpd                 ########################################### [100%]


添加用户
useradd [-d home] [-s shell] [-c comment] [-m [-k template]] [-f inactive] [-e expire ] [-p passwd] [-r] name


  3.主要参数


  -c:加上备注文字,备注文字保存在passwd的备注栏中。


  -d:指定用户登入时的主目录,替换系统默认值/home/<用户名>


  -D:变更预设值。


  -e:指定账号的失效日期,日期格式为MM/DD/YY,例如06/30/12。缺省表示永久有效。


  -f:指定在密码过期后多少天即关闭该账号。如果为0账号立即被停用;如果为-1则账号一直可用。默认值为-1.


  -g:指定用户所属的群组。值可以使组名也可以是GID。用户组必须已经存在的,期默认值为100,即users。


  -G:指定用户所属的附加群组。


  -m:自动建立用户的登入目录。


  -M:不要自动建立用户的登入目录。


  -n:取消建立以用户名称为名的群组。


  -r:建立系统账号。


  -s:指定用户登入后所使用的shell。默认值为/bin/bash。


  -u:指定用户ID号。该值在系统中必须是唯一的。0~499默认是保留给系统用户账号使用的,所以该值必须大于499。


  4.说明


  useradd可用来建立用户账号,它和adduser命令是相同的。账号建好之后,再用passwd设定账号的密码。使用useradd命令所建立的账号,实际上是保存在/etc/passwd文本文件中。


  5.应用实例


  建立一个新用户账户lyle ,并设置UID为543,主目录为/home/ftpuser1,属于user组:
[root@localhost home]# /usr/sbin/groupadd user
[root@localhost home]# /usr/sbin/useradd  -u 543  -d /home -g fsftp -m lyle
[root@localhost home]# mkdir /home/ftpuser1
[root@localhost home]# chown -R lyle /home/ftpuser1
[root@localhost home]# passwd lyle
[root@localhost home]# service vsftpd restart #重启


添加防火墙 增加端口 21
配置防火墙
[root@localhost home]# vi /etc/sysconfig/iptables


找到 22号端口后面添加 下面一句话
-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 21 -j ACCEPT 


:wq


重启防火墙


[root@localhost home]# /etc/init.d/iptables restart




现在可以使用 ftp 客户端工具了。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值