Ò׽ؽØÍ¼Èí¼þ¡¢µ¥Îļþ¡¢Ãâ°²×°¡¢´¿ÂÌÉ«¡¢½ö160KB

Linux PAM Program/µ¯³ö»ñµÃrootȨÏÞ¶Ô»°¿ò

 Ê²Ã´Ò²²»ÒªËµ£¬ÏÈÀ´Ò»¸ö³ÌÐò°É¡£
/*
×¢ÒâÒªºÍÄãµÄϵͳһÖÂredhatÊÇÕâÑù/etc/pam.d/check_user
auth required /lib/security/pam_unix_auth.so
account required /lib/security/pam_unix_acct.so
1.Èç¹ûÐèÒª³öÏÖÃÜÂ뵯³ö¿ò»¹ÐèÒªÔÚÌí¼Ó
/etc/security/console.apps/check_user
USER=root
PROGRAM=~/check_user #Õâ¸ö·¾¶¾ÍÊÇÏÂÃæ±àÒëºÃºóµÄ·¾¶£¬²»ÄܺÍ3ÖÐ×÷Á´½ÓµÄ·¾¶Ò»Ñù
SESSION=true
2.ÔÙ¶Ô/usr/bin/consolehelper×÷ln
sudo ln -s consolehelper check_user
3.ÕâÑùÔËÐÐ/usr/bin/check_user¾Íʵ¼ÊÔÚµ÷ÓÃconsolehelper£¬ÔÙÈ¥¶ÁÈ¡
/etc/security/console.apps/check_userÀïPROGRAMÉ趨µÄ·¾¶
4.±àÒëʱҪÕâÑù:
gcc check.c -ldl -lpam -lpam_misc -o ~/check_user
*/
#include <security/pam_appl.h>
#include <security/pam_misc.h>
#include <stdio.h>
static struct pam_conv conv = {
 misc_conv, //¶¨ÒåÔÚpam_misc.hÖÐ, ·½±ãÄã±à³Ì
 NULL
};
int main(int argc, char *argv[])
{
 pam_handle_t *pamh=NULL;
 int retval;
 const char *user="root"; //Óû§ÃûÉèÖÃΪϵͳÉϵÄÒ»¸öºÏ·¨Óû§
 if(argc == 2) {
  user = argv[1];
 }
 if(argc > 2) {
  fprintf(stderr, "Usage: check_user [username]\n");
  exit(1);
 }
 retval = pam_start("check_user", user, &conv, &pamh);
 /* ¿ªÊ¼ */
 if (retval == PAM_SUCCESS)
  retval = pam_authenticate(pamh, 0);
 
 /* ÈÏÖ¤ÊDz»ÊǸÃÓû§? ÌáʾÄãÊäÈëÒ»¸öÃÜÂë */
 if (retval == PAM_SUCCESS)
  retval = pam_acct_mgmt(pamh, 0);
 /* Õ˺ÅÊÇ·ñÓÐЧ? */
 if (retval == PAM_SUCCESS) {
  fprintf(stdout, "Authenticated\n");
 } else {
  fprintf(stdout, "Not Authenticated\n");
 }
 if (pam_end(pamh,retval) != PAM_SUCCESS) {
  /* ½áÊø */
  pamh = NULL;
  fprintf(stderr, "check_user: failed to release authenticator\n");
  exit(1);
 }
 return ( retval == PAM_SUCCESS ? 0:1 ); /* indicate success */
}
#gcc check.c -ldl -lpam -lpam


Ïà¹ØÎĵµ£º

ʵսLinux Bluetooth±à³Ì£¨ËÄ£© L2CAP²ã±à³Ì

£¨L2CAPЭÒé¼ò½é£¬L2CAPÔÚBlueZÖеÄʵÏÖÒÔ¼°L2CAP±à³Ì½Ó¿Ú£©
Ò»£ºL2CAPЭÒé¼ò½é£º
Logical Link Control and Adaptation Protocol(L2CAP)
Âß¼­Á¬½Ó¿ØÖƺÍÊÊÅäЭÒé (L2CAP) ΪÉϲãЭÒéÌá¹©ÃæÏòÁ¬½ÓºÍÎÞÁ¬½ÓµÄÊý¾Ý·þÎñ£¬²¢Ìṩ¶àЭÒ鹦ÄܺͷָîÖØ×é²Ù×÷¡£L2CAP ³äÐíÉϲãЭÒéºÍÓ¦ÓÃÈí¼þ´«ÊäºÍ½ÓÊÕ×î´ó³¤¶ÈΪ 64K µÄ L2CAP Ê ......

