Nov
26
Proftpd是红旗DC Server 5.0自带的FTP服务端软件,也是一个非常优秀的开源套件。其默认使用操作系统的PAM模块作认证。在用户量比较少的情况下,其速度很理想,管理也方便。但若随着用户量的增长,单纯依赖PAM模块的认证方式就会显露出问题,而且也不利于于第三方软件的配合(例如论坛用户)。所以,随着其快速的发展,很多开发人员为其提供了大量的模块插件,供特殊情况使用。SQL模块和LDAP模块就是其中之一。
今天我要讲解的配置,就是基于以下功能模块的:
此外,因原Mod_sql模块没有提供MD5的口令认证方式,所以,我也对其做了一些改动,以方便和其他软件的整合。至于,Postgresql和LDAP模块的配置,可参考Mysql的规则定义实现。
今天我要讲解的配置,就是基于以下功能模块的:
引用
1、Mod_sql模块,提供基于Mysql或Postgresql数据库的认证功能;
2、Quota模块,提供数据库的磁盘配额功能;
3、Clamav模块,提供对传输文件的实时病毒扫描功能;
2、Quota模块,提供数据库的磁盘配额功能;
3、Clamav模块,提供对传输文件的实时病毒扫描功能;
此外,因原Mod_sql模块没有提供MD5的口令认证方式,所以,我也对其做了一些改动,以方便和其他软件的整合。至于,Postgresql和LDAP模块的配置,可参考Mysql的规则定义实现。
Nov
21
这又是一个从php-syslog-ng找出来的报错信息。如果没有它,估计我不会发现使用了这么久的ntp有报错。信息如下:
引用
ntpd[3775]: sendto(61.153.197.226): Invalid argument
Nov
20
自从使用php-syslog-ng监控日志信息后,经常发现一些过去会忽略的报错信息,目前正逐一解决中。其中一个报错发生在,我使用密钥通过ssh登陆到服务器的时候,日志信息显示:
引用
Nov 19 10:32:20 printserver auth 10:32:20 pam_loginuid[9691]: set_loginuid failed opening loginuid
Nov 19 10:32:20 printserver auth 10:32:20 remote(pam_unix)[9691]: session opened for user root by (uid=0)
Nov 19 10:32:20 printserver auth 10:32:20 sshd[9689]: Accepted publickey for root from 192.168.228.244 port
1487 ssh2
Nov 19 10:32:20 printserver auth 10:32:20 remote(pam_unix)[9691]: session opened for user root by (uid=0)
Nov 19 10:32:20 printserver auth 10:32:20 sshd[9689]: Accepted publickey for root from 192.168.228.244 port
1487 ssh2
Nov
19
在Windows管理Linux服务器时,常使用putty登陆ssh进行远程管理。默认登陆验证方式为密码认证,该方式虽然简单,但每次登陆都要输入一长串的密码,相当麻烦。而且,如果万一把root允许登陆打开,还有可能被强力破解,导致严重的后果。
所以,通常建议用密钥登陆验证代替密码方式,即简单,又可靠。
所以,通常建议用密钥登陆验证代替密码方式,即简单,又可靠。
Nov
16
最近发现,在使用yum更新包的时候,常报下面的错误:
有时候当替换了几个镜像后就可以了。但经常也会发现最终是失败的。由于我的系统是依赖yum更新的,若使用国外网络源的时候出这样的问题,影响挺大的。
Google搜索了一下,是一个常见问题,也提供了一些方法。只是后来发现,这些方法要不就是没有说清楚,要不就是误解。经过测试,最终基本可以解决了。
引用
Reading repository metadata in from local files
primary.xml.gz 100% |=========================| 1.7 MB 02:25
http://www.mirrorservice.org/sites/apt.sw.be/redhat/el4/en/i386/dag/repodata/primary.xml.gz:
[Errno -1] Metadata file does not match checksum
Trying other mirror.
primary.xml.gz 100% |=========================| 1.7 MB 02:25
http://www.mirrorservice.org/sites/apt.sw.be/redhat/el4/en/i386/dag/repodata/primary.xml.gz:
[Errno -1] Metadata file does not match checksum
Trying other mirror.
有时候当替换了几个镜像后就可以了。但经常也会发现最终是失败的。由于我的系统是依赖yum更新的,若使用国外网络源的时候出这样的问题,影响挺大的。
Google搜索了一下,是一个常见问题,也提供了一些方法。只是后来发现,这些方法要不就是没有说清楚,要不就是误解。经过测试,最终基本可以解决了。
Nov
15
在部署好php-syslog-ng服务器后,发现邮件服务器报下面的错误信息:
以前一直都没有发现该问题,就是因为通常我只是grep error或fail信息,而没有看miss信息,并且原来的syslog也没有明显的把level区分开来。所以说,一定要选好日志服务器,并做好其维护工作。
引用
Nov 11 04:30:04 mail postfix/smtpd[25964]: sql_select option missing
Nov 11 04:30:04 mail postfix/smtpd[25964]: auxpropfunc error no mechanism available
Nov 11 04:30:04 mail postfix/smtpd[25964]: auxpropfunc error no mechanism available
以前一直都没有发现该问题,就是因为通常我只是grep error或fail信息,而没有看miss信息,并且原来的syslog也没有明显的把level区分开来。所以说,一定要选好日志服务器,并做好其维护工作。
Nov
14
正如前面提到的,syslog-ng是可用于替代系统原来的sysklog日志服务器。其配置简单,并且支持多种不同的日志目的导向方式,包括mysql数据库。以下再配合php-syslog-ng套件,即可从浏览器实现日志的观察和过滤,相当方便。
演示环境:http://syslog.linuxfly.org
用户名和密码都是:demo
演示环境:http://syslog.linuxfly.org
用户名和密码都是:demo
Nov
13
前面详细介绍了sysklog套件的配置和使用。但毕竟该套件已经比较老了,很多功能都不够完善,而系统日志又是系统维护中至关重要的参考信息。我们可以使用syslog-ng(下一代系统日志工具)来替代原来的sysklog服务。syslog-ng可以通过对日志信息执行正规表达式过滤,并且支持主机链方式等工作,都能更好的协助我们管理主机。红旗DC Server 5.0上默认就安装有该套件,可以直接使用。
Nov
12
目前,linux依旧使用syslogd作为日志监控进程,而在主流的linux发行版中依旧使用sysklog这个比较老的日志服务器套件。从前一篇日志可以看到,对其进行必要的配置能减少很多麻烦,并且可更有效的从系统日志监控到系统的状态。理解并完善一个syslog的配置,对于系统管理员来说显得尤为重要。
Nov
9
syslog是用来记录系统日志信息的,主要是记录重要信息。但一些无聊的日志信息很可能会把关键信息给冲掉,或者导致寻找信息很麻烦。例如,在/var/log/messages中就经常看到这样的信息:
没5分钟、10分钟就执行一次,烦不烦啊?一定要解决掉。
引用
Nov 9 17:10:02 mail crond(pam_unix)[4768]: session closed for user root
Nov 9 17:10:02 mail crond(pam_unix)[4769]: session closed for user root
Nov 9 17:15:01 mail crond(pam_unix)[4780]: session opened for user root by (uid=0)
Nov 9 17:15:01 mail crond(pam_unix)[4780]: session closed for user root
Nov 9 17:10:02 mail crond(pam_unix)[4769]: session closed for user root
Nov 9 17:15:01 mail crond(pam_unix)[4780]: session opened for user root by (uid=0)
Nov 9 17:15:01 mail crond(pam_unix)[4780]: session closed for user root
没5分钟、10分钟就执行一次,烦不烦啊?一定要解决掉。
Nov
6
bash环境下,以“-”或“--”开头的参数称选项参数。可以使用bash内置命令getopts或外部命令getopt进行传递。getopts的时候可参考《》,以下用getopt的范例进行说明。
Nov
3
OOM是Out of Memory的简写,也就是内存不足。出现该问题的原因有很多,如程序内存泄漏等。内存泄漏问题可以通过定时地终止和重启有问题的程序来发现和解决。在比较新的Linux内核版本中,有一种名为OOM(Out Of Memory )杀手的算法,它可以在必要时执行Kill而杀掉一些程序。