Category: Unix操作系统

2009-01-06

熬夜翻译完的PureFTPd配置文件

归类于: Unix操作系统 - 06 Jan 2009

  干了个通宵,一边玩一边把配置文件翻译完了,翻得不好的地方还请各位多多提点,少许不是很明白的地方就留在那了。

  鼓励转贴,分发,为所有看到E文头痛的兄弟们帮点小忙,PureFTPd的文档本来就不多,中文的更少了。从配置文件中就能看出不少PureFTPd的好功能来了。

  来CU很久了,收获很多,这篇小文算是对CU的一点点小贡献。

  ############################################################

  # #

  # Configuration file for pure-ftpd wrappers #

  # #

  ############################################################

  # 如果你想要使用配置文件代替命令行选项来运行 Pure-FTPd ,请运行下面的命令:

  #

  # /usr/local/pureftpd/sbin/pure-config.pl /usr/local/pureftpd/etc/pure-ftpd.conf

  #

  # RPM 缺省使用另外一个配置文件:

  # /etc/sysconfig/pure-ftpd

  #

  # 请不要忘了浏览一下 http://www.pureftpd.org/documentation.html 的

  # 文档,查看全部的选项列表。

  # 限制所有用户在其主目录中

  ChrootEveryone yes

  # 如果前一个指令被设置为了 “no”,下面组的成员(GID)就不受主目录的限制了。而其他的用户还是

  # 会被限制在自己的主目录里。如果你不想把任何用户限制在自己的主目录里,只要注释掉 ChrootEveryone

  # 和 TrustedGID 就可以了。

  # TrustedGID 100

  # 兼容ie等比较非正规化的ftp客户端

  BrokenClientsCompatibility no

  # 服务器总共允许同时连接的最大用户数

  MaxClientsNumber 50

  # 做为守护(doemon)进程运行(Fork in background)

  Daemonize yes

  # …

如何设置一个企业级的LinuxPOP3服务器

归类于: Unix操作系统 - 06 Jan 2009

  一: 概述

  本文旨在介绍如何使用开放源软件Procmail和Qpopper来设置一台可供企业级客户使用的

  POP3服务器,同时保证极好的性能和安全性。重点介绍如何设置Procmail和Qpopper利用

  hash spool 目录结构存储用户邮件。

  二: 步骤

  软件环境为RedHat Linux 6.2

  1. 下载最新版的Procmail和Qpopper

  Procmail 最新版本现在是3.21 可从

  http://www.procmail.org/procmail-3.21.tar.gz下载。

  Qpopper 最新版本现在是4.0 可从http://www.eudora.com/qpopper_general/下载

  2. 编译Procmail

  假设下载的文件放在/root

  #cd /root

  #tar xvfz procmail-3.21.tar.gz

  #cd procmail-3.21

  #vi src/authenticate.c

  改#define MAILSPOOLDIR行后面的/var/spool/mail为 “/usr/mail/” (这里我用的是

  /usr/mail)

  改#define MAILSPOOLHASH 后面的0 为 2 (二级hash目录,改进服务器性能,特别是有

  大量用户时)

  注:这样的话,如果用户的信箱为jephe@domain.com,则文件应存在

  /usr/mail/j/e/jephe

  #mv /var/spool/mail /var/spool/mail.bak

  注:先换名这个目录,因为当编译时如果能找到该目录,则优先用该目录及hash结构,这

  样的话将存储用户邮件到文件/var/spool/mail/j/e/jephe.如果你就想用这个目录,就

  不用改上面的MAILSPOOLDIR行。

  #make

  #make install

  #make install-suid

  然后以root身份运行#procmail -v检查用户的邮件路径是不是/usr/mail/r/o/root。

  3. 编译Qpopper

  假设下载的文件在/root

  #cd /root

  #tar xvfz qpopper4.0.3.tar.gz

  #cd qpopper4.0.3

  #./configure –enable-specialauth –enable-hash-spool=2

  –enable-spool-dir=/usr/mail

  注: –enable-specialauth 使用/etc/shadow …

POSTFIX和CYRUSIMAP安装手册