linux ÊÖ¼Ç

 ÔÍÄðÐí¾ÃµÄÊÖ¼ÇÖÕÓÚÃæÊÀÁË£¬Ï£Íû¸ßÊÖ¶à¶àÖ¸µã¡£´Ó7Ôµ½ÏÖÔÚ£¬ÎÒ²ÎÓëµÄ²úÆ·µÄÑз¢£¬Ò²Ëã¸æÒ»¶ÎÂ䣬Ã÷Ìì¾ÍÊdzɶ¼µÄÒ½²©»áÁË£¬Õ⼸¸öÔÂÂýÂý¿Ð³öÀ´µÄ¶«Î÷£¬ÒªºÃºÃµÄ×ܽáһϣ¬´óѧµÄʱºò£¬ÍæµÄÊǵ¥Æ¬»ú£¬armÂã»ú£¬¶ÔÓÚϵͳÓÐËùÁ˽⣬×ö¹ýһЩСʵÑ飬µ«ÊÇûÓÐϵͳµÄѧϰ£¬Èç½ñ×öµÄÊÂÇ飬ÈÃÎÒ¶ÔǶÈëʽlinuxµÄÈÏʶҲ¸üÕýÁËÐ ......

linuxµÄ³´¹ÉÈí¼þ¡°È«Ê¤¡±

    ѧϰlinuxÒ»Äê¶àÁË£¬»ù±¾¾ÍÊÇÒ»¸ö“ϹÕû£­£­>³öÎÊÌ⣭£­>°Ù¶È/Google£­£­>½â¾öÎÊÌ⣭£­>¼ÌÐøÏ¹Õû"µÄÑ­»·¡£ºÜ¸ÐÐ»ÍøÉÏÄÇô¶àÈ˶¼ÄܰÑ×Ô¼ºµÄ¾­Àú¡¢¾­Ñé¸ú´ó¼Ò·ÖÏí£¬ËùÒÔÒ»Ö±¶¼ÓаÑ×Ô¼ºÅöµ½µÄÎÊÌâ¼°½â¾ö°ì·¨¸ú´ó¼Ò·ÖÏí£¬Ï£Íû¶Ô´ó¼ÒÄÜÓÐËù°ïÖú¡£
    ºÃ£¬²»¶à·Ï»°ÁË¡ ......

LinuxÆô¶¯¹ý³Ì£¨´ÓÖ´ÐÐinitµ½Óû§µÇ¼²¿·Ö£©

 http://blog.csdn.net/unbutun/archive/2009/01/21/3847514.aspx
±¾ÎÄÒÔRedHat9.0ºÍi386ƽ̨ΪÀý£¬ÆÊÎöÁË´ÓÓû§´ò¿ªµçÔ´Ö±µ½ÆÁÄ»³öÏÖÃüÁîÐÐÌáʾ·ûµÄÕû¸öLinuxÆô¶¯¹ý³Ì¡£²¢ÇÒ½éÉÜÁËÆô¶¯ÖÐÉæ¼°µ½µÄ¸÷ÖÖÎļþ¡£
¡¡¡¡ÔĶÁLinuxÔ´´úÂ룬ÎÞÒÉÊÇÉîÈëѧϰLinuxµÄ×îºÃ·½·¨¡£ÔÚ±¾ÎĶÔLinuxÆô¶¯¹ý³ÌµÄ½éÉÜÖУ¬ÎÒÃÇÒ²³¢ÊÔ´ÓÔ´´ú ......
© 2009 ej38.com All Rights Reserved. ¹ØÓÚE½¡ÍøÁªÏµÎÒÃÇ | Õ¾µãµØÍ¼ | ¸ÓICP±¸09004571ºÅ