目前几种ftp服务器

1、目前几种ftp服务器
wu-ftpd服务器(黑客比较喜欢攻击的一个)
vsftpd服务器(radhat,centos 集成的,但是配置麻烦,优势可以集成安装,配置文件推荐
http://seven.blog.51cto.com/120537/58419
proftpd服务器(配置简单,易用)
Server-u(windows最简单的ftp服务器,点击next--next--即可)

 

备注:可参考实验

 

 

2、以下选择proftpd服务器做的实验
1)下载源码包 proftpd-1.2.9.tar.gz
2)安装过程   tar zvxf proftpd-1.2.9.tar.gz
             ./configure --prefix=/usr/local/proftpd  (安装的目录)
             make
             make install
3)启动proftp
启动前先修改配置文件
vi /usr/local/proftpd/etc/proftpd.conf
因为还没有组,把里面对Group: 的内容修改为nobody
然后启动
./usr/local/proftpd/sbin/proftpd & (后台执行ftp服务)

4)ftp://192.168.1.10(该ip为你的安装该ftp服务的linux主机地址)
需要输入用户名,密码即可进入

5)proftp的配置
类似apache的配置

添加用户
# useradd -d  /data/ftp  -s  /sbin/nologin/  user1
# pass user1
一个简单的ftp服务器可以访问了


3、高级应用,(每个用户拥有不同权限配置)
 /usr/local/proftpd/etc/proftpd.conf 配置文件介绍

<Directory "路径名">...</Directory>
#关于匿名用户的设置
<Anonymous "匿名登陆的目录">
......<Limit 限制动作>
......</Limit>
</Anonymous>

 

我们用到的比较多的可能是Limit的使用,Limit大致有以下动作,基本能覆盖全部的权限
CMD:Change Working Directory 改变目录MKD:MaKe Directory 建立目录的权限RNFR: ReName FRom 更改目录名的权限DELE:DELEte 删除文件的权限RMD:ReMove Directory 删除目录的权限RETR:RETRieve 从服务端下载到客户端的权限STOR:STORe 从客户端上传到服务端的权限READ:可读的权限,不包括列目录的权限,相当于RETR,STAT等WRITE:写文件或者目录的权限,包括MKD和RMDDIRS:是否允许列目录,相当于LIST,NLST等权限,还是比较实用的ALL:所有权限LOGIN:是否允许登陆的权限

 

针对上面这个Limit所应用的对象,又包括以下范围
AllowUser 针对某个用户允许的LimitDenyUser 针对某个用户禁止的LimitAllowGroup 针对某个用户组允许的

LimitDenyGroup 针对某个用户组禁止的LimitAllowAll 针对所有用户组允许的LimitDenyAll 针对所有用户禁止的Limit
TransferRate STOR|RETR 速度(Kbytes/s) user 使用者

 

proftpd.conf 也支持变量,变量的内容如下:
%T 目前的时间 
%F 所在硬盘剩下的容量 
%C 目前所在的目录 
%R Client 端的主机名称 
%L Server 端的主机名称 
%U 使用者账号名称 
%M 最大允许联机人数 
%N 目前的主机联机人数 
%E FTP 主机管理员的 email  
%i 本次上传的档案数目 
%o 本次下载的档案数量 
%t 本次上传+下载的档案数量

 

 

