[修改回复]
删除回复
插入表情:
宋体
楷体
幼圆
黑体
隶书
华文行楷
方正舒体
Arial
Arial Black
Arial Narrow
Century Gothic
Comic Sans MS
#0000FF
#8A2BE2
#DEB887
#5F9EA0
#7FFF00
#000000
#D2691E
#FF7F50
#FF0000
#DC143C
#99ccff
字体颜色
#FFF8DC
#00FFFF
#EE82EE
#F5DEB3
#FFFFFF
#F5F5F5
#FFFF00
#9ACD32
使用帮助
13.如何取消redhat7.1安装时的默认防火墙规则 redhat7.1缺省过滤了很多服务--看看如何关掉它吧。 如何取消redhat7.1安装时的默认防火墙规则 ideal Redhat7.1系统在安装时会让用户选择防火墙安全级别,用户选定以后就会定义一些防火墙规则,而用户随后在使用时往往出现不能访问莫个服务的情况。取消redhat7.1的默认防火墙规则的方法如下: /etc/rc.d/init.d/ipchains stop /etc/rc.d/init.d/iptables stop chkconfig --level 35 ipchains off chkconfig --level 35 iptables off 这样就会取消防火墙规则,用户重新启动以后也不会有防火墙规则定义。 14.用vhost_alias模块实现泛域名解析 一般我们常用的是Mod-rewrite模块-感谢他提供的这种方法!在DNS中设好*.abc.com到IP后把vhost_alias模块配置进apache里面然后 UseCanonicalName Off VirtualDocumentRoot /somwhere/%1.1%1.2/%1 (这里使用了这种目录结构: 建立两级目录,用户abcdef的位置将会在 /somewhere/ab/abcdef 123456用户的位置将会在: /somewhere/12/123456) 如果嫌麻烦的话可以直接只使用一级目录结构,指定: VirtualDocumentRoot /somewhere/%1 (%1指的是客户机提交形如abcdef.yourhost.org的http请求时,abcdef 这一部分,如果采用更加复杂的方案,请参阅apache文档。) 15.SGI的Apache性能补丁(据说能快10倍!)! 根据我的经验,使用Apache1.3.20比redhat7.1带的Apache速度要快很多。编译时把不用的模块去掉。SGI为Apache做了一个多线程的patch(http://oss.sgi.com/projects/apache/),经过我的测试,能提高Apache的性能,虽然不象他们所说得那么神奇(SGI官方说可以快10倍!)。 用patch -p1 < 10xpatch-1.3.x-n打补丁。用httpd -v证实加没加进去--如看到类似[root@www bin]# ./httpd -v Server version: Apache/1.3.20 (Unix) (10xpatchlevel 1.3.20-0) Server built: Aug 6 2001 09:58:34 Performance Tuned by SGI 则说明正确。 以下是我的测试结果(pIII600+128MRAM+redhat7.1+100MNIC)共参考: apache1.3.20+patch 2200Req/s redhat7.1自带的apapche 900Req/s tux 2900Req/s (受到了网络带宽限制,估计可以达到9000Req/s) IIS 1000Req/s 大家可以试试 16。proftpd中实现上传下载的文件的最大大小限制! 最近感觉proftpd--在各方面都已超过了wu-ftpd-- 无论是安全性上--功能上--可扩展性上-性能上--别忘了proftpd已是mandrake8.0以后的缺省ftp server了:)--我认为proftpd会成为以后ftpserver的老大-。在技术它是先进的-在配置上它和Apache的语法很象的,而且它的模块化同样和Apache很象。 最近有朋友问如何实现ftp server中上传文件的最大值--在proftpd中本身好象没有这个功能--需要一个第三方补丁http://rad.geology.washington.edu/~tj/proftpd/patches/proftpd-max-file-size-patch.tar.gz 至于怎么用看看readme就知道了Problem ------------------------------------------------------------------------ Many FTP administrators would like to be able to place size limits on any single file that a client might upload. Others, though less common, would like to place similar size restrictions on the size of files downloaded from their servers. ---------------------------------------------------------------------------- Solution ---------------------------------------------------------------------------- Create two new configuration directives, MaxRetrieveFileSize (for download restrictions) and MaxStoreFileSize (for upload restrictions). Syntax: MaxRetrieveFileSize number[units]|* Default: None Context: server config, , , , , .ftpaccess Module: mod_xfer Compatibility: 1.2.2rc1 and later When downloading files to clients (eg serving a RETR request), the server will check for any configured limit against the size of the file being requested, and abort any transfers if the requested file's size exceeds the configured limit. A single "*" argument configures unlimited file sizes, and is used primarily to override any inherited restrictions from higher contexts. The given number is the number of bytes for the limit, and may be followed by an optional "units" specifier of (case-insensitive) G (Gigabytes), M (Megabytes), K (Kilobytes), or B (bytes). If the units specifier is used, the given number of bytes is multiplied by the appropriate factor. Example: # restrict downloads to only 1 gigabyte MaxRetrieveFileSize 1g See Also: MaxStoreFileSize ----------------------------------------------- Syntax: MaxStoreFileSize number[units]|* Default: None Context: server config, , , , , .ftpaccess Module: mod_xfer Compatibility: 1.2.2rc1 and later When uploading files from a client (eg serving a STOR request), the server will check for any configured limit against the size of the file being sent, and abort any transfers if/when the given file's size exceeds the configured limit. A single "*" argument configures unlimited file sizes, and is used primarily to override any inherited restrictions from higher contexts. The given number is the number of bytes for the limit, and may be followed by an optional "units" specifier of (case-insensitive) G (Gigabytes), M (Megabytes), K (Kilobytes), or B (bytes). If the units specifier is used, the given number of bytes is multiplied by the appropriate factor. Example: # restrict upload to only 3 megabytes MaxStoreFileSize 3m See Also: MaxRetrieveFileSize 17。把Proftpd登录时显示的版本信息改成我们自己的!! Linux的软件就是好--可以DIY--:)-要是大家觉得ftp登录时220 ProFTPD 1.2.2 Server (ProFTPD Default Installation)--这个有透露秘密之嫌-简单的ServerIdent off即可关掉-不过让我们自己动手改成我们想要的--当然是改源码啦--来吧--解开tar.gz--进入proftpd的目录--进入include--改version.h--#define VERSION "1.2.2" /* VERSION_STATUS is reported by --version-status * don't ask why */ #define VERSION_STATUS "1.2.2 (release)" #define INTERNAL_VERSION 0x01020001--改什么一目了然吧。--呵呵--这是版本号--那么220 ProFTPD 1.2.2 Server在哪改呢?进入src/--vi main.c--查找ProFTPD的字串吧--都改成你想要显示的就好啦:)-至于ProFTPD Default Installation就不用我说了吧--改proftpd.conf中的ServerName "ProFTPD Default Installation"为你想要的吧:) 18。改变wu-ftpd的登录提示 用greeting就行--语法如下--很明了吧。 greeting full|brief|terse greeting text Allows you to control how much information is given out before the remote user logs in. 'greeting full' is the default and shows the hostname and daemon version. 'greeting brief' whose shows the hostname. 'greeting terse' simply says "FTP server ready." Although full is the default, brief is recommended. The 'text' form allows you to specify any greeting message you desire. can be any string; whitespace (spaces and tabs) is converted to a single space 19.proftpd+mod_sql+mod_mysql安装文档 proftpd+mod_sql+mod_sql_mysql安装 1.前言: 千辛万苦总算搞好了(没办法,谁叫我是初手),不敢独享,也希望能给那些在这个问题上如我当初般 彷徨的朋友一点帮助(当然,我现在也只是略知一二)我的邮箱keggs@sina.com,欢迎各位一齐讨论. 想搞这个的初衷是想搞个立即可以开通的个人竹叶服务,用户通过提交申请后,竹叶可以立即开通, 而且ftp可以立即上载,不需收工添加用户.且要通过www可以管理用户ftp帐户(php),开始是想通过 proftpd+mod_ldap实现,不过可能是我对ldap的无知,编译带mod_ldap模块的proftpd总是不成功. (我在论坛提出过编译的问题),所以就另想办法了,于是有了这篇东西. 2.软件: proftpd-1.2.1.tar.gz mod_sql-3.2.4.tar.gz(不要这个也行,因为proftpd包里已经有了,这个包是单独的mod_sql.c和 mod_sql_mysql.c以及一些帮助文档). mysql-3.23.41.tar.gz 3.安装mysql. 这里就不说了.记住安装目录(例如/usr/local/mysql). 安装好后,建立ftpusers数据库,然后建一个users表.命令如下. CREATE TABLE users ( userid text NOT NULL, #用户名 password text NOT NULL, #用户密码 homedir text NOT NULL, #用户目录 count int(11) NOT NULL, #用户登录次数(初始填0) shell text NOT NULL #用户shell ); 然后插入一条数据,例如: INSERT INTO users VALUES( 'keggs', 'mypassword', '/home/keggs', '0', '/bin/bash'); 4.安装proftpd tar -xvzf proftpd-1.2.1.tar.gz cd proftpd-1.2.1 ./configure --prefix=/usr/local/proftpd \ --with-includes=/usr/local/mysql/include \ --with-libraries=/usr/local/mysql/lib/mysql \ (注意与上一行的区别,看出来了么?) --with-modules=mod_sql:mod_sql_mysql make make install (注意:includes和libraries的指向的区别,原来我的includes也是指向了/usr/local/mysql/include/mysql, 编译时出现找不到mysql.h的提示,这主要是mod_sql_mysql.c里面定义mysql.h它自己加了mysql目录. 你也可以更改mod_sql_mysql.c里面关于mysql.h的include命令) 5.修改proftpd.conf. 添加如下: SQLConnectInfo ftpusers@studio.keggs.net root password #连接mysql的ftpusers数据库,根据你的情况修改. SQLDoGroupAuth off #因为我们只建了users表,proftpd默认是要用groups表的,这里是关掉组认证 SQLAuthTypes Plaintext #密码以明文形式认证. SQLDoAuth on #打开sql认证 SQLHomedirOnDemand on #如果用户目录不存在,则自动建了. SQLUserTable users #定义存放用户信息的表 SQLUsernameField userid #定义用户名字段 SQLPasswordField password #定义密码 SQLHomedirField homedir #定义用户目录 SQLLoginCountField count #定义登录次数 SQLShellField shell #定义登录shell SQLAuthoritative off #除了可以进行sql认证,系统用户等别的认证方式也可以. 6.编辑/etc/group,添加gid=65533的组ftpusers(SQLHomedirOnDemand on就是用这个组来建立用户目录) 7.ftp localhost试一试,可以查看/var/log/messages看错误信息. 8.这里再罗嗦两句,可能你在messages里会看到,连接数据库失败的信息,如果数据库名,用户名,密码都 没错,那么也许是你的mysql不允许除了localhost以外的连接,那么你需要在数据库host表里增加相应 的主机信息,这个问题我遇到过,如果你也遇到,不妨看看是不是这方面的原因. 9.现在你可以写个php来管理ftp帐户了,爽吧?! fei,写完安装文档后由于一直比较忙,对于文中需要补充的地方一直没有说明, 今天看到你把我的文章贴到精华区,为了不误了广大同好,连夜赶了一篇补充, 希望不要见怪,最好把这个补充进去. 补充:关于proftpd非系统用户的uid和gid. 大家也许注意到了,在上篇安装文档里mysql里的用户表我没有建立指定用户uid和gid的值的字段, 那么proftpd自动建立的用户目录将属于哪个用户和组??正如你看到的,执行ls -l /用户目录,用户目录 属于uid=65533,gid=65533, 疑问:难道不能让用户目录属于用户自己么?答案当然是肯定的. 其实在proftpd里面有许多参数是没有设定,而使用系统默认值的,以下4个就是控制建立的用户目录 是不是属于用户自己 SQLMinUserGID #默认值999 SQLMinUserUID #默认值999 SQLDefaultGID #默认值65533 SQLDefaultUID #默认值65533 (如要自己设定以上几个值,注意SQLDefaultGID必需大于SQLMinUserGID SQLDefaultUID必需大于SQLMinUserUID) 如果:用户gid>SQLMinUserGID 用户目录将属于用户gid 用户gid 如果: 用户uid>SQLMinUserUID 用户目录将属于用户uid 用户uid (例如:在不设定以上4值的情况下,如果用户gid=1000,uid=1000,那么用户目录将属于1000,1000) 现在你可以给用户表增加名为uid和gid的两个字段,指定用户uid和gid了. 在proftpd.conf中增加如下: SQLUidField uid SQLGidField gid
不能为空
不能含有 ` 字符,字数8000以内
(CTRL+ENTER提交)
关闭窗口