SERV-U 的配置文件详解

yizhihongxing

SERV-U 的配置文件详解

背景

SERV-U是一款FTP服务器软件,其配置文件是控制Server的行为的核心文件,包括用户、密码、访问权限等内容。因此理解SERV-U的配置文件是极其必要的。

配置文件介绍

SERV-U的配置文件是单一的INIR文件格式,其路径为: \Serv-U\domain\FTPServer.ini

配置文件的结构类似于Windows的注册表结构,主要由Section和Key两部分组成。其结构如下所示:

[Section]   ; Section头需要放在[]中
Key=Value   ; Key和Value之间使用等号连接,并且需要在行末添加分号

比如下面是一个Section和Key的示例:

[Settings]
LogFile=C:\Serv-U\FTPLogs\serv-u.log ;

其中[Settings]是Section的名称,LogFile是Key的名称,C:\Serv-U\FTPLogs\serv-u.log是LogFile对应的Value。

配置文件主要部分分析

用户配置

SERV-U配置文件中增加或删除用户非常简单。用户部分的内容是在 [Users] Section中的,一个新的用户需要在[Users]中增加一个Section。

具体格式如下:

[Users]
[User Name] ; 用户名
Password=密码 ; 密码(注意区分大小写)
HomeDir=路径 ; 用户根目录路径
QuotaMB=配额 ; 用户磁盘配额(单位MB)

例如创建名字为test的用户:

[Users]
[test]
Password=abcd1234
HomeDir=C:\Serv-U\FTP_Root\test
QuotaMB=50

权限配置

SERV-U的权限控制主要分两部分:限制用户访问的FTP端口、以及在共享资源中限制的复制和修改。

FTP端口受限制通过在setting中配置,例如:

[Settings]
Port=21,23,2000-2200 ; 允许使用的端口(使用“,”分隔和 “ - ”区间表示端口范围)。

资源访问权限控制是通过[Shares]Section来完成的,每个共享都在[Shares]中定义为一个Section:

[Shares]
[Share Name]
Folder=文件夹路径
Access=XXX

XXX是关于此共享的权限信息。权限可以组合:

  • R:读
  • W:写
  • D:删除
  • X:重命名
  • M:创建目录
  • C:创建文件

例如一个设置了读和写的资源共享:

[Shares]
[My Share]
Folder=C:\Serv-U\FTP_Root\myshare
Access=RW

示例说明

示例一:设置FTP服务监听端口

[Settings]
Port=21, 23, 2000-2200 ; 允许使用的端口(使用“,”分隔和 “ - ”区间表示端口范围)。

以上配置允许使用21, 23以及2000到2200的端口,例如访问ftp.createServer.com:21。

示例二:限制用户访问FTP资源

[Shares]
[My Share]
Folder=C:\Serv-U\FTP_Root\myshare
Access=R

以上配置的含义是:只允许用户读取My Share共享资源,不允许写入和删除任何文件。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:SERV-U 的配置文件详解 - Python技术站

(0)
上一篇 2023年6月25日
下一篇 2023年6月25日

相关文章

  • Java基于栈方式解决汉诺塔问题实例【递归与非递归算法】

    Java基于栈方式解决汉诺塔问题实例【递归与非递归算法】 算法介绍 汉诺塔问题是经典的递归算法示例。简单来说,汉诺塔问题是将一堆盘子从源柱子移动到目标柱子,可以借助第三个柱子,且每次只能移动一个较小的盘子到目标柱子上。其中,要求大的盘子必须在小的盘子之下。 为了解决汉诺塔问题,我们需要使用递归算法或非递归算法。其中,递归算法简单易懂,但是算法时间效率低,可能…

    other 2023年6月27日
    00
  • android 下载时文件名是中文和空格会报错解决方案

    当 Android 下载时文件名中含有中文和空格时可能会导致报错,例如文件名为“中 文.mp4”或者“space file.txt”。这是因为 HTTP 标准协议中规定文件名中不能含有空格和中文等特殊符号,所以需要对文件名进行编码。 解决方案如下: 1. 使用 URL 编码 在 HTTP 协议中,URL 编码主要是将所有非 ASCII 字符转换为 % 符号后…

    other 2023年6月26日
    00
  • Vue路由切换页面不更新问题解决方案

    当使用Vue.js进行单页应用开发时,我们经常会使用Vue Router来实现路由切换。但是,有时候在切换路由时,页面并没有更新,这很可能是因为使用了相同的组件。下面是解决这个问题的完整攻略: 问题描述 使用Vue Router切换页面时,发现页面没有更新,但是路由确实已经切换了。我们在页面中进行各种操作,也不会触发重新渲染组件的过程。 分析问题 这个问题通…

    other 2023年6月26日
    00
  • 高德地图SDK使用经验

    高德地图SDK使用经验 高德地图SDK是一款提供地图、定位、导航等功能的开发工具包,可以帮助开发者快速集成地图相关功能到自己的应用中。本文将介绍如何使用高德地图SDK,并分享一些使用经验。 SDK下载和集成 首先,需要从高德地图官网下载SDK,并将其集成到自己的应用中。可以按照以下步骤进行集成: 下载SDK。可以在高德地图官网上下载最新版本的SDK。 解压S…

    other 2023年5月5日
    00
  • android之计时器(Chronometer)的使用以及常用的方法

    Android之计时器(Chronometer)的使用以及常用的方法 简介 Chronometer 是 Android 中的一个计时器控件,它可以用于显示和管理时间的计时。本攻略将详细介绍如何在 Android 应用中使用 Chronometer 控件,并提供一些常用的方法示例。 步骤 步骤 1: 在布局文件中添加 Chronometer 控件 首先,在你的…

    other 2023年8月21日
    00
  • Lua中的string库(字符串函数库)总结

    Lua中的string库(字符串函数库)提供了一系列常见的字符串操作函数,本篇攻略将对这些函数进行详细的讲解和总结。 一、字符串的基础操作 1. 字符串长度 字符串长度可以通过#运算符来获取,如下所示: local str = "hello world" print(#str) –> 11 2. 字符串连接 Lua中,使用..运算…

    other 2023年6月20日
    00
  • jquery 构造函数在表单提交过程中修改数据

    jQuery构造函数在表单提交过程中修改数据攻略 1. 获取表单数据 在提交表单之前,需要获取表单中的数据。可以使用jQuery的serialize()方法来序列化表单数据,也可以使用val()方法获取指定表单元素的值。示例代码如下: // 获取整个表单数据 var formData = $(‘form’).serialize(); // 获取指定表单元素的…

    other 2023年6月26日
    00
  • 果粉必看!50个苹果iOS9实用小技巧汇总(全部一一验证)

    果粉必看!50个苹果iOS9实用小技巧汇总(全部一一验证)攻略 1. 使用Spotlight搜索 在iOS 9中,你可以使用Spotlight搜索功能来快速找到你需要的应用、联系人、音乐等。只需在主屏幕上向下滑动,然后在搜索栏中输入关键词即可。 示例说明:如果你想找到名为“Evernote”的应用,只需在Spotlight搜索栏中输入“Evernote”,然…

    other 2023年8月18日
    00
合作推广
合作推广
分享本页
返回顶部