ÔõôÔÚLinuxÖÐÌí¼ÓеÄϵͳµ÷ÓÃ
ϵͳµ÷ÓÃÊÇÓ¦ÓóÌʽºÍ²Ù×÷ϵͳÄÚºËÖ®¼äµÄ¹¦Äܽӿڡ£ÆäÖ÷ҪĿµÄÊÇʹµÃÓû§
ÄÜʹÓòÙ×÷ϵͳÌṩµÄÓйØÉ豸¹ÜÀí¡¢ÊäÈë/ÊäÈëϵͳ¡¢ÎļþϵͳºÍ½ø³Ì¿ØÖÆ¡¢
ͨÐż°´æ´¢¹ÜÀíµÈ·½ÃæµÄ¹¦ÄÜ£¬¶ø²»±ØÁ˽âϵͳ³ÌʽµÄÄÚ²¿½á¹¹ºÍÓйØÓ²¼þϸ
½Ú£¬´Ó¶øÆðµ½¼õÇáÓû§¸ºµ£ºÍ±£»¤ÏµÍ³¼°Ìá¸ß×ÊÔ´ÀûÓÃÂʵÄ×÷Óá£
¡¡¡¡Linux²Ù×÷ϵͳ×÷ΪÃâ·ÑÈí¼þµÄ´ú±í£¬ËûÓÅÁ¼µÄÐÔÄÜʹµÃËûµÄÓ¦ÓÃÈÕÒæ¹ã·º£¬
²»½öµÃµ½×¨ÒµÈËÊ¿µÄ¿Ï¶¨£¬¶øÇÒÉÌÒµ»¯µÄÓ¦ÓÃÒ²ÊÇÈç»ðÈçݱ¡£ÔÚLinuxÖУ¬´ó²¿·Ö
µÄϵͳµ÷Óðüº¬ÔÚLinuxµÄlibc¿âÖУ¬Í¨¹ý±ê×¼µÄCº¯Êýµ÷Ó÷½·¨Äܵ÷ÓÃÕâЩϵͳ
µ÷Óá£ÄÇô£¬¶ÔLinuxµÄ·¢ÉÕÓÑÀ´Ëµ£¬ÔõôÔÚLinuxÖÐÔö¼ÓеÄϵͳµ÷ÓÃÄØ£¿
1 Linuxϵͳµ÷ÓûúÖÆ
¡¡¡¡ÔÚLinuxϵͳÖУ¬ÏµÍ³µ÷ÓÃÊÇ×÷ΪһÖÖÒì³£ÀàÐÍʵÏֵġ£Ëû½«Ö´ÐÐÏàÓ¦µÄ»úÆ÷
´úÂëÖ¸ÁîÀ´²úÉúÒì³£Ðźš£²úÉúÖжϻòÒì³£µÄÖØÒªÐ§¹ûÊÇϵͳ×Ô¶¯½«Óû§Ì¬×ª»»Îª
ºËÐÄ̬À´¶ÔËû½øÐд¦Àí¡£Õâ¾ÍÊÇ˵£¬Ö´ÐÐϵͳµ÷ÓÃÒì³£Ö¸Áîʱ£¬×Ô¶¯µØ½«ÏµÍ³×ª»»
ΪºËÐÄ̬£¬²¢°²ÅÅÒì³£´¦Àí³ÌʽµÄÖ´ÐС£
¡¡¡¡LinuxÓÃÀ´ÊµÏÖϵͳµ÷ÓÃÒì³£µÄʵ¼ÊÖ¸ÁîÊÇ£º
¡¡¡¡Int  $0x80
¡¡¡¡ÕâÒ»Ö¸ÁîʹÓÃÖжÏ/Òì³£ÏòÁ¿ºÅ128£¨¼´16½øÖƵÄ80£©½«¿ØÖÆÈ¨×ªÒƸøÄںˡ£Îª
´ïµ½ÔÚʹÓÃϵͳµ÷ÓÃʱ²»±ØÓûúÆ÷Ö¸Áî±à³Ì£¬ÔÚ±ê×¼µÄCÓïÑÔ¿âÖÐΪÿһϵͳµ÷ÓÃ
ÌṩÁËÒ»¶Î¶ÌµÄ×Ó³Ìʽ£¬Íê³É»úÆ÷´úÂëµÄ±à³Ì¹¤×÷¡£ÊÂʵÉÏ£¬»úÆ÷´úÂë¶Î·Ç³£¼ò
¶Ì¡£ËûËùÒª×öµÄ¹¤×÷Ö»Êǽ«Ë͸øÏµÍ³µ÷ÓõIJÎÊý¼ÓÔØµ½CPU¼Ä´æÆ÷ÖУ¬½Ó×ÅÖ´ÐÐ
int  $0x80Ö¸ÁȻºóÔËÐÐϵͳµ÷Óã¬ÏµÍ³µ÷Óõķµ»ØÖµ½«ËÍÈëCPUµÄÒ»¸ö¼Ä´æÆ÷
ÖУ¬±ê×¼µÄ¿â×Ó³ÌʽȡµÃÕâÒ»·µ»ØÖµ£¬²¢½«ËûËÍ»ØÓû§³Ìʽ¡£
¡¡¡¡ÎªÊ¹ÏµÍ³µ÷ÓõÄÖ´ÐгÉΪһÏî¼òµ¥µÄÈÎÎñ£¬LinuxÌṩÁËÒ»×éÔ¤´¦ÀíºêÖ¸Áî¡£
ËûÃÇÄÜÓÃÔÚ³ÌʽÖС£ÕâЩºêÖ¸Áîȡһ¶¨µÄ²ÎÊý£¬È»ºóÀ©Õ¹Îªµ÷ÓÃÖ¸¶¨µÄϵͳµ÷ÓÃ
µÄº¯Êý¡£
¡¡¡¡ÕâЩºêÖ¸Áî¾ßÓÐÀàËÆÏÂÃæµÄÃû³Æ¸ñʽ£º
¡¡¡¡_syscallN£¨parameters£©
¡¡¡¡ÆäÖÐNÊÇϵͳµ÷ÓÃËùÐèµÄ²ÎÊýÊýÄ¿£¬¶øparametersÔòÓÃÒ»×é²ÎÊý´úÌæ¡£ÕâЩ²Î
ÊýʹºêÖ¸ÁîÍê³ÉÊʺÏÓÚÌØ¶¨µÄϵͳµ÷ÓõÄÀ©Õ¹¡£ÀýÈ磬ΪÁ˽¨Á¢µ÷ÓÃsetuid£¨£©Ïµ
ͳµ÷Óõĺ¯Êý£¬Ó¦¸ÃʹÓãº
¡¡¡¡_syscall1£¨ int£¬ setuid£¬ uid_t£¬ uid £©
¡¡¡¡syscallN£¨ £©ºêÖ¸ÁîµÄµÚ1¸ö²ÎÊýint˵Ã÷²úÉúµÄº¯ÊýµÄ·µ»ØÖµµÄÀàÐÍÊÇÕû
ÐÍ£¬µÚ2¸ö²ÎÊýsetuid˵Ã÷²úÉúµÄº¯ÊýµÄÃû³Æ¡£ºóÃæÊÇϵͳµ÷ÓÃËùÐèÒªµÄÿ¸ö²Î
Êý¡£ÕâÒ»ºêÖ¸ÁîºóÃæ¸üÓÐÁ½¸ö²ÎÊýuid_tºÍuid·Ö±ðÓÃ
Ïà¹ØÎĵµ£º
Çл»µ½rootÓû§ÏÂ,
service iptables status ÓÃÓڲ鿴ÊÇ·ñÓпªÆô·À·½Ç½.
service iptables stop ÓÃÓڹرշÀ»ðǽ.
service iptables start ÓÃÓÚ´ò¿ª·À»ðǽ.
·À»ðǽµÄ¿ªÆôÓÐʱ»áÏÞÖÆÍⲿ·ÃÎÊ·þÎñÆ÷ÉϵĶ˿Úʧ°Ü. ......
slab·ÖÅäÆ÷ÐÎÏóµØËµ¾ÍÊÇÏÈÓÉ»ï°é»úÖÆÉêÇë¿ÕÏÐÄÚ´æ¿Õ¼ä£¬È»ºóslab·ÖÅäÆ÷ÔÙ°ÑÕâ¸öÄÚ´æ¿Õ¼ä½øÐзָ°´Í¬Ñù´óСÀ´½øÐзָ×îºóÔÙÓÃһЩÊý¾Ý½á¹¹À´½øÐйÜÀí¡£ÉÏÃæÖ»ÊÇÐÎÏóµØËµ·¨¡£ÎÒÃÇÆ½Ê±°ÑÓÉslab½øÐзָîºóµÄÄÚ´æÎÒÃdzÆÖ®Îª¸ßËÙ»º´æÄÚ´æ¡£ÕâÑù¿´À´¾ÍÖªµÀËùνµÄ¸ßËÙ¾ÍÊÇ˵²»ÊÇÿ´Î·ÖÅäºÍÊÍ·ÅÄÚ´æ¶¼ÒªÕÒ»ï°é»úÖÆ£¬¿ÉÒ ......
Ï̳߳أº¼òµ¥µØËµ£¬Ïß³Ì³Ø ¾ÍÊÇÔ¤ÏÈ´´½¨ºÃÒ»ÅúỊ̈߳¬·½±ã¡¢¿ìËٵش¦ÀíÊÕµ½µÄÒµÎñ¡£±ÈÆð´«Í³µÄµ½À´Ò»¸öÈÎÎñ£¬¼´Ê±´´½¨Ò»¸öÏß³ÌÀ´´¦Àí£¬½ÚÊ¡ÁËÏ̵߳Ĵ´½¨ºÍ»ØÊյĿªÏú£¬ÏìÓ¦¸ü¿ì£¬Ð§Âʸü¸ß¡£
ÔÚlinuxÖУ¬Ê¹ÓõÄÊÇposixÏ߳̿⣬Ê×ÏȽéÉܼ¸¸ö³£Óõĺ¯Êý£º
1 Ï̵߳Ĵ´½¨ºÍÈ¡Ïûº¯Êý
pthread_create
´´½¨Ïß³Ì
pthread_join
º ......
RHEL5´î½¨DNS·þÎñÆ÷ʵÏÖÃû³Æ½âÎö Èý
£¨¶þ£©named.confÎļþ˵Ã÷£º
´ËÎļþÐèÓû§×Ô¼º´´½¨£¬¿É´Ó/usr/share/doc/bind-9.3.3/sample/etcÖи´ÖƵ½/var/named/chroot/etc/Ŀ¼ÏÂ
// Sample named.conf BIND DNS server 'named' configuration file
// for the Red Hat BIND distribution.
// See the BIND ......
#!/bin/bash
cpu=`top -b -n 1 | grep -w Cpu | awk '{print$5}'| awk -F '%' '{printf"%d",$1}'`
if [ $cpu -le 50 ]
then
echo "cpu: $((100 - cpu))%" > test.txt
mail -s "·þÎñÆ÷½ô¼±, CPUÕ¼ÓÃÂʹý¸ß£¡" yourmail@domail.com < test.txt
fi
mem=`top -b -n 1 | grep -w Me ......