归类于: Unix操作系统 - 06 Jan 2009

  作者:LinuxAid Floatboat

  一切版权属于作者

  前言

  POSTFIX是一个性能卓越的MTA,拥有非常高的稳定性及安全性。在一台普通的机器上拥有足够带宽的前提下每天可以处理超过四百万封邮件。作为一个MTA,POSTFIX被设计为代替Sendmail的一个软件。关于POSTFIX的更多信息可以参见其官方网站:http: //www.postfix.org。

  POSTFIX一般情况下与CYRUS-IMAP相配合,由于CYRUS-IMAP及相关的附加模块配置起来非常复杂,所以POSTFIX CYRUS-IMAP并不一定适合于初学者使用!

  由于此手册未经实际验证,所以请不要转载以免误导最终用户!

  本手册只在www.linuxaid.com.cn发表,大家有关于此手册的任何问题请至LinuxAid.com.cn技术支持论坛的《邮件服务器》版面讨论,LinuxAid的技术支持工程师会根据讨论的结果继续完善此手册。

  一、编译源码

  1、基本概念

  POSTFIX只是一个MTA,也就是一个SMTP服务器。它本身只提供SMTP服务,如果你需要POP3或IMAP服务,则需要通过安装类似于CYRUS这样的IMAP服务器与其配合从而实现一个完整的系统。

  由于POSTFIX只是一个MTA,它只负责邮件的转发以及本地的分发,用户管理工作由MDA负责,所以在理解上要注意。

  POSTFIX的SMTP验证需要通过SASL库才可以实现,SASL库则通过一个称为PWCHECK的服务向POSTFIX提供验证的渠道。

  PWCHECK会在/var/pwcheck中创建一个UNIX SOCKET文件,供客户端进行访问。

  除了CYRUS-IMAP外,所有需要通过SASL进行验证的客户端软件(POSTFIX,等)都需要在SASL库的SASL目录下创建其进程所对应的配置文件,如POSTFIX的文件名为smtpd.conf。并在其中指定验证方式。

  POSTFIX通过LMTP或PIPE与CYRUS-IMAP沟通,将发往本地的邮件直接通过LMTP或PIPE转给CYRUS-IMAP处理。

  POSTFIX可以与MySQL结合将别名(Alias)存放于数据库中。

  缺省情况下POSTFIX和CYRUS-IMAP都使用系统账号作为缺省的用户数据库。如果要使用数据库做为用户账号数据库则需要对源码进行修改,我们这里不进行介绍。

  POSTFIX与CYRUS-IMAP结合并使用系统账号作为邮件账号只适用于不超过两千个账号的系统,当使用数据库(MySQL)作为用户账号存储媒介时只适用于不超过十万个邮件账号的系统。

  基本概念大约就是这么多,希望大家都可以理解POSTFIX和CYRUS-IMAP这一对组合到底可以做些什么,以及有什么限制。

  2、先期准备

  我们假设系统所有的东西都将安装在:/usr/local/servers中,之所以要安装在这个目录里面而不使用缺省的安装路径,是为了方便大家在想要删除POSTFIX及其相关的支持文件时,可以直接通过rm对应的目录即可删除,而不需要手工去查找哪些文件需要删除(这特别适用于新入门的用户)。

  相关的路径信息:

  POSTFIX源码目录:/usr/local/servers/packages/postfix

  POSTFIX安装目录:/usr/local/servers/postfix

  CYRUS-IMAP源码目录:/usr/local/servers/packages/cyrus

  CYRUS-IMAP安装目录:/usr/local/servers/cyrus

  CYRUS-SASL源码目录:/usr/local/servers/packages/sasl

  CYRUS-SASL安装目录:/usr/local/servers/library/sasl

  在安装前我们需要先准备好所需要的目录,按照以下的步骤进行(#号后面的是注释,执行时不要输入):

  useradd postfix #为POSTFIX添加一个系统账号

  useradd cyrus -g mail #为cyrus添加一个系统账号,并将其所属的组设置为mail

  passwd cyrus #设置cyrus的密码,注意此密码将用于管理用户账号。

  usermod daemon -g group #将daemon系统账号所属的组设置为mail,因为POSTFIX在做为DAEMON支持时需要用到这个用户

  mkdir /var/pwcheck #为PWCHECK,用户身份验证服务创建目录

  chown cyrus.mail /var/pwcheck #将这个目录的所有者设置为cyrus和mail组

  3、为支持SMTP验证准备好库文件

  POSTFIX的SMTP验证需要SASL库的支持,为此我们需要在安装POSTFIX源码前先行安装SASL库文件,步骤如下:

  mkdir /usr/local/servers/packages/sasl

  cd /usr/local/servers/packages/sasl

  wget ftp://ftp.andrew.cmu.edu/pub/cyrus-mail/cyrus-sasl-1.5.24.tar.gz

  tar zxf cyrus-sasl-1.5.24.tar.gz

  cd cyrus-sasl-1.5.24

  ./configure –prefix=/usr/local/servers/library/sasl –enable-plain=yes –enable-login=yes –enable-cram=no –enable-digest=no –with-pwcheck=/var/pwcheck

  make

  make install

  ln -s /usr/local/servers/library/sasl /usr/lib/sasl

  修改/etc/ld.so.conf,添加:

  /usr/local/servers/library/sasl/lib

  /usr/local/servers/library/sasl/lib/sasl

  存盘退出,运行:

  ldconfig

  运行:

  /usr/local/servers/library/sasl/sbin/saslpasswd -c admin

  输入两次密码,这个程序会在/etc生成一个sasldb文件。对于当前版本的SASL,这个文件是必须的(虽然它在PWCHECK验证方式下没有任何作用)。

  chmod …

中小企业服务器配置方案(文件服务器之FTP篇)

归类于: Unix操作系统 - 06 Jan 2009

  第二节 FTP服务器

  & 2.1 简介

  在绝大多数的LINUX发行版本中都选用的是WashingtonUniversity FTP,它是一个著名的FTP服务器软件,一般简称为Wu-ftp。它功能强大,能够很好地运行于众多的UNIX操作系统,例如:IBM AIX、FreeBSD、HP-UX、NeXTstep、Dynix、SunOS、Solaris等。所以Internet上的FTP服务器,一大半以上采用了它。wu-ftp拥有许多强大的功能,很适于吞吐量较大的FTP服务器的管理要求:

  1) 可以在用户下载文件的同时对文件做自动的压缩或解压缩操作;

  2) 可以对不同网络上的机器做不同的存取限制;

  3) 可以记录文件上载和下载时间;

  4) 可以显示传输时的相关信息,方便用户及时了解目前的传输动态;

  5) 可以设置最大连接数,提高了效率,有效地控制了负载。

  & 2.2 所需资源

  &1.2.1 所需包

  RedHat6.2 服务器安装

  &1.2.2 所需配置文件

  /etc/ftpusers

  /etc/ftpaccess

  /var/run/ftp.pids

  /etc/ftpconversions

  /var/log/xferlog

  /etc/ftpgroups

  /etc/ftphosts

  &1.2.3 相关命令

  ftpd FTP服务器程序

  ftpshut 用于关闭FTP服务器程序

  ftpcount 显示目前在线人数

  ftpwho 查看目前FTP服务器的连接情况

  ckconfig 检查FTP服务器的设置是否正确

  ftprestart 重新启动FTP服务

  &1.2.4 相关目录

  /home/ftpd/bin 存放一些供FTP用户使用的可执行文件

  /home/ftpd/etc 存放一些供FTP用户使用的配置文件

  /home/ftpd/pub 存放供下载的信息

  /home/ftpd/incoming 存放供上载信息的空间

  & 2.3 配置方案

  1. /etc/ftpaccess

  说明: ftp权限配置文件

  源文件:

  guestuser weboa

  # FTP用户

  class all real,guest,anonymous *

  class weboa guest *

  # …

