`
whp0731
  • 浏览: 174774 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
社区版块
存档分类
最新评论

目前几种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>

重新启动! 

 

 

 

分享到:
评论

相关推荐

    简易ftp服务器 简单易用ftp服务器

    "简易ftp服务器"和"简单易用ftp服务器"指的是那些设计简洁、易于理解和操作的FTP服务器软件,通常适合个人用户或小型企业使用,它们提供基础的文件上传和下载功能,满足基本的文件共享需求。 FTP服务器系统的核心...

    易语言源码最简单的FTP服务器.7z

    在易语言中构建FTP服务器,你需要理解以下几个关键知识点: 1. **网络通信基础**:首先,你需要了解TCP/IP协议族,特别是TCP(传输控制协议)和UDP(用户数据报协议),因为FTP通常基于TCP进行文件传输。易语言提供...

    java实现FTP服务器

    构建Java FTP服务器涉及到几个关键步骤: 1. **初始化服务器**:设置服务器监听的端口,通常为21号端口,并创建一个线程来处理每个连接请求。 2. **处理客户端请求**:当客户端连接时,服务器需要解析客户端发送的...

    MFC编的FTP服务器

    FTP服务器主要由以下几个关键组件构成: 1. **监听器(Listener)**:FTP服务器的核心部分,负责监听特定端口(默认为21)上的连接请求。在MFC中,可以使用CAsyncSocket类来创建一个监听套接字,通过OnAccept函数...

    最小的FTP服务器

    总的来说,"最小的FTP服务器"是一种快速上手的工具,适用于个人或小型团队在本地网络或互联网上快速分享文件。尽管它可能不包含大型企业级FTP服务器的所有高级功能,但足以满足基础的文件传输需求。

    守望迷你ftp服务器守望迷你ftp服务器

    【标题】: "守望迷你ftp服务器守望迷你ftp服务器" 【描述】: "守望迷你ftp服务器守望迷你ftp服务器守望迷你ftp服务器" 在IT行业中,FTP(File Transfer Protocol)是一种广泛应用的网络协议,主要用于在互联网上...

    国内较好的FTP服务器.pdf

    根据资源类型,FTP服务器可以分为以下几类: * 教学资源服务器:提供教学书籍、视频、音频等资源,如ftp://211.92.132.243、ftp://210.34.159.18等。 * 娱乐资源服务器:提供电影、音乐、图片等资源,如ftp://218....

    守望迷你ftp服务器 守望迷你ftp服务器

    1. **快速部署**:该软件设计简洁,用户界面友好,使得FTP服务器的搭建过程变得极其简单,只需几步操作就能完成服务器的设置和启动,大大降低了技术门槛。 2. **安全控制**:FTP服务器的安全性至关重要。守望迷你...

    ftp服务器配置说明

    ### FTP服务器配置说明 #### 一、FTP服务概述 FTP(文件传输协议,File Transfer Protocol)是一种用于在网络上进行文件传输的标准协议。它主要用于在FTP服务器和FTP客户端之间完成文件的双向传输,即从服务器下载...

    FTP服务器配置与管理

    FTP服务器配置与管理 FTP 服务器配置与管理是操作系统服务及管理的重要组成部分,本节实验旨在掌握 FTP 服务的工作原理、学会配置 vsftpd 服务器并实践典型的 FTP 服务器配置案例。 FTP 服务工作原理 FTP 服务器...

    ftp服务器 源代码

    开发FTP服务器时,你需要关注以下几个步骤: 1. **设置服务器配置**:包括监听IP地址、端口号、最大连接数等。 2. **实现用户认证**:根据需求选择合适的认证方式,并编写对应的认证逻辑。 3. **处理FTP命令**:编写...

    2款轻量FTP服务器软件

    在这个主题中,我们将探讨两款轻量级的FTP服务器软件——FTPServer和Ocean FTP Server,它们以其小巧的体积、无需安装和简单的配置特性,非常适合个人网站的FTP服务搭建。 FTPServer是一款简洁而高效的FTP服务器...

    FTP服务器的代码

    在这个"FTP服务器的代码"中,我们可以深入探讨FTP服务器的工作原理、FTP服务器的实现以及如何使用代码创建和管理FTP服务。 FTP服务器是运行FTP协议的软件,允许用户从远程位置上传和下载文件。FTP服务器的核心功能...

    Windows一键搭建FTP服务器工具

    Windows系统中,我们可以使用各种工具来快速搭建FTP服务器,其中就包括一些一键安装和配置的工具。本篇文章将详细介绍如何使用名为"FTPserver.exe"的工具在Windows上搭建FTP服务器,并讨论其支持的权限控制功能。 ...

    本地创建FTP服务器

    在本地创建FTP服务器,你可以选择以下几种常见的FTP服务器软件: 1. **FileZilla Server**:这是一个开源、免费的FTP服务器软件,适合个人和小型企业使用。它易于安装和配置,支持多用户访问控制,可以设置不同的...

    用c++写的ftp服务器端

    C++ FTP服务器的核心功能可能包括以下几个部分: 1. **连接管理**:服务器需要监听特定端口(通常是21),等待客户端的连接请求,并建立TCP连接。 2. **命令解析**:服务器接收客户端发送的FTP命令,如`USER`(认证...

    21CN迷你ftp服务器

    1. **快速设置**:只需几步简单的操作,你就能启动FTP服务器。首先,运行压缩包内的FtpServer.exe程序,然后选择你希望作为FTP根目录的本地文件夹。这样,所有在这个目录下的文件和子文件夹都将对外提供FTP服务。 2...

    简单的FTP服务器实现

    FTP服务器的实现通常涉及以下几个关键知识点: 1. **服务器架构**:FTP服务器通常采用C/S(Client/Server)架构,即客户端-服务器模式。服务器端负责接收并处理客户端的请求,客户端则发送命令以执行各种操作,如上...

    ftp.zip_FTP服务器_c ftp_c# ftp服务器_ftp_ftp 服务器

    FTP服务器的编程实现通常涉及以下几个步骤: 1. **监听连接**:创建一个监听特定端口(如默认的21号端口)的服务器端套接字,等待客户端连接。 2. **处理控制连接**:接收到连接请求后,服务器与客户端建立控制连接...

    最简单的FTP服务器软件

    总的来说,"最简单的FTP服务器软件"为用户提供了一种便捷的文件共享方式,尤其适合个人或小型团队在有限的技术知识背景下进行文件交换。它简化了FTP服务器的复杂性,让不具备专业IT知识的用户也能轻松搭建和管理自己...

Global site tag (gtag.js) - Google Analytics