顶九网服务器搭建手册之AMPF环境搭建(10)

配置文件详解

 

pure-ftpd.conf

 

 

ChrootEveryone yes

chroot每一个用户,等同于Proftpd 中的DefaultRoot~ , 可以限制用户在某个地方活动,增强服务器的安全性。使用户不能通过cd命令进入上一级目录。

TrustedGID                                                                         50

#以上两者要一起用

 

 

BrokenClientsCompatibility                                                 no

 

 

MaxClientsNumber                                                         50

#最大链接数

 

 

Daemonize                                                                         yes

#Fork in background 以守护进程方式在后台运行

 

 

MaxClientsPerIP                                                                 5

#每个ip最多链接数,最好设小点。

 

 

VerboseLog                                                                         no

#是否要把所有client端的指令都log下来

 

 

DisplayDotFiles                                                                 no

#显示开头的文件

 

 

AnonymousOnly                                                                 no

#是否只让匿名登录

 

NoAnonymous                                                                 no

#不开放匿名登入

 

 

SyslogFacility                                                                 ftp

#应该是对日志做一下过滤 (auth, authpriv, daemon, ftp, security, user, local*)可以让日志只记录想要的信息

 

 

DontResolve                                                                         yes

#不反向解释客户端的ip

 

 

MaxIdleTime                                                                         5

#最大闲置時間

 

 

#LDAPConfigFile                                                                 /usr/local/pureftpd/etc/pureftpd-ldap.conf

#使用LDAP认证,

 

 

MySQLConfigFile                                                         /usr/local/pureftpd/etc/pureftpd-mysql.conf

#使用MySQL认证

 

 

#PGSQLConfigFile                                                         /usr/local/pureftpd/etc/pureftpd-pgsql.conf

#使用PGSQL认证

 

 

#PureDB                                                                         /ftp/etc/pureftpd.pdb

#使用者资料的DB存放地点 [由于我是用PureFTPD的內建DB.固有此选项]

 

 

#ExtAuth                                                                         /var/run/ftpd.sock

#pure-authd socket 路径 (详细请看 README.Authentication-Modules)

 

 

#PAMAuthentication                                                         yes

#开启PAM认证

 

 

#UnixAuthentication                                                         yes

#如果你想要有简单的Unix(/etc/passwd)的认证的話

 

FortunesFile                                                                         /usr/local/pureftpd/etc/.welcome

#显示的欢迎信息文件,你可以创建该文件,输入一些文字,然后你重启你的FTP服务,就会有意外的发现。

 

 

LimitRecursion                                                                 2000 8

#ls最多列出3000个文件.最深8层

阅读更多

顶九网服务器搭建手册之AMPF环境搭建(9)

十三、增加ftp启动项.

# vi /etc/rc.conf

添加

pureftpd_enable=”YES”

 

保存退出,重启电脑。

 

附pure-ftp编译参数及配置文件选项说明

安装参数详解

 

–with-everything: 编译一个几乎所有特性都开启的“大”服务器。

 

 

–with-paranoidmsg: 当该参数被开启,不论何种原因登录失败都将显示同样的信息给用户。不开启该参数是,密码问题将显示“验证失败”,被禁止用户将显示“对不起,我不信任你”。

 

 

–with-virtualchroot:通常一个用户使用chrooted(使用-A 和 -a 参数)命令不会转出他的home目录。开启该功能之后将使其成为可能:符号连接总是一起作用,甚至他们指向的目录不在用户的home目录内。这对于共享路径是一个非常拥有的功能(例如,每一个home目录下都有一个符号连接到/var/incoming)。该功能默认不开启。

 

 

–with-tls \

 

 

–with-largefile: 支持在32位架构下下载大于2 gigabytes 的文件。通过FTP传输一个如此之大的文件是一个较为奇怪的主意。并且你的文件系统,你的系统内核、你的FTP客户端也需要支持才行。并且当该功能被开启后,下载将会比不开启变慢(或需要耗费更多的CPU)。简单的说,不要应为好玩而开启该功能,除非你真的计划下载大于gigabytes的文件。

 

 

–with-welcomemsg: (为兼容)其它FTP服务器pure-ftp可以阅读 ‘welcome.msg’ 。这是一个安全的缺陷(匿名用户可以上载’welcome.msg’文件到随机显示)。Pure-ftpd 默认使用 ‘.banner’文件。

 

 

–with-uploadscript: 自从0.98版开始, Pure-FTPd 开始关注上传。当一个上传成功完成之后,任何额外的程序或脚本可以被自动启动。该功能需要一个称为“pure-uploadscript”的程序安装在Pure-FTPd包内。

 

 

