linux nat squid ntop 12月 10th, 2006
公司原先使用的网关是Windows系统,后来由于笔记本增加,把网关换成了无线路由,由于人数的增加,无线路由不堪重负,终于开始频频宕机。试着划分了3个网段,把手上的3个无线路由都用上,还是不稳定,毕竟家用级的无线路由撑不了太多的clients。
研究了一下Linux做网关,利用Iptables的nat来实现局域网的共享上网。正好最近一直在研究Squid,就搞了一个NAT+Squid的Linux网关。Squid有缓存加速作用,利用iptables将局域网内所有的web请求定向到Squid监听的端口。
在ADSL拨号的时候遇到无法正常联网的情况,细察之下发现外网的网卡已经建立和远程服务器的连接,外网的IP也已经取得,但没有正常的获取网关,route add default ppp0,搞定。
局域网机器的增加,意味着带宽的不足,时不时有不自觉的家伙疯狂下载或者bt,Linux下也有很多不错的网络监测程序。NTOP就是其中之一。这个小东西可以让你以Web的方式来监控局域网,统计所有用户的网络使用情况,哪个IP正在访问哪些网站,实时流量,通通一目了然,再配合一下iptables,呵呵。
fsck 12月 10th, 2006
一台Squid服务器昨天凌晨开始磁盘报错,最后导致Squid服务停止。上服务器查看了一下/var/log/messages下全部都是磁盘错误报告。
Dec 10 12:20:06 linux-6 kernel: ata1: translated ATA stat/err 0×61/04 to SCSI SK/ASC/ASCQ 0xb/00/00
Dec 10 12:20:06 linux-6 kernel: ata1: status=0×61 { DriveReady DeviceFault Error }
Dec 10 12:20:06 linux-6 kernel: ata1: error=0×04 { DriveStatusError }
原以为硬盘可能报销,赶快另外从电子城订了硬盘准备更换。机器从机房拿下来后,经过同事查看,/home目录有file system error。本地登录系统修复,fsck -p,自动修复。重启检查日志,一切正常,重新上架,恢复运行。上架前给机器加了一个从盘专门存储cache。同时将Squid升级到squid-2.6.STABLE5-20061210。
上次尝试用cacti监控这台squid的性能,一直没有能配置成功,只能先用squid自带的manger。
Linux 禁止IPv6 12月 4th, 2006
Linux2.6核心默认都支持IPv6,不过我们目前国内在短时间内是用不上,看着挺碍眼,干脆去掉.
禁止IPv6内核模块
# vi /etc/modprobe.conf
添加如下两行:
alias net-pf-10 off
alias ipv6 off
禁止IPv6防火墙
# /sbin/chkconfig –level 35 ip6tables off
重启后生效。
Mysql 4.1.21 11月 13th, 2006
前几天正好升级论坛程序,升级后,顺便把数据库服务器的Mysql也升级了,从原来的4.1.16升级到最新的4.1.21。原来的机器不是自己配置的,用的bin包,这次下载了sourse code进行编译,编译的前使用优化参数。这几天通过phpMyAdmin观察,效率比之前明显提高,cpu和内存的占有率下降明显。3G内存能省下大概5xxM。晚上微调了一下my.cnf的参数。
公钥和密钥 9月 26th, 2006
公司的linux服务器,重要的我都限制了IP登录。个别没有限制IP的在日志里面老是看到有人在尝试暴力破解root密码。前两天刚抽空升级了所有服务器的Openssl和Openssh,顺便设置了SSH的密钥登录,并禁止使用密码登录。在SecureCRT客户端生成的公钥传到服务器,用ssh-keygen将公钥转换成为OpenSSH兼容的格式,在SecureCRT客户端使用私钥登录。需要注意的是SecureCRT使用的是SSH2格式的公钥,而OpenSSH是使用的OpenSSH格式的公钥。
SecureCRT使用密钥登录SSH服务器 9月 26th, 2006
1.使用SecureCRT创建私钥和公钥.
SecureCRT: Quick Connect -> Authentiation -> Public Key -> Properties -> Create Identity File -> DSA/RSA -> Set Passphrase -> Done
这个时候在指定目录会生成两个文件,例如,私钥my_rsa和公钥my_rsa.pub
2.linux服务器上建立.ssh目录,一般情况下,已经有这个目录
# mkdir /root/.ssh
# chmod 700 /root/.ssh
3.将公钥 my_rsa.pub 传到linux服务器,将SSH2兼容格式的公钥转换成为Openssh兼容格式# ssh-keygen -i -f Identity.pub >> /root/.ssh/authorized_keys2
# chmod 600 /root/.ssh/authorized_keys2
4.在SecureCRT里面设置登录模式为PublicKey,并选择刚刚创建的my_rsa文件作为私钥
5.重启Linux服务器上SSH服务器
#service sshd restart 或者 /etc/rc.d/init.d/sshd restart
6.由于已经设置了密钥登录,原来的密码登录就完全可以去掉
# vi /etc/ssh/sshd_config
Protocol 2 /仅允许使用SSH2
PubkeyAuthentication yes /*启用PublicKey认证
AuthorizedKeysFile .ssh/authorized_keys2 /*PublicKey文件路径
PasswordAuthentication no /*禁止密码验证登录
PS:以上步骤是使用SecureCRT生成的密钥对来进行登录验证的,其实也可以在服务器上使用ssh-keygen命令生成的密钥,同样在生成密钥对之后,将格式转换成SecureCRT 使用的SSH2格式
升级Openssh 9月 26th, 2006
1. 升级OpenSSL
- 下载地址:http://www.openssl.org
- 如果使用0.9.8版本,在编译安装的时候会出错,虽然有办法可以解决…建议还是用0.9.7
# cd /usr/local/src
# tar xzvf openssl-0.9.7k.tar.gz
# cd openssl-0.9.7k
# ./config –prefix=/usr/local/openssl-0.9.7k
# make
# make test
# make install
2. 升级OpenSSH
# cd /usr/local/src
# tar xzvf openssh-4.3p2.tar.gz
# cd openssh-4.3p2
# ./configure \
–prefix=/usr \
–with-pam \
–with-zlib \
–with-ssl-dir=/usr/local/openssl-0.9.7k \
–with-md5-passwords \
–mandir=/usr/share/man \
–sysconfdir=/etc/ssh
# make
# make install
完成后,检查一下ssh是否升级成功
# ssh -v
OpenSSH_4.3p2, OpenSSL 0.9.7k 05 Sep 2006
Bind 9月 22nd, 2006
上网的人都会遇到电信和网通之间的互联互通问题。因此很多网站使用了电信和网通各搞一个或多个镜像站点的方法提高访问速度。再加上BIND9做智能DNS,自动根据客户端IP来判断访问者,网通的用户为其解析网通的IP,电信的用户为其解析电信IP.基本上可以解决国内电信和网通互联互通问题。这几天搞了两台dns服务器测试bind9,做为智能DNS,而且已经基本通过了测试,再整理一下,就可以投入使用了……
cacti+rrdtool 9月 1st, 2006

一直以来都是使用MRTG,通过监控每个机柜的交换机端口,来监控所有服务器的流量。MRTG的好处就是简单方便,安装后修改一下配置文件就可以直接使用。在服务器量少的时候,还好,一旦服务器数量众多,MRTG就有点力不从心,服务器超过400台以后,MRTG已经无法在10分钟内完成一次数据更新。只能降低数据更新频率,延长时间,同时由于服务器数量过多,MRTG持续占用服务器CPU资源,在服务器数量不断增加的情况下,只能增加监控的服务器。
网上搜索了众多资料,最后选择Cacti+rrdtool。Cacti是一套php程序,它利用snmpget采集设备的SNMP数据,再利用rrdtool进行绘图。用了三天时间,终于把这套东西装了起来。只用了一台服务器,Cacti+rrdtool,代替了MRTG+3台监控服务器。而且管理起来尤其方便,通过Web界面就可以随意添加被监控设备。


Zeus 4.3+php+Zend Optimizer+Linux安装指南 7月 19th, 2006
转载自discuz.net
本文为了充分实现Zeus 4.3所具有的suexec功能,将把PHP安装为Local方式。