CentOS54下安装配置Pureftpd.docx
- 文档编号:7031368
- 上传时间:2023-05-11
- 格式:DOCX
- 页数:16
- 大小:29.61KB
CentOS54下安装配置Pureftpd.docx
《CentOS54下安装配置Pureftpd.docx》由会员分享,可在线阅读,更多相关《CentOS54下安装配置Pureftpd.docx(16页珍藏版)》请在冰点文库上搜索。
CentOS54下安装配置Pureftpd
CentOS5.4下安装配置Pure-ftpd
一.Pure-ftpd的特点:
1.支持命令行执行参数和xxx.conf文件配置启动,而且命令参数方式效率更高
2.能够完美解决windows客户端因为utf8字符集而导致的中文乱码问题
3.资源占用小、功能强大、操作简便
二.下载安装
1.下载:
2010年6月,最新版本是pure-ftpd-1.0.29.tar.gz
2.安装
解包到任意目录,建议在/tmp下
#tar-xzvfpure-ftpd-1.0.29.tar.gz
#cdpure-ftpd-1.0.29/
#./configure--prefix=/opt/pureftpd--with-language=simplified-chinese--with-everything
注:
--without-standalone不能以standalone的方式执行ftpd.
--without-inetd不能以inetd的方式执行ftpd.
--without-iplogging做log時不将IP地址给log下來.
--without-shadow不做shadow.除非是用PAM,LDAPorSQL.不然极不建议拿掉.
--without-usernames文件列表只会列出UID&GID,不列出实际userorgroupname.
--without-humor嘿嘿嘿....
--without-ascii不支持7-bitstransfers(ASCII).
--with-paranoidmsg唔....不知该怎么说.算是可以给特定人的信息吧.
--with-sysquotas吃系统的quota设定.
--with-minimal最小化安裝.
--with-pam
--with-puredb
--with-ldap
--with-mysql
--with-pgsql
以上五种都是存储资料的格式?
!
(算吧?
!
).看你比较习惯什么.我是比较喜欢用puredb.
--with-altlog留log拉....
--with-cookie使用者进站看到的东东.类似进站画面.
--with-ratios上下传比.
--with-throttling频宽可设限.
--with-ftpwho可用pure-ftpwho來看线上使用者.像是Serv-u的线上状态.
--with-uploadscript当一个文件被完整上传完后自动呼叫某一script去对这个文件处理.当然.这个script得你自己写.
--with-largefile支持下载超过2G的文件.
--with-virtualhosts跟http的virtualhost有异曲同工之妙.
--with-virtualchroot配合上面的chroot.
--with-diraliases跟Serv-U上面的link功能一样.
--with-nonroot不需root权限.一般user即可启动ftpd.
--with-quotas使用quota.(非系统下的quota)
--with-peruserlimitsenableper-userconcurrencylimits.Avoidthisonveryloadedservers.(太难翻译了)
--with-everything所有功能全上.
--with-language=traditional-chinese显示出来的信息的语言.缺省为英语.意外的发现.在config.h中作者以为大陆用traditional-chinese台湾用simplified-chinese.但不管如何,这不影响我们的使用
--prefix是安装的目标目录,安装于/opt/pureftpd比较好找,而且/opt文件夹本身就是用来存放安装文件的地方。
编译安装:
#make
#makeinstall
把一些东东搬到该放的位置.
#chmod755configuration-file/pure-config.pl
#cpconfiguration-file/pure-config.pl/opt/pureftpd
#cpconfiguration-file/pure-ftpd.conf/opt/pureftpd
至此PureFTPD就这样装完了
三.建立用户
pureftp默认的是采用linux的用户,比如用root登录等等。
此处同时采用其自带的virtualusers系统,该系统独立于linux。
建立一个ftp用户的文件夹,这也就是匿名用户。
#mkdir/var/ftp
建立一个ftp用户与组:
#groupaddftpgroup
#useradd-gftpgroup-d/var/ftp-s/etcftpuser
进入安装执行目录
#cd/opt/pureftpd/bin
建立第一个虚拟用户:
#./pure-pwuseradd123-uftpuser-d/var/ftp-f/opt/pureftpd/pureftpd.passwd
说明:
123是用户名,-uftpuser是其实际的linux用户,-d指定起始目录,并锁定于该目录。
如果不锁定,则用-D
如果需要不同的权限,可以建立新的linux用户与组,-f新建的用户passwd文件所在的地方。
建立用户数据库:
#./pure-pwmkdb/opt/pureftpd/pureftpd.pdb-f/opt/pureftpd/pureftpd.passwd
说明:
今后每添加或修改用户数据库都应该执行一次mkdb,执行后不需要重起ftp
四.配置
Pure-ftpd可以用两种方式来配置,一种是命令参数方式,另一种通过读取xxx.conf文件实现配置。
命令参数方式、xxx.conf文件参数列举如下:
-0“NoTruncate”Yes|No
当有与你上传的同名文件时,原文件既不删除也不截断。
上传将被放到临时文件中,一次完成上传后将以原子操作方式将文件切换到新版本上。
注意:
此选项不能同-n一起使用。
-1“LogPID”Yes|No
将PID添加到日志文件中。
如果-f设置为none,此参数将被忽略
-4“IPV4Only”Yes|No
只使用ipv4
-6“IPV6Only”Yes|No
仅使用ipv6
-A“ChrootEveryone”Yes|No
除root用户,所有用户将被chroot
-a“TrustedGID”gid
除了属于指定组的用户和root用户,所有用户将被chroot到自己的home目录。
匿名用户将一直被chroot,不需指定此选项。
-b“BrokenClientsCompatibility”Yes|No
兼容ie等比较非正规化的ftp客户端。
-B“Daemonize”Yes|No
以守护程序方式启动
-C“MaxClientsPerIP”maxconnects
每ip最大并非连接数。
限制来自同一ip的并发连接数。
这也是防止单个用户引发DOS攻击和带宽耗尽的非常有效的方法。
此选项仅当服务以守护程序方式启动时才有效(如你使用super-server启动服务,它应该有效)。
如此值为2,它不意味着总的连接数被限制为2。
但同一用户,来自同一台机器(或至少同一IP),不能多于两个并发数。
此特性需要消耗一些内存来跟踪IP地址,但建议使用它。
-c“MaxClientsNumber”clients
允许最大的并发连接数。
此值至少是1,如指定了-p参数,此值被强制降至端口数一半一下。
如果客户连接数超过此值,新的连接将被立刻拒绝,即使想上传或标准用户登录。
因此,使用-m作为首要的过载保护是明智的。
此值默认为50。
-d“VerboseLog”Yes|No
打开调试日志。
每个命令将被日志,除了PASS被日志为“
如重复-d,服务器回应也将被日志。
-D“DisplayDotFiles”Yes|No
允许显示'.'文件或目录。
-e“AnonymousOnly”Yes|No
仅允许匿名服务。
-E“NoAnonymous”Yes|No
仅允许非匿名服务。
-f“SyslogFacility”facility
缺省的功能(facility)是"ftp"。
"none"将禁止日志。
-F“FortunesFile”filename
显示随机有趣的登录信息。
信息从文本文件中读取,以标准的fortune格式。
如你已经安装fortune软件包,你将有个目录(通常是/usr/share/fortune)中包括二进制文件(xxxx.dat)和文本文件(没有.dat扩展名的)。
-g--pidfile
在standalone(守护方式)下,写PID到指定文件中替代/var/run/pure-ftpd.pid
-G“NoRename”Yes|No
指定此选项后,不允许用户对文件改名,即使他是文件或目录的拥有者。
-h--help
-H“DontResolve”Yes|No
不解析主机名(“192.0.34.166”将被日志代替“”)。
在繁忙的服务器上将明显提高连接速度、减少带宽使用。
应该在公共ftp上使用此选项。
-I“MaxIdleTime”timeout
修改最大空闲时间。
超时时间以分钟计,缺省为15分钟。
-i“AnonymousCantUpload”Yes|No
不允许匿名用户上传,无论目录权限如何。
此选项对虚拟主机特别有用,避免用户使用他们的帐号建立warez网站(盗版软件站)。
-j--“CreateHomeDir”Yes|No
如果用户home目录不存在,自动建立它。
新建的home目录属于用户,权限按当前目录掩码设置。
为避免本地攻击,上级目录绝不能属于不可信用户。
-K“KeepAllFiles”Yes|No
允许用户恢复和上传文件,却不允许删除他们。
目录可以删除,但必须是空目录。
-k“MaxDiskUsage”percentage
当所在磁盘分区使用超过百分之X时,将不在接受新的上传。
例如:
-k95将确保ftp用户空间占用决不会超过磁盘的95%。
-l--很重要的一个参数,说明用户认证方式。
使新的认证方法生效。
它可以是下列之一:
“UnixAuthentication”Yes|No
-lunix,标准的认证(/etc/passwd);
“PAMAuthentication”Yes|No
-lpam,PAM认证;
“LDAPConfigFile”LDAPconfigfilename
-lldap:
LDAP配置文件,LDAP目录认证;
“MySQLConfigFile”MySQLconfigfilename
-lmysql:
MySQL配置文件,MySQL数据库认证;
“PGSQLConfigFile”Postgresconfigfilename
-lpgsql:
Postgres配置文件,Postgres数据库认证;
“PureDB”PureDBdatabasefilename
-lpuredb:
PureDB数据库文件,PureDB数据库认证;
“ExtAuth”ExtAuthfilename
-lextauth:
pure-authd套接字路径,外部认证处理程序。
不同的认证方法可以混合在一起。
例如,如果你指定了-lpuredb:
/etc/pwd.pdb-lmysql:
/etc/my.cf-lunix参数运行服务器,用户帐号首先使用PureDB数据库认证。
如果失败了,MySQL服务器将被查询。
如果数据库中不能发现帐号,将在unix标准中搜索。
认证方法按照你给定-l选项顺序进行尝试。
有关内建的LDAP目录和SQL数据库支持请查看README.LDAP和README.MySQL文件。
-L“LimitRecursion”maxfiles:
maxdepth
为避免DOS攻击限制ls命令的目录列表文件数和最大的子目录深度。
缺省为2000:
5(2000是ls命令显示文件数,5是子目录级数)。
111:
222第一个参数是浏览时显示的最大文件数,第二个参数是ls-R时最深的文件夹层数
-M“AnonymousCanCreateDirs”Yes|No
允许匿名用户新建目录
-m“MaxLoad”load
如用户连接数量超过load,则不允许匿名用户下载文件。
但一直允许上传文件和目录列表,实际的用户可以下载。
用户只有在尝试着去下载文件时才会得到不允许下载的通知。
-N“NATmode”Yes|No
强制主动模式。
如果你的ftp服务器在不支持FTP**的NAT主机后边,或如你使用端口重定向而没有透明ftp**,就使用此选项。
好,前面的表达不是很清楚。
如果你的网络象下面这个:
ftp--NATgateway/router--Internet
并且如果你想让别人能从Internet访问你的ftp服务器,请先不要尝试设置此选项。
如果Netscape客户端能够连接且没有任何问题,你的NAT网关规则不错。
如果netscape不能显示目录列表,你的NAT网关够衰。
使用此选项试一试。
-n“Quota”maxfiles:
maxsize
使虚拟配额生效,.ftpquota文件被建立,用户的文件数被限定为maxfiles。
他的目录大小被限定在maxsizeM字节。
受信任组成员不受此限制。
-o“CallUploadScript”Yes|No
使pure-uploadscript生效。
也就是上传完文件后调用指定脚本做处理。
-O“AltLog”format:
logfile
记录所有的文件传输到一指定的日志文件,以另外一种格式。
当前,支持3种格式:
CLF,Stats,W3C和xferlog。
用法为stats:
/opt/pureftpd/123.log,或者xferlog:
/opt/pureftpd/123.log
-p“PassivePortRange”first:
last
被动模式下下载使用first到last范围内的端口。
这意味着客户端将不会尝试打开tcp连接到服务器first到last之外的端口,这使得pure-ftpd与包过滤软件更兼容。
注意如果最大连接数(-c指定)大于(last+1-first)/2的话将被被强制降到此值。
(端口范围的语法与IPTABLES相同,方便双方的设置)。
-P“ForcePassiveIP”IP|hostname
强制指定的IP答复PASV/EPSV/SPSV命令。
如你的服务器在一台不能适当处理ftp状态的NAT机器后面,把NAT主机地址写在这儿。
如你使用的是动态ip地址,你可以使用符合主机名(或许是你的网关),每次有新的客户端连接,它的地址被解析。
-q“AnonymousRatio”upload:
download
使匿名用户上传/下载比率生效(例如:
-q1:
5意味着每上传1M可以下载5M的数据)。
-Q“UserRatio”upload:
download
使匿名和非匿名用户的上传下载比率生效。
如-a选项也一起使用,受信任组用户没有比率限制。
-r“AutoRename”Yes|No
决不覆盖存在的文件。
上传一个文件已经存在的文件引起自动改名。
文件被叫做xyz.1,xyz.2,xyz.3等。
-R“NoChmod”Yes|no
不允许用户(即使是非匿名用户)使用CHMOD命令。
在开放服务的主机上,这可以避免新手犯错误,象对他们的home目录设置错误的权限。
若此选项有效,仅root允许使用CHMOD。
-s“AntiWarez”Yes|No
不允许匿名用户下载所有者是“ftp”的文件(通常,文件是其它匿名用户上传的)。
-S“Bind”[{ipaddress|hostname}][,{port|servicename}]
这个选项只有当服务器以守护程序方式启动时才有效。
到指定的ip和端口的连接被接受。
支持ipv4和ipv6。
可以接受数字或全称主机名。
服务名(看/etc/services)可以用来代替数字端口号
-t“AnonymousBandwidth”bandwidth|upload-bandwidth:
download-bandwidth
限制匿名用户带宽,带宽单位是k字节/秒。
用法参见-T。
-T“UserBandwidth”bandwidth|upload-bandwidth:
download-bandwidth
对所有用户限制带宽。
pure-ftpd必须在编译时指定带宽限制支持,此标记才能正常工作。
对上传和下载有不同的带宽限制是可能的。
-t和-T可以跟随两个冒号分隔的数字。
第一个数是上传带宽,下一个是下载带宽。
它们之一可以是空白代表没限制。
当数值而没有冒号代表上传和下载有相同的限制。
单位KB
-U“Umask”file-umask:
dirctory-umask
修改新建文件和目录的掩码(缺省的权限)。
缺省掩码是133(文件可读但其它组用户不可写)和022(目录与文件相同,加上了执行权限)。
如果希望新建文件只对用户可读,使用177:
077。
如你想上传的文件可执行,使用022:
022(文件将其它组可读)或077:
077(文件仅所有者可读)。
注意:
umask是反码。
如想新建文件权限为644,则umask是133。
-u“MinUID”UserID
不允许UID低于此值的用户登录(典型的,数值低的UID是管理帐号使用的)。
-u100足以在多数linux上禁止管理帐号登录了,这里99是最后的管理帐号。
即使ftp帐号的UID小于此值,匿名访问也是允许的。
-u1只禁止了root帐号。
缺省是允许所有帐号。
-V“TrustedIP”IPaddress
只允许特定本地ip地址进行非匿名用户访问。
所有其他ip地址只允许匿名访问。
使用此选项,你可以指定一个对外服务的IP,和一个用于管理目的本地IP(象10.x.x.x)。
你也可以有一个由防火墙保护的IP,仅有此IP允许非匿名用户登录。
-v对苹果机专用选项,忽略
-w“AllowUserFXP”yesorno
对非匿名用户开放FXP协议支持。
-W“AllowAnonymousFXP”yesorno
允许所有用户FXP,包括匿名用户。
FXP是一个不安全的协议。
在不可信任的网络上决不使此选项为有效。
-x“ProhibitDotFilesWrite”yesorno
在标注操作模式,认证用户可以读、写点开始的文件。
出于安全理由(象修改banners或一忘记的.rhosts),匿名用户不允许。
当-x被指定,认证用户可以下载'.'开头的文件,但不能覆盖、建立它们,即使是它们的所有者。
你可以避免主机用户的捣乱。
-X“ProhibitDotFilesRead”yesorno
这个标记与前一个相同(禁止写'.'文件),另外,用户不能读'.'文件和目录(象"cd.ssh")。
-y“PerUserLimits”value1:
value2
此选项能做每用户并发限制。
两个数值使用冒号分隔。
第一个是最大同一认证用户(帐号)并发会话数。
第二个是最大匿名用户并发会话数。
-Y“TLS”0|1|2
-Y0(缺省)禁用SSL/TLS安全机制。
-Y1接受标准会话和SSL/TLS会话。
-Y2只使用SSL/TLS安全机制,包括匿名访问。
服务器必须在编译时设定SSL/TLS支持,并且必须在合适的位置有有效的证书来接受加密回话。
-z“AllowDotFiles”yesorno
允许匿名用户读点开始的文件和目录。
-Z“CustomerProof”yesorno
加入安全防护防护普通的客户犯错误(类似于:
chmod0他们的文件)。
比如:
#cd/opt/pureftpd/sbin
#pure-ftpd-4-c1000-C5-G-H-I10-k60-r-lunix-L100:
2-Ostats:
/opt/pureftpd/log/pureftpd.log-R-T500-w-X-y10:
100&
表示:
启动pure-ftpd服务器,只用ip4,限定最大连接1000用户,每ip地址5个链接,不能改文件名,不分析机器名称,超时10分钟,最大使用硬盘容量的60%,上传同名文件自动重命名,认证方式为系统,避免攻击,记录日志,不能更改文件权限,用户上传下载速度上限均为500KB/s,对非匿名用户支持FXP模式,所有用户不能读/写/重命名以.开头的文件,最大登陆非匿名用户10个、匿名用户100个,后台运行。
我们把PureFTPD的default设定文件(pure-ftpd.conf)拷贝一份在/opt/pureftpd下.其实哪都可以,建议再拷贝一份叫pure-ftpd.xxx.conf,如果你要跑多支ftpd的话.xxx部分可以自由替代成你要的名字
五.启动ftp服务器
pureftp支持多种启动方式,这里用最简单、高效的一种——命令参数方式:
#vim/etc/rc.d/rc.local
添加
/opt/pureftpd/sbin/pure-ftpd-4-c1000-C5-G-H-I10-k60-r-lunix-L100:
2-Ostats:
/home/ftp/log/pureftpd.log-R-T500-w-X-y10:
100&
#启动pure-ftpd服务器,只用ip4,限定最大连接1000用户,每ip地址5个链接,不能改文件名,不分析机器名称,超时10分钟,最大使用硬盘容量的60%,上传同名文件自动重命名,认证方式为系统,避免攻击,记录日志,不能更改文件权限,用户上传下载速度上限均为100KB/s,对非匿名用户支持FXP模式,所有用户不能读/写/重命名以.开头的文件,最大登陆非匿名用户10个、匿名用户100个,后台运行。
附录:
AUTHENTICATION
Someofthecomplexitiesofolderserversareleftout.
Thisversionofpure-ftpdcanusePAMforauthentication.Ifyouwant
ittoconsultanyfileslike/etc/shellsor/etc/ftpd/ftpusersconsult
pamdocs.LDAPdirectoriesandSQLdatabasesarealsosupported.
Anonymoususersareauthenticatedinanyofthreew
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- CentOS54 安装 配置 Pureftpd
![提示](https://static.bingdoc.com/images/bang_tan.gif)