linuxÄÚºËnetfilterµÄʵÏÖÒÔ¼°ipset
netfilterµÄʵÏÖ»úÖÆ»ùÓÚËĸö²ã´ÎµÄÆ¥Å䣬Êý¾Ý°üÔÚÿ¸ö²ã´Î¶¼Òª¾¹ýÒ»¸ö¹ýÂËÁ´±í£¬µÚÒ»¸ö²ã´Î¾ÍÊÇhook£¬ÖÚËùÖÜÖªlinuxÄÚºËÖÐÒ»¹²ÓµÓÐ5¸öhooks£¬µ±È»ÄãÒ²¿ÉÒÔ×Ô¼ºÐÞ¸ÄÄÚºËÔÚÈκεط½Ìí¼Óhook£»µÚ¶þ¸ö²ã´Î¾ÍÊÇÿ¸öhookÏÂÃæµÄtables£¬Ã¿Ò»¸öhook¶¼¹ý¹ÒÔØÁã¸ö»òÕßÈô¸É¸ötables£¬Êý¾Ý°üÒªÒ»¸öÒ»¸ö¾¹ýÕâЩtables£»µÚÈý¸ö²ã´Î¾ÍÊÇrule£¬Ã¿¸ötableÏÂÃæÓµÓÐÁã¸ö»òÕßÈô¸É¸örule£¬Êý¾Ý°üÒªÒÀ´Î¾¹ýÕâЩrules£¬Ö»ÒªÓÐÒ»¸örule¶ÔÊý¾Ý°ü½øÐÐÁ˲þö£¬ÄÇô½«²»ÔÙ¾¹ý¸ÃhookµÄ¸ÃtableµÄ¶ÔÓ¦ruleµÄºóÃærules£»µÚËĸö²ã´ÎÊÇmatchs£¬ºÍrulesµÄ±éÀúÕýºÃÏà·´£¬Êý¾Ý°üÖ»ÓÐÔÚ¶ÔÓ¦ruleÏÂÃæµÄËùÓеÄmatchs¶¼Æ¥Åäºó²ÅËãÆ¥Åä¡£
ÔÚÄÚºËÖУ¬netfilterÊÇÓÉÏÂÃæ4¸öºËÐĽṹÌåÖ§³ÅÆðÀ´µÄ£º
struct xt_table_info
{
unsigned int size;
unsigned int number;
unsigned int initial_entries;
unsigned int hook_entry[NF_IP_NUMHOOKS];
unsigned int underflow[NF_IP_NUMHOOKS];
char *entries[NR_CPUS];
};
entries[cpu]Ö¸ÏòÁËÒ»¸öipt_entryÊý×飬¸ÃÊý×éµÄÄÚ´æ×éÖ¯ÐÎʽÊÇÆ½Ì¹µÄ£¬Í¨¹ýipt_entryµÄnext_offset×ֶνøÐбéÀú£º
struct ipt_entry
{
struct ipt_ip ip;
unsigned int nfcache;
u_int16_t target_offset;
u_int16_t next_offset;
unsigned int comefrom;
struct xt_counters counters;
unsigned char elems[0];
};
elemsÖ¸ÏòÁËÒ»¿éƽ̹ÄÚ´æÄ£Ê½µÄ£¬°üº¬ÁËÈô¸É¸ömatchsºÍÒ»¸ötarget£¬targetͨ¹ýtarget_offsetÀ´¶¨Î»£¬¸÷¸ömatchsÕýÈçÉÏÃæËù˵£¬Í¨¹ýnext_offsetÀ´½øÐбéÀúµÄ£º
struct xt_entry_match
{
union {
struct {
u_int16_t match_size;
char name[XT_FUNCTION_MAXNAMELEN-1];
u_int8_t revision;
} user;
struct {
&nbs
Ïà¹ØÎĵµ£º
´´½¨×ÀÃæÍ¼±ê
Ŀǰ½«ÍøÂçÓ¦ÓÃÀ©Õ¹µ½×ÀÃæÊÇÒ»¸öÇ÷ÊÆ£¬´æÔÚןܶà½â¾ö·½°¸£¬±¾ÎÄÒÔ Mozilla Prism ΪÀý£¬ÀàËÆµÄ·½·¨Í¬ÑùÊÊÓÃÓÚ Google Chrome ¡£
1. µ½ Mozilla Prism µÄÍøÕ¾ÉÏÏÂÔØ Prism£¬µã»÷ Download Now Ö®ºó»áÌáʾÓÐÁ½ÖÖ£¬Ò»ÖÖÊÇÒÔ Mozilla Firefox À©Õ¹µÄ·½Ê½£¬ÊʺÏÒѾ°²×°ÓÐ Firefox µÄÅóÓÑ£»Ò»Ö ......
Apache ÊÇÊÀ½çÅÅÃûµÚÒ»µÄWeb ·þÎñÆ÷, ¸ù¾ÝNetcrafËù×÷µÄµ÷²é,ÊÀ½çÉϰٷÖÖ®ÎåÊ®ÒÔÉ쵀 Web ·þÎñÆ÷ÔÚʹÓà Apache¡£ ÓÈÆäÊÇÏÖÔÚ£¬Ê¹Óà LAMP£¨Linux + Apache + MySQL + PHP£©À´´î½¨Öеȼ¶±ðµÄÓ¦ÓÃÒѾÊÇÒ»ÖÖÁ÷Ðеķ½Ê½£¬Òò´Ë£¬ÕÆÎÕ Apache µÄÅäÖÃÊÇϵͳ¹¤³Ìʦ±Ø±¸µÄ¼¼ÄÜÖ®Ò»¡£ ʹÓà LAMP£¨Linux + Apache + MySQL + PHP£©À´´î½ ......
£¨1£©Ö¡»º³åÉ豸¸úTTYµÄ¹ØÏµ¡£ÐèÒª¹Ø×¢tty¸úÖ¡»º³åÉ豸µÄ¹ØÏµ£¬Ò»°ãÇé¿öÏÂÖ¡»º³åÉ豸ÊÇ¿ÉÒÔ¶ÀÁ¢²Ù×÷µÄ£¬µ«ÊÇÈç¹ûΪÁ˱£Ö¤µ¥¶ÀÕ¼Óò»±»ÇÀÕ¼£¬Ëƺõ»¹Òª¹ØÁªÒ»¸öttyÖÕ¶Ë¡£ÕâÀïÓõÄÊÇÐéÖÕ¶ËVT¡£
ÐéÖÕ¶Ë£¬Ò²½ÐÐéÆÁ£¬ËüµÄÓ¢ÎÄÃû×ÖΪvirtual terminal,ËõдΪVT»òvt¡£ÔÚUnixϵͳÓû§ÖУ¬ÐéÖÕ¶ËÓÐ×Å ......
LinuxÏµĶ¨Ê±Æ÷ÓÐÁ½ÖÖ£¬ÒÔÏ·ֱð½éÉÜ£º
1¡¢alarm
Èç¹û²»ÒªÇóºÜ¾«È·µÄ»°£¬ÓÃalarm()ºÍsignal()¾Í¹»ÁË
unsigned int alarm(unsigned int seconds)
º¯Êý˵Ã÷:
alarm()ÓÃÀ´ÉèÖÃÐźÅSIGALRMÔÚ¾¹ý²ÎÊýsecondsÖ¸¶¨µÄÃëÊýºó´«Ë͸øÄ¿Ç°µÄ½ø³Ì¡£Èç¹û²ÎÊýsecondsΪ0£¬Ôò֮ǰÉèÖõÄÄÖÖӻᱻȡ
......
linuxËÑË÷·¾¶: Èç¹ûÓõÄshellÊÇbash,Ôò»·¾³±äÁ¿¼ÓÔØ
1./etc/profile
2.Óû§homeĿ¼ÏÂÃæµÄ.bash_profile
3.Óû§homeĿ¼ÏÂÃæµÄ.bash_login
gcc -I<includeĿ¼>
POSIXϵͳҲ¿ÉÒÔ½¨Á¢»·¾³±äÁ¿
......