CyrusIMAP服务器安装与配置

归类于: Unix操作系统 - 06 Jan 2009

  IMAP(Internet Mesage Access Protocol)是INTENET上标准的访问消息(mail/news等),IMAP服务器上存储消息,并提供客户访问能力。有关安装的问题的一些回答请到以下网址查找:

  http://andrew2.andrew.cmu.edu/cyrus/imapd/install-FAQ.

  有关该软件的一些反馈的文档请发送到cyrus-bugs@andrew.cmu.edu. 另外,info-cyrus@andrew.cmu.edu邮件列表讨论cyrus IMAP服务器与其他IMAP服务软件的一些情况。更多的信息请到in the mailing-list document.

  升级情况(略)

  首先要说明信息

  必须下列的程序或软件包:

  1.makedepend 在本安装包的makedepend子目录下,在安装IMAPD之前先安装。如果失败的话,配置脚本将会用一个假的shell脚本代替makedepend,在用“make all”之前,需用“make clean”清除.

  2.Tcl 版本必须是.7.5以上。怎样获得Tcl请参看comp.lang.tcl FAQ。

  3.如果需要Kerberos支持,那么在在安装Kerberos时必须包含DES库文件,包括Solaris在内的一些商业版本可能没有DES支持,不能用。下面介绍的美国或加拿大的一些网站上可能可以获得ftp://athena- dist.mit.edu/pub/kerberos/README.KRB4。你也可以从这个网站获得有关的信息http: //www.pdc.kth.se/kth-krb/。

  4.建议你的网站安装snedmail8.7.1以上的版本(笔者用的postfix)。有关sendmail的包可以从以下的网站获得from ftp://ftp.sendmail.org/ucb/sendmail

  5.如果你希望你的IMAP能提供网络新闻组服务,必须从INN的服务器上接收。

  编译IMAP服务器

  如果你解开了压缩包(看README文件以获得更多的信息),“cd”到“cyrus-imapd-1.5.19”目录(如果你版本是1.5.19.)配置文件和许多子目录都在此目录下,用“./configure”就能配置该软件。

  配置的程序在配置过程中将试图正确地赋予系统变量适当的值,并将结果存在每个目录的生成的Makefile中,最后,它将生成“config.status”文件,使你可以用它再次创建当前的配置。“config.cache”文件保存结果使得能把配置加速。“ config.log”保存编译器的输出结果。

  运行“configure”需要一些时间,在运行过程中,它将显示一些检查的结果信息。

  你可以在不同的目录下编译这些源码,这样做允许你能同时编译适合各种情况的IMAP服务器。不过,make的版本必须支持“VPATH”变量(比如GNU的“make”),”cd”到你所需的目录下,并执行“configure”。它将自动检测源码所在目录。。。。。。

  “make install”默认地把文件安装在“/usr/local/bin”“/usr/local/man”……下,你也可以通过用“-prefix=PATH”指定安装路径。

  你也可以单独列出安装中的明确或不依赖结构的文件,如果在配置中带上“?exec-prefix=PATH”的选项,安装包将会用这个路径安装程序和支持库。文档和数据文件将会仍然用比较规则的路径。

  默认情况下,服务进程将被安装在“/usr/cyrus/bin”.你也可以在配置中特别用“?with-cyrus-prefix-PATH”去指定。

  以下将简要列出“configure”选项的说明:

  –cache-file=FILE 指定测试输出文件(默认为config.cache),也可以用“/dev/null/表示关闭”

  –help 显示帮助信息,会显示有关的选项

  –quiet –silent -q

  不输出任何信息

  –srcdir=DIR 指定源码目录,一般配置程序自动能搜寻。

  –version 显示版本

  –with-cyrus-user=USER

  指定用户

  –with-cyrus-group=USER

  指定组用户

  –with-startdir=PATH

  指定pwcheck和ptclient的目录,默认在/var下。

  –with-login=METHOD

  指定登陆认证的模块,一般有如下模块:

  unix /etc/passwd文件

  unix_pwcheck unix shadow文件通过pwcheck守侯进程

  krb Kerkeros 4

  krb_pwcheck krb 和 pwcheck

  如果你用shadow来认证,配置时带上?with-login=unix_pwcheck的悬想。而且不要以root的身份运行它。

  –with-pwcheck=METHOD

  指定用pwcheck进行密码检验,只有在登陆名称以“-pwcheck”结尾时这割选项才有用。

  –with-auth=METHOD

  指定认证模块,有unix\krb\krv_pts

  –with-notify=METHOD

  –without-notify

  指定邮件确认的方法。确定方法有如下几种:zephyr/no,默认是zephyr

  –with-krb=PATH

  –without-krb

  指定kerberos的库文件和头文件。默认在”/usr/local”下。

  –with-inn=PATH

  指定INN NEWSLIB库的目录。默认会搜索一些目录。只有在你需提供新闻组服务的时候用这个选项。另外,Kerkeros 4需要DES库的支持,

  –with-tcl=PATH

  –without-tcl

  指定tcl库和头文件的路径,默认将在“/usr/local”下,在编译“cyradm”时必须TCL。如果没有请带上选项“?disable-cyradm”。

  –with-zephyr=PATH

  –with-zephyr

  指定zephyr库和头文件。默认在“/usr/local/”下,

  –with?lock=METHOD

  指定锁定方法,一般有两种:flock(),fcntl().默认是flock();

  –disable-cyradm

  不编译cyradm管理客户端。

  –disable-privacy

  关闭网络安全验证选项

  –enable-amssync

  打开AMS支持

  –enbale-cmulocal

  打开CMU的内置支持

  可能有些系统需要一些不常用的配置选项,你可以通过“./configure”来初始化一些变量的环境。如果你用的是B_shell,可以用如下的命令;

  CC=c89 CFLAGS=-02 LIBS=-lposix ./configure

  在有“env”的系统里可以用如下命令:

  env CPPFLAGS=-I/usr/local/include LDFLAGS=-s …