[root@test root]# vi /usr/local/proftpd/etc/proftpd.conf 
# 底下是 FTP 主机的环境设定,每个项目的内容为: 
# ServerName :当使用者登入主机的时候,proftpd 会显示在 Client 端 
#       的 FTP 软件的一些基本讯息啦! 
# ServerType :启动 proftpd 的方法,有两种方式,分别是 standalone 
#       与 inetd ,因为我们是以 super daemon 启动的,所以 
#       设定为 inetd 喔!如果您想独立启动(不透过 xinetd )      
# DefaultServer:预设的主机啊!这个项目可以设定为 on 或 off ,基本上, 
#         除非您有两个 IP 或者是设定了虚拟主机 (virtualhost), 
#         否则这个项目都应该要设定为 on 才行!不然有些 uknown  
#         的联机会无法连接到您的 FTP 服务喔! 
# Port :设定主机的 FTP 命令信道端口口!如前面 Wu FTP 所说明的,FTP 
#     命令通道通常为 21 
# Umask :与建立目录及档案的预设属性有关的设定喔!用 022 就够了!
# MaxInstances:同一时间允许的联机数目,这个设定项目与 process (PID) 有关! 
#        所以您的 FTP 主机中,proftpd 启用的 process 最多能有30个 
#       这个与 MaxClients 不一样喔! 
# User 与 Group:proftpd 预设的服务启动者!后面接的使用者与群组 
#        必须在 /etc/passwd 与 /etc/group 里面存在方可! 
ServerName                      "这个是测试用的 Proftp 主机" 
ServerType                      inetd 
DefaultServer                   on 
Port                            21 
Umask                           022 
MaxInstances                    30 
User                            nobody 
Group                           nobody

# 底下则是与目录有关的设定!在这个设定中,显示允许读写与覆盖档案! 
# AllowOverwrite 就是允许覆写的意思! 
<Directory /> 
  AllowOverwrite                on 
</Directory> 

 

实例1:演示,配置匿名用户,匿名用户下有两个目录,server和test,server目录可以上传下载文件,但是不可以删除。

Test目录,所有权限都有:
<Anonymous /var/ftp>
  User                          ftp
  Group                         ftp
  UserAlias                     anonymous ftp
  MaxClients                    10
  DisplayLogin                  welcome.msg
  DisplayFirstChdir             .message
  TransferRate  STOR    100  user anonymous,ftp
<Limit WRITE>
    DenyAll
  </Limit>
</Anonymous>

<Directory server>
<Limit STOR MKD>
    ALLOWAll
  </Limit>
</Directory>

<Directory test>
<Limit STOR MKD WRITE>
    ALLOWAll
  </Limit>
</Directory>

重启ftp服务器。

 

 

例子2:用户组配置权限
1、建立所需要的群组与使用者: 
  建立一个群组为 admin,此外,所有相关的使用者都是这个群组!
[root@CentOS5 root]# groupadd admin
[root@CentOS5 root]# useradd -M -g admin -s /bin/false test01 
[root@CentOS5 root]# useradd -M -g admin -s /bin/false test02 
[root@CentOS5 root]# useradd -M -g admin -s /bin/false test03 
[root@CentOS5 root]# passwd test01
……
2、、建立所需要的 FTP 相关路径: 
要的路径在 /var/ftp2 当中,而且 admin 必须要能够写入
[root@test root]# mkdir -p /var/ftp2 
[root@test root]# mkdir -p /var/ftp2/upload 
[root@test root]# mkdir -p /var/ftp2/work 
[root@test root]# chmod -R 775 /var/ftp2 
[root@test root]# touch /var/ftp2/work/ratio.dat
[root@test root]# touch /var/ftp2/work/ratio.tmp 
[root@test root]# chown -R test01:admin /var/ftp2 
[root@test root]# chmod 666 /var/ftp2/work/*
3、建立基本的配置文件: 
[root@test root]# vi /usr/local/proftpd/etc/proftpd.conf
<Directory /var/ftp2>
  AllowOverwrite               no
<Limit CMD>
DenyUser admin
</Limit>
<Limit WRITE DELE STOR>
DenyUser test01
</Limit>
TransferRate RETR 500 user test01
TransferRate STOR 500 user test01
</Directory>

UserRatio               test01  0  0 2 100000
UserRatio               test02  0  0 1  30000 
UserRatio               test03  0  0 1  30000 

<Directory /var/ftp2> 
  Umask                 002 
  TransferRate  RETR    50  group  admin
  <Limit WRITE> 
    Denyall 
  </Limit>
</Directory>
<Directory /var/ftp2/upload/*> 
  <Limit READ> 
    Denyall 
  </Limit> 
  <Limit WRITE> 
    Allowall
 </Limit> 
</Directory>

重新启动! 

 

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值