–with-cookie: 在用户登录的时候显示随机或定制的信息。

 

 

–with-virtualhosts: 支持虚拟主机。这意味着每个IP地址可以有不同的匿名FPT区域。如果服务器只有一个IP地址,就不需要该功能。但是如果有多个IP地址,并且需要一个客户端连接到IP xxx 去获得/etc/pure-ftpd/xxx/而不是~ftp/,就可以开启该功能。

 

 

–with-virtualroot \ //虚拟root支持

 

 

–with-diraliases: 支持路径的别名。

 

 

–with-quotas: 开启虚拟限额,可以限制一个用户可以在他的帐号下存储的最大数字,也可以限制总的大小。

 

 

 

–with-sysquotas: 支持系统限额(非Pure-ftpd的虚拟限额)。只有在计划使用系统限额的时候启用。

 

 

–with-ratios: 支持上传/下载比。

 

 

–with-ftpwho: 支持’pure-ftpwho’ 命令。开启这个功能需要额外的内存。当pure-ftp运行在standalone模式时比较好,在inetd模式下启用较慢。

 

 

 

–with-throttling: 支持带宽限制。

 

 

其它参数

 

 

–with-altlog: 除系统输出,还支持一些特殊的文件格式,目前已实现:CLF, Stats, W3C 和 xferlog 格式

CLF (通用日志格式)是Apache, WebFS, Roxen以及其它最常用 web 服务器的基本格式;该日志文件仅仅记录文件传输,可以被web流量统计软件(Analog, Webalizer, etc.) 所分析。Stats格式是一种专门为日志文件分析软件设计的特殊输出格式。W3C格式是一种商业日志分析软件(所有支持IIS日志的分析器)的标准格式。Xferlog 是一种源于wu-ftpd的格式。

 

 

–with-brokenrealpath: 一些 Solaris 版本中realpath()运行不可靠。如果altlog和(或)pure-uploadscript没有很好的运行,请用这个参数重新编译。

 

 

–with-certfile=<file>;:  该file用来做SSL认证,默认为 /etc/ssl/private/pure-ftpd.pem .

 

 

–with-extauth: 支持额外的校验模块。大多数用户不需要此参数。.

 

 

所支持语言

–with-language=english

–with-language=german

–with-language=romanian

–with-language=french

–with-language=polish

–with-language=spanish

–with-language=danish

–with-language=italian

–with-language=brazilian-portuguese

–with-language=slovak

–with-language=dutch

–with-language=korean

–with-language=swedish

–with-language=norwegian

–with-language=russian

–with-language=traditional-chinese

–with-language=simplified-chinese

–with-language=hungarian

–with-language=catalan

–with-language=czech: change the language of server messages.

默认为英语。

 

 

–with-ldap: 支持原始的LDAP路径。当该功能被开启,系统帐号将被忽略。你同时需要使用OpenLDAP。如果OpenLDAP被安装在一个特定的位置,你可以使用–with-ldap=<directory>; 的参数。

 

 

 

–with-minimal: 为有效运用现代FTP客户端的功能,Pure-FTPd采用基本的FTP协议加扩展(SITE IDLE,SITE CHMOD, MLSD, …)的方式 。使用 –with-minimal 参数,这些扩展间不会被编译。同样的,也就不会有standalone server, 不会有lookup for user/group names, 不会有 humor也不会有 ASCII 的支持。但是执行文件将会比默认安装更小。该参数你至少需要GCC 3.3 以上来编译。如果你还想减少(执行)文件大小,可以采用–without-globbing 关联–with-minimal参数。如果你建立一个嵌入系统,可以这样使用;在其它场合,为避免客户的抱怨(特别是使用windows客户端的客户),请忘记它吧

 

 

–with-mysql: 使用MySQL来提供用户数据库。当开启该参数,系统帐号被忽略。使用该功能MySQL 客户端的库文件将被安装。如果MySQL安装在特殊位置,可以使用–with-mysql=<directory>; 语法。

 

 

–with-nonroot: 设置服务以非root特权用户启动。任何普通用户都可以运行服务。这对于在服务器上只有一个受限帐号的情况非常有用。但是一些特性将不能使用,而且密码只能通过LDAP,SQL或PureDB进行校验。当虚拟 chroot 被开启,用户将被限制在服务启动的目录。这是一种不安全的模式,一般用于普通(非root)用户建立临时性的服务器。在standalone模式下,2121端口将被侦听。如果想采用nonroot模式,需要编译并安装该软件(./configure –prefix=… && make install-strip) . /sbin, /bin and /man 目录需要被写入 prefix,同时还需要增加运行pure-ftpd用户在 /etc 目录的读写权限。

阅读更多