Sendmail邮件服务器快速指南

归类于: Unix操作系统 - 06 Jan 2009

  摘要

  人们在互联网上最常使用的就是电子邮件,很多企业用户也经常使用免费电子邮件系统。本文就以step by step的方式引导用户从sendmail源代码开始构建一个可以满足基本工作需要的邮件系统。(2002-07-05 08:28:13)

  ——————————————————————————–

  By lanf, 出处:出自 LinuxAID ideal

  概述

  sendmail是最重要的邮件传输代理程序。理解电子邮件的工作模式是非常重要的。一般情况下,我们把电子邮件程序分解成用户代理,传输代理和投递代理。用户代理用来接受用户的指令,将用户的信件传送至信件传输代理,如:outlook express、foxmail等。而投递代理则从信件传输代理取得信件传送至最终用户的邮箱,如:procmail。

  当用户试图发送一封电子邮件的时候,他并不能直接将信件发送到对方的机器上,用户代理必须试图去寻找一个信件传输代理,把邮件提交给它。信件传输代理得到了邮件后,首先将它保存在自身的缓冲队列中,然后,根据邮件的目标地址,信件传输代理程序将找到应该对这个目标地址负责的邮件传输代理服务器,并且通过网络将邮件传送给它。对方的服务器接收到邮件之后,将其缓冲存储在本地,直到电子邮件的接收者察看自己的电子信箱。

  显然,邮件传输是从服务器到服务器的,而且每个用户必须拥有服务器上存储信息的空间(称为信箱)才能接受邮件(发送邮件不受这个限制)。可以看到,一个邮件传输代理的主要工作是监视用户代理的请求,根据电子邮件的目标地址找出对应的邮件服务器,将信件在服务器之间传输并且将接收到的邮件缓冲或者提交给最终投递程序。有许多的程序可以作为信件传输代理,但是sendmail是其中最重要的一个,事实证明它可以支持数千甚至更多的用户,而且占用的系统资源相当少。不过, sendmail的配置十分复杂,因此,也有人使用另外的一些工具,如qmail、postfix等等。

  当sendmail程序得到一封待发送的邮件的时候,它需要根据目标地址确定将信件投递给对应的服务器,这是通过DNS服务实现的。例如一封邮件的目标地址是ideal@linuxaid.com.cn,那么sendmail首先确定这个地址是用户名(ideal) 机器名(linuxaid.com.cn)的格式,然后,通过查询DNS来确定需要把信件投递给某个服务器。

  DNS数据中,与电子邮件相关的是MX记录,例如在linuxaid.com.cn这个域的dns数据文件中有如下设置:

  IN

  MX

  10

  mail

  IN

  MX

  20

  mail1

  mail

  IN

  A

  202.99.11.120

  mail1 IN

  A

  202.99.11.121

  显然,在DNS中说明linuxaid.com.cn有两个一个信件交换(MX)服务器,于是,sendmail试图将邮件发送给两者之一。一般来说,排在前面的的MX服务器的优先级别比较高,因此服务器将试图连接mail.linuxaid.com.cn的25端口,试图将信件报文转发给它。如果成功,你的smtp服务器的任务就完成了,在这以后的任务,将由mail.linuxaid.com.cn来完成。在一般的情况下,mail换器会自动把信件内容转交给目标主机,不过,也存在这样的情况,目标主机(比如linuxaid.com.cn)可能并不存在,或者不执行smtp服务,而是由其mx交换器来执行信件的管理,这时候,最终的信件将保存在 mx机器上,直到用户来察看它。

  如果DNS查询无法找出对某个地址的MX记录(通常因为对方没有信件交换主机),那么sendmail将是试图直接与来自邮件地址的主机对话并且发送邮件。例如,test@aidgroup.linuxaid.com.cnDNS中没有对应的MX记录,因此sendmail在确定MX交换器失败后,将从DNS取得对方的IP地址并直接和对方对话试图发送邮件。

  工作环境

  本文假设用户希望在园区网环境中架设一个电子邮件服务器,为本单位用户提供邮件服务。该服务器拥有一个合法的IP地址202.99.11.200和一个合法的域名mail.linuxaid.com.cn,并且DNS的MX记录也指向该域名(注:这里示例域名和IP地址均为伪造域名和地址)。为了满足域名需求,DNS的域数据文件应该包含以下内容:

  IN MX 10 mail

  mail IN A 202.99.11.200

  试验环境为:redhat6.2、sendmail.8.11.4、qpopper4.0.3。

  软件下载

  分别从以下地址下载sendmail和qpopper:

  sendmail.8.11.4.tar.gz http://www.sendmail.org/current-release.html

  qpopper4.0.3.tar.gz http://www.eudora.com/qpopper_general/

  Sendmail的配置和安装

  Sendmail是目前使用最为广泛的一种E-mail服务器。当前其最新的稳定版本为8.11.4。下载得到tar.gz格式的压缩包以后,将其存放在/usr/src目录下。

  解压软件包:

  [root@email src]# tar xvfz sendmail.8.11.4.tar.gz

  [root@email src]# cd sendmail-8.11.4

  编译安装:

  [root@email sendmail-8.11.4]# cd sendmail

  [root@email sendmail]# sh Build

  生成配置文件:

  [root@email sendmail]#cd /usr/src/sendmail-8.11.4/cf/cf/

  一般该目录下应该有config.mc的文件,如果没有则创建新文件config.mc,内容为:

  divert(-1)

  dnl This is the macro …

