¾Ù¸®¾î½ÌÇÑ´Ù´Â °ÍÀº ÇϳªÀÇ ¼ö½ÅÀÚÀÇ ÁÖ¼Ò¸¦ Çϳª ¶Ç´Â ¿©·¯ ´Ù¸¥ ¼ö½ÅÀÚÀÇ ´ëÇ¥·Î ÁöÁ¤ÇÒ °æ¿ì »ç¿ëÇÑ´Ù. ¼ö½ÅÀÚ´Â ´ÜÀÏ ¼ö½ÅÀÚÀϼöµµ ÀÖ°í ¿©·¯¸íÀÇ ¼ö½ÅÀÚ¿¡ ´ëÇÑ °ÍÀϼöµµ ÀÖ°í ½ÉÁö¾î´Â ÇÁ ·Î±×·¥À̳ª ÆÄÀÏÀÌ µÉ ¼öµµÀÖ´Ù.
¾Ù¸®¾î½ºÀÇ ÁÖ¿ä ¿ëµµ´Â ´ÙÀ½°ú °°´Ù.
aliasesÈÀÏÀÌ ÀÖ´Â À§Ä¡´Â sendmail.cf¿¡¼ AliasesFile=/etc/aliases¿Í °°ÀÌ ÁöÁ¤ÇÏ¿© »ç¿ëÇÑ´Ù. ¸¸ ÀÏ ¾Ù¸®¾î½º ¿É¼ÇÀÌ ¼³Á¤µÇ¾îÀÖÁö ¾ÊÀ¸¸é sendmailÀº ¾Ù¸®¾î½º¸¦ ÇÏÁö ¾Ê´Â °ÍÀ¸·Î ÀνÄÇÑ´Ù.
aliasesÈÀÏÀº ¿¬¼ÓµÈ ÅØ½ºÆ®·Î µÇ¾î ÀÖ´Ù. #À¸·Î ½ÃÀ۵Ǵ ¸ðµç ¶óÀÎÀº ÁÖ¼®À̶ó´Â ¶æÀ¸·Î ¹«½Ã µÇ¸ç °ø¹éÀÎ ÁÙµµ ¸¶Âù°¡Áö´Ù. ¿¹¸¦ Çϳª µé¾î º¸ÀÚ.
postmaster: leesl
¿·ÀÇ postmasterÀº local userÀ̸ç :´ÙÀ½ÀÇ leeslÀº postmasterÀ̶ó´Â À̸§À» leesl·Î ¹Ù²Ù¾î ¸ÞÀÏ À» º¸³½´Ù´Â °ÍÀÌ´Ù. µû¶ó¼ postmaster·Î °¡´Â ¸ÞÀÏÀº leesl·Î °¡°Ô µÈ´Ù. ¾Ù¸®¾î½º¸¦ ±¸ºÐÇÏ´Â µ¥ ":"¹®ÀÚ¸¦ »ç¿ëÇØ¾ß ÇÑ´Ù. ¸¸ÀÏ ÀÌ ¹®ÀÚ¸¦ ¾²Áö ¾ÊÀ¸¸é missing colon.. À̶ó´Â ¿¡·¯°¡ ¹ß»ýÇÑ ´Ù.
postmaster: leesl, sonny@enok
¾Ù¸®¾î½º ÆÄÀÏÀº ","¹®ÀÚ¸¦ ½á¼ ³ª¿ÇÒ ¼ö ÀÖ´Ù. ÀÌ °æ¿ì leeslÀº ·ÎÄà À¯ÀúÀ̰í sonny@enok´Â enok¿¡ ÀÖ´Â À¯ÀúÀÌ´Ù. ¸¸ÀÏ sonny¶ó´Â À̸§À» ·ÎÄÿ¡¼ ãÁö ¸øÇÏ¸é ¾Ù¸®¾î½º ÆÄÀÏ¿¡¼ ´ÙÀ½ ÁÙ ÀÌ ÀÖ³ª ¼¾µå¸ÞÀÏÀÌ °Ë»çÇÑ´Ù.
sonny: sonny@nora
postmaster: leesl°ú °°Àº ¾Ù¸®¾î½º¿¡¼ ¿ÞÂÊÀÇ postmasterÀÌ ·ÎÄÃÆÄÆ®ÀÌ´Ù. ÀÌ local part´Â Ç×»ó ¼¾µå¸ÞÀÏÀÌ ¶°Àִ ȣ½ºÆ®¿¡ ÀÌ·± »ç¿ëÀÚ°¡ ÀÖ¾î¾ß ÇÑ´Ù. ¾Ù¸®¾î½ºÀÇ Àǹ̰¡ ÁøÂ¥¸¦ °¡Â¥·Î ´ë½Å ÇØ¹ö¸®´Â °ÍÀ̹ǷΠÁøÂ¥´Â ¹Ýµå½Ã Á¸ÀçÇØ¾ß ÇÑ´Ù.
postmaster: leesl
¼¾µå¸ÞÀÏÀÌ postmasterÀÇ ¸ÞÀÏÀ» ¹Þ¾ÒÀ» °æ¿ì ¼¾µå¸ÞÀÏÀº ·ê¼Â3,0À» °ÅÃÄ ÀÌ ÁÖ¼Ò¸¦ ´Ù½Ã¾²°Ô µÈ ´Ù. ±×·±µ¥ ·ê¼Â0Àº local delivery agents¸¦ ¼±ÅÃÇÏ´Â °ÍÀ̹ǷΠ¿ÀÁ÷ local·Î °¡´Â ¸ÞÀϸ¸ ¼¾µå¸Þ ÀÏÀÌ ¾Ù¸®¾î½ºÈÀÏÀ» ÀÐ¾î ´Ù½Ã¾²°Ô µÇ´Â °ÍÀÌ´Ù. ±×¸®°í ¼¾µå¸ÞÀÏÀº postmasterÀ» ¾ø´Â °ÍÀ¸·Î º¸°í leeslÀ̶ó´Â À̸§À¸·Î ¼ö½ÅÀÚ¸¦ ¹Ù²Ù´Â °ÍÀÌ´Ù.
ÀÌ ¾Ù¸®¾î½º´Â ¿¬¼ÓÀûÀÎ °úÁ¤À» °ÅÄ£´Ù. ¿¹¸¦ µé¾î
postmaster: leesl
leesl: petit
¿Í °°Àº ¾Ù¸®¾î½º°¡ ÀÖÀ» ¶§ postmasterÀº leesl·Î ¾Ù¸®¾î½ºµÇ°í leeslÀº petit·Î ¾Ù¸®¾î½ºµÇ¹Ç·Î ¸ÞÀÏÀ» ¹Þ´Â ÃÖÁ¾ ¼ö½ÅÀÚ´Â petit°¡ µÈ´Ù. ±×·¯³ª ·çÇÁ´Â Çã¿ëÇÒ ¼ö ¾ø´Ù. ´ÙÀ½°ú °°Àº °æ¿ì
postmaster: leesl
leesl: postmaster
°ú °°Àº °æ¿ì ¸ÞÀÏÀº leesl¿¡°Ô¸¸ °¡¸ç ·çÇεÇÁö ¾Ê´Â´Ù. ¿Ö³Ä¸é postmaster: leesló¸® °úÁ¤¿¡¼ postmasterÀº ÀÌ¹Ì ¾ø´Â °ÍÀ¸·Î °£ÁֵǹǷΠ´ÙÀ½ÁÙ leesl: postmaster¿¡¼ postmasterÀº ¾ø´Â »ç ¿ëÀÚ·Î º»´Ù. ±×·¯³ª ÀÌ·± ¾Ù¸®¾î½º´Â ÁÁÁö ¾ÊÀº °ÍÀ̸ç self destructive alias loop ¶ó´Â ¿¡·¯¸¦ ¸¸³ª°Ô µÈ´Ù.
":"¿ÞÂÊÀÇ À¯Àú°¡ "/" ³ª "|"·Î ½ÃÀÛÇÏÁö ¾ÊÀ¸¸é ¼¾µå¸ÞÀÏÀº »ç¿ëÀÚ¿¡ ´ëÇÑ ¾Ù¸®¾î½º·Î °£ºÎÇÑ´Ù.
":"¿ÞÂÊÀÌ / ¹®ÀÚ·Î ½ÃÀÛÇÏ¸é ¼¾µå¸ÞÀÏÀº /¹®ÀÚ ´ÙÀ½¿¡ ¿À´Â ÆÄÀÏ·Î ¸ÞÀÏÀ» Àü¼ÛÇÑ´Ù. ¼¾µå¸ÞÀÏÀÌ ÆÄÀÏ¿¡ ¸ÞÀÏÀ» Àü¼ÛÇÒ¶§´Â Ç×»ó append¸ðµå·Î Àü¼ÛÇÑ´Ù. ¾î¼´Ù ¸ÞÀÏÀ» À߸øº¸³»¸é ÀÚ½ÅÀÇ È¨µð ·ºÅ丮¿¡ dead.letterÀÌ ÀÖ´Â °ÍÀ» ¹ß°ßÇÒ ¼ö ÀÖ´Ù. À̶§ dead.letterÀº ¼¾µå¸ÞÀÏÀÌ ÆÄÀÏ·Î Àü¼ÛÇÑ °ÍÀÌ¸ç ±âÁ¸ÀÇ ³»¿ë¿¡ µ¡ºÙÀÌ´Â Çü½ÄÀ¸·Î ÀúÀåµÈ´Ù.
¼¾µå¸ÞÀÏÀÌ ÆÄÀÏ·Î ¸ÞÀÏÀ» Àü¼ÛÇϱâÀ§ÇØ ¸ÕÀú fork¸¦ ½ÇÇàÇÏ¿© ÀÚ½Ä ÇÁ·Î¼¼¼¸¦ »ý¼ºÇÑÈÄ ÀÚ½ÄÇÁ ·Î¼¼¼°¡ ÀÏÀ» ´ã´çÇϵµ·Ï ÇÑ´Ù. À̶§ ÀÚ½ÄÇÁ·Î¼¼¼´Â »ç¿ëÀÚÀÇ uid¿Í gid·Î ¼³Á¤µÇ¾î dead.letter °ú °°ÀÌ ÀúÀåµÇ´Â ÆÄÀÏÀÇ ¿À³Ê¿Í ±×·ìÀÌ ±× »ç¿ëÀÚ·Î º¯°æµÇ´Â °ÍÀÌ´Ù. ±×ÈÄ sendmailÀº stat¸¦ ½ÇÇàÇÑ´Ù. À̶§ ÆÄÀÏÀÌ ÀÌ¹Ì Á¸ÀçÇÏ¸é ±×¶§ÀÇ ÆÄÀÏ ÆÛ¹Ì¼ÇÀ» ÀÌ¿ëÇÏ°í ¾øÀ¸¸é »õ·Î¿î ÆÄÀÏÀ» ¸¸ µé¾î ÆÛ¸Þ¼ÇÀ» 0666À¸·Î ¼³Á¤ÇÑ´Ù.
¸¸ÀÏ ÀúÀåµÇ´Â ÆÄÀÏÀÌ ½ÇÇà¸ðµå·Î ¼³Á¤µÇ¾î ÀÖÀ¸¸é fork¿¡ÀÇÇØ »ý¼ºµÈ ÀÚ½ÄÇÁ·Î¼¼¼´Â <sysexits.h>¿¡ Á¤ÀÇµÈ EX_CANTCREAT¿¡ ÁöÁ¤µÈ ¿¡·¯¸¦ ³»¸ç Á¾·áµÈ´Ù. ¸¸ÀÏ ÆÄÀÏÀÌ ´Ù¸¥ Çà µ¿À» ¿ä±¸ÇÏ´Â (¿¡¸¦ µé¾î .forward¿Í °°ÀÌ ´Ù¸¥ »ç¶÷¿¡°Ô Æ÷¿öµåÇÏ´Â °æ¿ì) °æ¿ì uid, gid´Â .forwardÀÇ uid, gid·Î º¯°æµÈ´Ù.
±×ÈÄ Å¥¿¡¼ df·Î ½ÃÀ۵Ǵ ÆÄÀÏÀ» Àд´Ù. ¸¸ÀÏ ÆÄÀÏÀ» Àдµ¥ ¿¡·¯°¡ ³ª¸é mailfile: Cannot open df for file from sender°ú °°Àº ¿¡·¯¸¦ ¹ß»ýÇÑ´Ù. ¿©±â¼ df·Î ½ÃÀ۵Ǵ ÆÄÀÏÀ» Å¥¿¡ ½×ÀÎ ¸ÞÀÏÀÇ º»¹®À̰í senderÀº ¸ÞÀÏÀ» º¸³»´Â »ç¶÷ÀÇ ¸ÞÀÏÁÖ¼ÒÀÌ´Ù.
df·Î ½ÃÀ۵Ǵ ÆÄÀÏÀ» ¿¬ÈÄ ¼¾µå¸ÞÀÏÀº ±×ÀÇ gidÀ» º¯°æÇÑ´Ù.
À̰úÁ¤ÀÌ Á¾·áµÇ¸é ¼¾µå¸ÞÀÏÀº gid¿¡¼¿Í ¸¶Âù°¡Áö ´Ü°è·Î uid¸¦ º¯°æÇÑ´Ù. ±×ÈÄ ¼¾µå¸ÞÀÏÀº ÆÄÀÏ Ãß°¡ ¸ðµå·Î ÇØ´çÈÀÏÀ» ¿¾î ÆÄÀÏ¿¡ ³»¿ëÀ» ¾´´Ù. ¼¾µå¸ÞÀÏÀÌ ÆÄÀÏÀ» ¿Áö ¸øÇϸé ÀÚ½ÄÇÁ·Î¼¼¼ ´Â cannot open°ú °°Àº ¿¡·¯¸¦ ³»¸ç Á¾·áÇÑ´Ù.
¸¸ÀÏ ÆÄÀÏ¿±â°¡ ¼¾µå¸ÞÀÏÀº ½ÇÆÐÇϸé 10¹ø ÀÌ»óÀ» ´Ù½Ã ¾µ·Á°í ½ÃµµÇÑ´Ù. ÆÄÀÏÀÌ ¿¸®¸é ¸ÞÀÏÀÇ Çì´õ¿Í º»¹®ÀÌ ±× ÆÄÀÏ¿¡ ¾²ÀδÙ. ¸¸ÀÏ ¾²±â¿¡·¯°¡ ¹ß»ýÇϸé I/O ¿¡·¯¸¦ ³»°í Á¾·áÇÑ´Ù.
¸¶Áö¸·À¸·Î ÆÄÀÏÀº fclose¿¡ ÀÇÇØ Á¾·áµÇ¸ç ÆÄÀÏÀÇ Çã°¡±Çµµ À§¿¡¼¿Í °°ÀÌ º¯°æµÈ´Ù.
":"ÀÇ ¿ÞÂʺκÐÀÌ "|" ¹®ÀÚ·Î ½ÃÀ۵Ǹé À̰ÍÀº sendmail.cfÀÇ prog¿¡ ¼³Á¤µÈ ÆÄÀÏ¿¡ ÀÇÇØ "|"ÀÌÈÄÀÇ ÇÁ·Î±×·¥À¸·Î ¸ÞÀÏÀÌ Àü´ÞµÈ´Ù.
ÀÌ ¾Ù¸®¾î½º´Â ´ÙÀ½°ú °°Àº Çü½ÄÀ» °®´Â´Ù.
|program
"|program args"
|"program args"
¿©±â¼ programÀº ½ÇÇàÈÀÏÀÌ ÀÖ´Â ¿ÏÀüÇÑ °æ·Î¸íÀÌ Ãß°¡ µÇ¾î¾ß ÇÑ´Ù. ¸¸ÀÏ ¸í·É¾î Àμö°¡ ÇÊ¿ä Çϸé program ÀÌÈÄ ¹Ù·Î Àμö°¡ ³ª¿Í¾ß Çϸç Àüü¸¦ ""·Î °¨½ÎÁÖ¾î¾ß ÇÑ´Ù.
ÇÁ·Î±×·¥À» ½ÇÇàÇϱâ À§ÇØ ¼¾µå¸ÞÀÏÀº sendmail.cf¿¡¼ prog°¡ ¼³Á¤µÈ ºÎºÐÀÇ A=·Î ½ÃÀ۵Ǵ ºÎ ºÐÀ» µ¡ºÙÀδÙ. ÀϹÝÀûÀ¸·Î ¸í·É¾î´Â ´ÙÀ½°ú °°ÀÌ ½ÇÇàµÈ´Ù.
/bin/sh -c
À̰ÍÀº ¼¾µå¸ÞÀÏ¿¡°Ô ÇÁ·Î±×·¥À» º»½©¿¡ ÀÇÇØ ½ÇÇàÇϵµ·Ï Çϰí -c´Â ¸í·É¾î µÚ¿¡ ³ª¿À´Â ¾î¶² ÀÎ ¼ö¶óµµ ¹Þ¾ÆµéÀÌ°Ô ÇÑ´Ù.
¸¸ÀÏ ´ÙÀ½°ú °°Àº ¾Ù¸®¾î½º°¡ ÀÖ´Ù°í ÇÏÀÚ.
leesl: "|/usr/local/bin/news leesl@multi.co.kr"
À̰ÍÀº /bin/sh -c "/usr/local/bin/news leesl@multi.co.kr"°ú °°ÀÌ ½©»ó¿¡¼ ½ÇÇàÇѰͰú °°´Ù.
¸ðµç ¾Ù¸®¾î½º¿¡´Â postmaster°ú MAILER-DAEMON¿¡ ´ëÇÑ ¾Ù¸®¾î½º°¡ ÀÖ´Â °ÍÀÌ ÁÁ´Ù. RFC822¿¡ º¸¸é ¼¾µå¸ÞÀÏ¿¡¼ ¹ß»ýÇÏ´Â ¿¡·¯³ª ¿©·¯ °¡Áö ÀÏÀ» ó¸®Çϱâ À§ÇØ postmasterÀ̶ó´Â »ç¿ëÀÚ¸¦ µÎ°í ÀÖÀ¸¸ç ÀÌ postmasterÀº ½Ã½ºÅÛ¸¦ Á÷Á¢ °ü¸®ÇÏ´Â »ç¶÷À¸·Î ¾Ù¸®¾î½ºÇسõµµ·Ï Çϰí ÀÖ´Ù. ¸¸ÀÏ ¼¾µå¸ÞÀÏÀÌ ¿î¿µµÇ´Â È£½ºÆ®¿¡ postmaster¶ó´Â »ç¿ëÀÚ °èÁ¤ÀÌ ¾øÀ¸¸é postmaster¿¡ ´ëÇÑ ¾Ù¸®¾î½º°¡ Àý´ëÀûÀ¸·Î ¿ä±¸µÈ´Ù. º¸ÅëÀº postmasterÀ̶ó´Â »ç¿ëÀÚ °èÁ¤À» ¸¸µé¾î ³õ°í (°Å ÀÇ ¸ðµç ½Ã½ºÅÛ¿¡ ±âº»ÀûÀ¸·Î µÇ¾î ÀÖÀ½) postmasterÀ» ¾Ù¸®¾î½ºÇÏ´Â°Ô ÁÁ´Ù.
¸ÞÀÏÀÌ µÇµ¹¾Æ ¿Ã ¶§ µÇµ¹¸®´Â »ç¶÷ÀÇ À̸§À¸·Î MAILER-DAEMONÀÌ »ç¿ëµÈ´Ù. À̰ÍÀº sendmail.cf¿¡ DnMAILER-DAEMONÀÇ ¿É¼ÇÀ» ÁÖ¾î ¼³Á¤ÇÑ´Ù. ÇÑÆí MAILER-DAEMONÀ¸·Î °¡ ´Â ¸ÞÀÏÀº postmaster·Î Àü´ÞµÇ°Ô ÇÏ´Â °ÍÀÌ ÁÁ´Ù.
mailer-daemon: postmaster
postmaster: leesl
ÀÌ·² °æ¿ì µÇµ¹¾Æ ¿À´Â ¸ÞÀÏÀÌ º¸³½»ç¶÷°ú postmaster¿¡°Ô Àü´ÞµÇ¾î ÃÖÁ¾ÀûÀ¸·Î leeslÀ̶ó´Â °ü¸® ÀÚµµ ³»¿ëÀ» º¼¼ö ÀÖ´Ù. ÇÏÁö¸¸ À̰ÍÀº °³ÀÎ½Å»ó¿¡ ´ëÇÑ Á¤º¸¸¦ Ä§ÇØÇÏ´Â °ÍÀ̹ǷΠleesl À» /dev/null°ú °°ÀÌ ¼³Á¤Çؼ ¾Ù¸®¾î½º¸¦ °ü¸®ÇÒ ¼öµµ ÀÖ´Ù.
¾Ù¸®¾î½ºÈÀÏÀ» ¸Å¹ø ÆÄÀÏ¿¡¼ ÀÐ¾î ¼¾µå¸ÞÀÏÀÌ ½ÇÇàµÈ´Ù¸é ¸ÞÀÏ󸮰¡ ´À·ÁÁö°í ½Ã½ºÅÛ¿¡ ºÎ´ã À» ÁÙ¼öµµ ÀÖ´Ù. ¼¾µå¸ÞÀÏÀº ÀÌ·± ÆÄÀÏÀ» µ¶¸³µÈ µ¥ÀÌÅÍ º£À̽º Çü½ÄÀ¸·Î ¸¸µé¾î µ¥ÀÌÅͺ£À̽º°¡ °®´Â ÀåÁ¡À» ´©¸®µµ·Ï Çϰí ÀÖ´Ù. ÀÌ·¸°Ô µ¥ÀÌÅͺ£À̽º·Î ¸¸µé¾î ³õÀ¸¸é Àд ¼Óµµ°¡ »¡¶ó ¸ÞÀÏ Ã³¸®¸¦ ºü¸£°Ô ÇÒ¼ö ÀÖ´Ù.
¼¾µå¸ÞÀÏÀÌ »ç¿ëÇÏ´Â µ¥ÀÌÅÍ º£À̽º Çü½ÄÀ¸·Î´Â ndbm°ú ¹öŬ¸® db°¡ ¸¹ÀÌ »ç¿ëµÈ´Ù. ¾î¶² µ¥ÀÌ ÅÍ º£À̽º¸¦ »ç¿ëÇÏµç »ç¿ëÀÚÀÇ ¸¶À½À̳ª ÀϹÝÀûÀ¸·Î ¹öŬ¸® db °¡ ¸¹ÀÌ »ç¿ëµÇ¹Ç·Î ¹öŬ¸®µðºñ ¸¦ ÁÖ·Î ÇØ¼ ¼³¸íÇϰڴÙ.
¹öŬ¸® µðºñ¸¦ »ç¿ëÇÏ·Á¸Õ ¼¾µå¸ÞÀÏÀ» ÄÄÆÄÀÏÇÒ ¶§ DBMDEF= -DNEWDB ¼³Á¤ ºÎºÐÀ» ¹öŬ¸® µðºñ¸¦ »ç¿ëÇϵµ·Ï NEWDB¸¦ ¼±ÅÃÇØÁÖ¾î¾ß ÇÑ´Ù.
´ÙÀ½¿£ µ¥ÀÌÅͺ£À̽º·Î ¸¸µé ÅØ½ºÆ® ÆÄÀÏÀ» ¸¸µé¾î¾ß ÇÑ´Ù. ¾Æ¹« ÅØ½ºÆ® ÆíÁý±â³ª ¿¾î ¾Ù¸®¾î½º ÈÀÏÀ» ¸¸µç´Ù. ±¸ºÐÀÚ·Î ":"ÀÌ ¾øÀ½¿¡ À¯ÀÇÇϼ¼¿ä
--
postmaster leesl
tile sonny
friend petit
--
ÀÌ·¸°Ô ¸¸µç ÆÄÀÏÀ» test¶ó°í ÀúÀåÇØº¸ÀÚ. ÀÌÁ¨ ÀÌ ÅØ½ºÆ® ¾Ù¸®¾î½ºÈÀÏÀ» µ¥ÀÌÅÍ º£À̽º Çü½ÄÀ¸ ·Î ¹Ù²Ù¾î¾ß ÇÑ´Ù. À̶§ makemapÀ̶ó´Â ÆÄÀÏÀ» »ç¿ëÇϴµ¥ sendmailÀÇ ¼Ò½ºÈÀÏÀ» Ç®¸é makemapÀ̶ó´Â µð·ºÅ丮¿¡¼ makeÇÔÀ¸·Î »ý¼ºÇÑ´Ù. makemap½ÇÇàÈÀÏÀ» ¸¸µå´Âµ¥µµ »ç¿ëÇÒ µ¥ ÀÌÅͺ£À̽º Çü½ÄÀ» ¼¾µå¸ÞÀÏÀ» ÄÄÆÄÀÏÇÒ¶§¿Í °°ÀÌ ÁöÁ¤ÇÏ°í µ¥ÀÌÅͺ£À̽º ¶óÀ̺귯¸®, ÀÎÄð¸£µå ÆÄÀÏÀÌ ÀÖ´Â À§Ä¡¸¦ ÁöÁ¤ÇØÁÖ¾î¾ß ÇÑ´Ù.
--
# define the database mechanisms available for map & alias lookups:
# -DNDBM -- use new DBM # -DNEWDB -- use new Berkeley DB
# The really old (V7) DBM library is no longer supported.
#
DBMDEF= -DNEWDB
# environment definitions (e.g., -D_AIX3) ENVDEF=-D__Linux__
# see also conf.h for additional compilation flags
# include directories
INCDIRS=-I${SRCDIR} -I/usr/local/include
# loader options
LDOPTS=
# library directories
LIBDIRS=-L/usr/local/lib
# libraries required on your system
LIBS= -ldb -ldbm
# location of makemap binary (usually /usr/sbin or /usr/etc)
BINDIR= ${DESTDIR}/usr/sbin
---
MakefileÀÇ ÀϺθ¦ ¹ßÃéÇÏ¿´´Ù.
makemap ½ÇÇàÈÀÏÀº ´ÙÀ½°ú °°Àº Çü½ÄÀ¸·Î »ç¿ëÇÑ´Ù.
--
makemap switches class file
--
class ´Â dbm(ndbm) ,hash, btere(¹öŬ¸® µðºñ)¿Í °°ÀÌ ¸¸µé¾îÁö´Â µ¥ÀÌÅͺ£À̽ºÀÇ Çü½ÄÀ» ÁöÁ¤ ÇÑ´Ù.
file´Â »ý¼ºµÇ´Â ÆÄÀÏÀ» ÁöÁ¤ÇÏ¸ç ¿ÏÀüÇÑ °æ·Î¸¦ ½á¾ß ÇÑ´Ù. ÀÌ·¸°Ô ¸¸µé¾îÁö´Â µ¥ÀÌÅͺ£À̽º´Â dbmÀÇ °æ¿ì È®ÀåÀÚ°¡ ÀÚµ¿À¸·Î .pag .dirÀÌ ºÙÀ¸¸ç db·Î ¸¸µé¾îÁö´Â µ¥ÀÌÅͺ£À̽º´Â .dbÈ®ÀåÀÚ°¡ ÀÚµ¿À¸·Î ºÙ´Â´Ù.
switches´Â ´ÜÀϹ®Àڷμ ¿É¼ÇÀ» ÀǹÌÇÏ´Â -¹®ÀÚ°¡ ºÙ´Â´Ù. À̰ÍÀº ÅØ½ºÆ®·Î ¸¸µç ¾Ù¸®¾î½ºÈÀÏ À» ¾î¶»°Ô ÀÐÀ» °ÍÀΰ¡¸¦ ÁöÁ¤ÇÏ´Â °ÍÀ¸·Î getopt¸¦ ÀÎÅÍ³Ý °Ë»ö¿£Áø¿¡¼ ã¾Æº¸¸é ¸¹Àº ¿É¼ÇÀ» ¹ß°ßÇÒ ¼ö ÀÖ´Ù. ¸î°¡Áö¸¦ Àû¾îº¸¸é ´ÙÀ½°ú °°´Ù. º¸ÅëÀº -v¿É¼ÇÀ¸·Îµµ ÃæºÐÇÏ´Ù.
-f
µ¥ÀÌÅÍ º£À̽º·Î ÀúÀåÇϱâÀü¿¡ Ű¿Í µ¥ÀÌÅͰ¡ ¼Ò¹®ÀÚ·Î º¯È¯Çؼ ÀúÀåµÈ´Ù.
-N
°¢ Ŷ°ªÀÌ 0Àΰ͵µ µ¥ÀÌÅͺ£À̽º¿¡ Æ÷ÇÔÅä·Ï ÇÑ´Ù.
-o
±âÁ¸ÀÇ µ¥ÀÌÅÍ º£À̽º¿¡ Ãß°¡Çϵµ·Ï ÇÑ´Ù. µðÆúÆ®´Â overwriteÀÌ´Ù.
-r
Ãß°¡ÇÒ·Á´Â µ¥ÀÌÅͺ£À̽º ÆÄÀÏ¿¡ ÀÌ¹Ì »ç¿ëÀÚ°¡ ÀÖÀ» ¶§ ¿¡·¯¸¦ ¹ß»ý½ÃŲ´Ù.
-v
µ¥ÀÌÅͰ¡ »ý¼ºµÇ´Â °úÁ¤À» º¸¿©ÁØ´Ù.
À§¿¡¼ ¸¸µç ÅØ½ºÆ® ¾Ù¸®¾î½º¸¦ ÀÌÁ¦ µ¥ÀÌÅͺ£À̽º·Î ¹Ù²ãº¸ÀÚ ½©»ó¿¡¼ ´ÙÀ½°ú °°Àº ¸í·É¾î¸¦ ½ÇÇà½ÃŲ´Ù.
makemap -v hash userdb <test
ÅØ½ºÆ® testÈÀÏÀ» Àоî hashÇü½ÄÀ¸·Î µ¥ÀÌÅͺ£À̽º¸¦ ¸¸µå´Âµ¥ ¸¸µå´Â °úÁ¤À» º¸¿©ÁÖ°í(-v) °á °ú¸¦ userdb·Î ÀúÀåÇϵµ·Ï ÇÑ´Ù. ±×·¯¸é ÀÚµ¿À¸·Î È®ÀåÀÚ°¡ db°¡ ºÙ¾î(¹öŬ¸® µðºñÀÇ °æ¿ì) userdb.db¶ó´Â µ¥ÀÌÅͺ£À̽º ÆÄÀÏÀÌ »ý¼ºµÈ´Ù.
ÀÌÁ¨ ¼¾µå¸ÞÀÏÀÌ userdb¶ó´Â ÆÄÀÏÀ» ¿Ã¹Ù·Î ÀÐ¾î ¾Ù¸®¾î½ºÈÀÏ·Î »ç¿ëÅä·Ï ÇϱâÀ§ÇØ ´ÙÀ½°úÁ¤À» °ÅÃÄ¾ß ÇÑ´Ù.
ÆíÁý±â¸¦ ¿¾î sendmail.cf¸¦ ÆíÁýÇÑ´Ù.
O AliasFile=/etc/userdb
¿Í °°ÀÌ ¸¸µçÈÀÏÀ» ÁöÁ¤ÇØÁØ´Ù. ¿©±â¼ È®ÀåÀÚ°¡ db·Î ºÙ¾ú´Ù°í ÇØ¼ user.db¶ó°í ¾²¸é ¾ÈµÈ´Ù. makemap¿¡¼ ÁöÁ¤ÇÑ ÆÄÀÏÀ̸§À» ½á¾ß ÇÑ´Ù.
ÀÌÁ¦ µ¥ÀÌÅÍ º£À̽ºÈÀÏÀ» ¼¾µå¸ÞÀÏÀÌ ÀоîµéÀ̵µ·Ï newaliases¸í·É¾î¸¦ ½ÇÇàÇÑ´Ù. ±×·³ 3 aliases, longset 534 byets, 1230 bytes totle¿Í °°Àº °á°ú°¡ ³ª¿Â´Ù.
¸ÞÀϸµ¸®½ºÆ®´Â ÇϳªÀÇ ¼ö½ÅÀÚ·Î ¸ÞÀÏÀ» º¸³»¸é ±×¿¡ ¼ÓÇÏ´Â ¸ðµç »ç¶÷µé¿¡°Ô ¸ÞÀÏÀÌ Àü´ÞµÇ´Â ±â´ÉÀÌ´Ù. ¾Ù¸®¾î½º¸¦ ¿¹·Î µéÀÚ¸é
admin: leesl, nora, petit, sonny, tim
°ú °°Àº ¾Ù¸®¾î½º¸¦ ¸¸µé¾î adminÀ¸·Î ¸ÞÀÏÀ» º¸³»¸é leesl, nora, petit, sonny, timÀ¸·Î ¸ÞÀÏÀÌ Àü´ÞµÇ´Â °ÍÀÌ´Ù. ¾Ù¸®¾î½ºÇÒ ÆÄÀÏÀÌ ÀÛ°í : ÀÌÈÄÀÇ »ç¿ëÀÚµéÀÌ Àß º¯°æµÇÁö ¾Ê´Â´Ù¸é ¾Ù¸®¾î½º±â ´ÉÀ» ÀÌ¿ëÇØµµ ÃæºÐÇÒ °ÍÀÌ´Ù. ±×·¯³ª ¾Ù¸®¾î½ÌÇÒ ´ë»óÀÌ ¸¹¾ÆÁö°í »ç¿ëÀÚ¸¦ ÀÚÁÖ º¯°æÇØ¾ß ÇÒ°æ ¿ì¿¡´Â µû·Î ¸ÞÀÏÀ» ¹ÞÀ» »ç¶÷À» ÆÄÀÏ·Î ÀúÀåÇÏ¿© »ç¿ëÇÏ´Â °ÍÀÌ Æí¸®ÇÒ °ÍÀÌ´Ù.
¸¸ÀÏ ¸ÞÀϸµ ¸®½ºÆ®·Î ¸¸µé ÆÄÀÏÀÌ userlist¶ó°í Çϸé userlist¿¡
--
leesl
sonny
nora
petit
...
°ú °°ÀÌ ÇÑÇà¿¡ ÇѸíÀÇ »ç¿ëÀÚ¾¿ Àû¾î°£´Ù. ´ÙÀ½¿¡ ÀÌ ¸ÞÀϸµ¸®½ºÆ®ÀÇ Ã¥ÀÓÀÚ¸¦ ¼±Á¤ÇÑ´Ù. ¸ÞÀϸµ ½Ã½ºÆ®¿¡ Ã¥ÀÓÀÚ°¡ ÇÊ¿äÇÑ ÀÌÀ¯´Â ¸ÞÀÏÀÌ µÇµ¹¾Æ ¿À°Å³ª ¹®Á¦°¡ »ý°åÀ» ¶§ ¸ÞÀÏÀ» ¸ÞÀϸµ¸®½ºÆ® ¿¡ °¡ÀÔÇÑ ¸ðµç »ç¶÷¿¡°Ô Àü´ÞÇϱ⠺¸´Ù Ã¥ÀÓÀÚ¿¡°Ô¸¸ Àü´ÞÇÏ°Ô ÇÏ´Â °ÍÀÌ È¿°úÀûÀ̱⠶§¹®ÀÌ´Ù.
ÀÌÁ¦ Áö±Ý±îÁöÀÇ ³»¿ëÀ» Á¾ÇÕÇØº¸ÀÚ.
admin: :include:/etc/userlist
owner-admin: leesl
±×·¯³ª ¸ÞÀϸµ¸®½ºÆ®ÀÇ ±Ô¸ð°¡ Ä¿Áö¸é ¸ÞÀϸµ¸®½ºÆ® Àü¹® ÇÁ·Î±×·¥À» »ç¿ëÇÏ´Â °ÍÀÌ ÁÁ´Ù. ÀÌ·¯ÇÑ ÇÁ·Î±×·¥À¸·Î´Â ´ÙÀ½°ú °°Àº °ÍÀÌ ÀÖ´Ù.