升级一下iptables

不知道为啥最近服务器总是爆内存死掉
多方求助下东哥给了一段流弊的解决方案:

iptables -A INPUT -p tcp --dport 80 --tcp-flags FIN,SYN,RST,ACK SYN -m connlimit --connlimit-above 10 --connlimit-mask 32 --connlimit-saddr -j REJECT --reject-with tcp-reset

iptables-save >/etc/sysconfig/iptables

但是我在运行的时候却提示 connlimit-saddr 有问题.

查了一番估计可能是iptables版本过低,赶紧升级一下:

yum update 
rpm -e --nodeps iptables-1.4.7-9.el6.i686
rpm -e --nodeps iptables-ipv6-1.4.7-9.el6.i686
yum groupinstall 'Development Tools'
wget http://www.netfilter.org/projects/iptables/files/iptables-1.4.19.tar.bz2
tar jxvf iptables-1.4.19.tar.bz2
cd iptables-1.4.19
LDFLAGS="-L$PWD/libiptc/.libs" ./configure --prefix=/usr --exec-prefix= --bindir=/usr/bin --with-xtlibdir=/lib/xtables --with-pkgconfigdir=/usr/lib/pkgconfig --enable-libipq --enable-devel
make
make install

不幸的是折腾一番后问题还是未解决…
明天继续吧.悲囧

linode关于爆内存重启的解决办法:
https://www.linode.com/wiki/index.php/Rebooting_on_OOM

Rebooting on OOM

In some situations, it may be beneficial to have your Linode automatically reboot if it runs out of memory. You can leverage a couple kernel settings and Lassie to make this happen.
NOTE: This is an inherently unclean reboot. You will encounter disk corruption or other tragedies if this occurs at a bad time. Additionally, if you end up in a situation where you run out of memory right after boot, you’ll enter an unclean reboot loop which will increase your chances of having a tragic day. The most important rule is to always ensure you have up-to-date, available, off-site backups of your Linode’s data. In the event non-backed-up data is lost, please send a self-addressed, stamped envelope to World’s Smallest Violin Giveaway, Box 17821, Pound Ridge Station.

Enable Lassie

Lassie, the Linode Autonomous System Shutdown Intelligent rEbooter, will issue a boot command should it find your kernel not running. You can ensure this is enabled from the Dashboard at Settings & Utilities -> Shutdown Watchdog.

Edit /etc/sysctl.conf

Adding the following two lines to your /etc/sysctl.conf will cause it to reboot after running out of memory:

vm.panic_on_oom=1
kernel.panic=10

The vm.panic_on_oom=1 line enables panic on OOM; the kernel.panic=10 line tells the kernel to reboot ten seconds after panicking.
[edit]Make the change live

You can make the change live now (vs. on a reboot) with:

echo 1 > /proc/sys/vm/panic_on_oom
echo 10 > /proc/sys/kernel/panic

小 虾

哦也,我是小虾

You may also like...