FTPLinux服务器

归类于: Unix操作系统 - 06 Jan 2009

  本文是经过实践过得出的,对于急于起FTP服务器的仁兄,一定是大叫为好!

  一 安装Red Linux 7.0

  二 安装Wu-ftp2.6.1 (华盛顿大学FTP服务器)

  本文是不允许anonymous用户登录。

  建立一个guest账号,,使公司内部人员使用,并且不允许用Telnet登录。

  以下是步骤:

  (1) 增加一个用户账号: 命令usedadd 用户账号

  eg: usedadd szanlai

  passwd szanlai (passwd 是设定口令)

  建立密码

  (2) 定义指向用户的shell 为空shell: 命令 chsh 用户账号

  eg: chsh szanlai

  修入 /bin/hello (/bin/hello 是指向szanlai 的shell)

  以上两步可以用一条命令做

  usedadd -d szanlai -s /bin/hello szanlai (-d 是增加用户,,-s 是指向什么shell)

  (3) 修改/etc/shells文件,在shells文末增加所指向的shell

  gedit shellls

  (4) 修改/etc/passwd 文件,,,就是将用户账号目录指成虚拟登录根目录,(这就是chroot所指的效果)

  eg: szanlai:x:500:500:/home/ftp/:/bin/hello

  change à szanlai:x:500:500:/home/ftp/./szanlai:/bin/hello

  注意不要在i …

在proftpd中增加用户并且控制用户下载速度和连接IP

归类于: Unix操作系统 - 06 Jan 2009

  proftp如果限制同一IP的连接数,以及同一IP的流量 [re: hemings]

  按下面设置:

  RateReadBPS 10000

  MaxClientsPerHost 1 “对不起,每个用户最多只允许同时连接1个进程”

  RateWriteBPS 10000

  ————–注:

  RateReadBPS 10000

  这是限制下载速度为10K

  MaxClientsPerHost 1 这是限制同一IP的人数,引号是如果有多个连接时候的提示,你可以自己改。

  RateWriteBPS 10000 这是限制上传速度。

在wu-ftpd中限制某用户的连接数

归类于: Unix操作系统 - 06 Jan 2009

  在ftpaccess中设置:

  host-limit class count time message

  其中class是定义的某类用户比如real,guest,count是允许此类用户的同时连接数,time是连接时间,可以设置为Any,message是超过连接数以后的提示信息文件。

proftpd

归类于: Unix操作系统 - 06 Jan 2009

  porftpd是一个配置方法与APACHE相类似的FTP服务器,有两种运行方

  式,独立服务器与超级服务器的子服务器。无论从安全性还是稳定性还

  是可配置性来说都是非常好的选择。一般来说redhat上的wu-ftp的问题太多,

  为了安全起见用proftpd还好一些.

  1

  取得

  proftpd

  http://www.proftpd.net是其公司网站上有大量资料,到

  ftp://ftp.proftpd.net/pub/proftpd/或ftp://ftp.proftpd.org/

  可以下载最新的proftpd-1.2.0rc3.tar.gz

  2

  安装

  proftpd

  2.1

  进入linux系统解开文件

  #tar

  proftpd-1.2.0rc3.tar.gz

  #cd

  proftpd-1.2.0rc3

  2.2

  设定安装到/www/protpd目录中

  #./configure

  –prefix=/www/proftpd

  #make

  #make

  install

  3

  设定

  3.1几个文件的功能及路径

  /www/proftpd/sbin/proftpd

  执行程序

  /www/proftpd/etc/proftpd.conf

  设置文件

  /www/proftpd/var/proftpd.pid

  proftpd做为一个服务的ID号

  3.2

  设定proftpd.conf文件,起动服务

  3.2.1

  做为一个服务起动

  在默认的”/www/proftpd/etc/proftpd.conf/”文件中有一行文字

  ”ServerType

  standalone”,指定”/www/proftpd/sbin/proftpd”以

  一个服务的方式来工作,可以放”/www/proftpd/sbin/proftpd”到

  ”/etc/rc.d/rc.local”文件中,以便开机起动.

  3.2.2

  放到inetd.conf中起动

  也可以改变”ServerType

  standalone”为”ServerType

  inetd”,

  并修改”/etc/inetd.conf”中的

  ftp

  stream

  tcp

  nowait

  root

  /usr/sbin/in.ftpd

  in.ftpd

  改变为

  ftp

  stream

  tcp

  nowait

  root

  /www/proftpd/sbin/proftpd

  proftpd

  当然也可以改为

  ftp

  stream

  tcp

  nowait

  root

  /usr/sbin/tcpd

  /www/proftpd/sbin/proftpd

  注意做为服务器设定可以直接执行

  /www/proftpd/sbin/proftpd

  起动服务

  如果放在

  inetd.conf文件中,就是修改完后

  killall

  -HUP

  inetd

  3.3

  proftpd.con

  的一个简单设定及说明(proftpd文件解压后,/doc目录内有proftpd.conf的说明)

  #服务器的名称

  ServerName

  ”ProFTPD

  Default

  Installation”

  #服务器的服务方法(系统服务/inetd连接)

  ServerType

  standalone/inetd

  ServerType

  standalone

  #默认服务

  DefaultServer

  on

  #服务器使用的port号码

  Port

  21

  #proftpd在做为服务时的用户名和组名

  User

  nobody

  Group

  ftp

  #根目录设定,可以用/home也可用~,可以使用户不能向上到根目录下

  DefaultRoot

  ~

  #目录的权力

  〈Directory

  /*>

  AllowOverwrite

  on

  〈/Directory>

  #其本anonymous用户定义

  〈Anonymous

  ~ftp>

  User

  ftp

  Group

  ftp

  UserAlias

  anonymous

  ftp

  MaxClients

  10

  DisplayLogin

  welcome.msg

  DisplayFirstChdir

  .message

  #注意最好加上以下这一行

  RequireValidShell

  no

  #设定为只读

  〈Limit

  WRITE>

  DenyAll

  〈/Limit>

  〈/Anonymous>

下一页 »