²À °®Ãß¾î¾ß ÇÏ´Â ¸®´ª½º º¸¾È ±âÃÊ

¹ø¿ª: À±ºÀȯ / el@linuxlab.co.kr

 

 

    ÀÌ ±â»ç¿¡¼­ ³ª´Â ¸®´ª½º ¹Ú½º¸¦ ¾ÈÀüÇÏ°Ô ¸¸µå´Â ±âÃʸ¦ ¼³¸íÇÏ·Á ÇÑ´Ù. ·¹µåÇÞ ¸®´ª½º ¹Ú½º º¸¾ÈÀ» ¿°·ÁÇÏ´Â ¸ðµç À̵鿡°Ô À¯¿ëÇÒ °ÍÀÌ´Ù.

 

BIOS º¸¾È

    Ç÷ÎÇǵð½ºÅ©·Î ºÎÆ®Çϰųª BIOS ¼³Á¤ °ªÀ» ¹Ù²ÙÁö ¸øÇϵµ·Ï BIOS¿¡´Â Ç×»ó Æнº¿öµå¸¦ ¼³Á¤ÇØ µÎ¾î¾ß ÇÑ´Ù. ÀÌ·¸°Ô ÇØ µÎ¸é ¿©·¯ºÐÀÇ ¸ô·¡ Ưº°ÇÑ ¸ñÀûÀ¸·Î ¸¸µé¾îÁø ºÎÆ® µð½ºÅ©¸¦ ÀÌ¿ëÇØ ¸®´ª½º ½Ã½ºÅÛÀ» ºÎÆ®ÇÏ·Á´Â À̵éÀ» ¸·°í, Ç÷ÎÇÇ µð½ºÅ© µå¶óÀ̺ê·Î ºÎÆ®Çϰųª Æнº¿öµå¸¦ ¹¯´Â ÇÁ·ÒÇÁÆ® ¾øÀÌ ¼­¹ö¸¦ ºÎÆ®ÇÏ·Á´Â À̵é·ÎºÎÅÍ ½Ã½ºÅÛÀ» º¸È£ÇÒ ¼ö ÀÖ´Ù.

 

LILO º¸¾È

    "/etc/lilo.conf" ÆÄÀÏ¿¡ time-out, restricted, password µî Æз¯¹ÌÅÍ ¼¼ °³¸¦ Ãß°¡ÇÑ´Ù. ÀÌ ¿É¼ÇµéÀ» ¼³Á¤ÇÏ¸é ºÎÆ®ÇÒ ¶§¿¡ Ưº°ÇÑ ¿É¼ÇµéÀ»(¿¹¸¦ µé¾î "linux single" µî) ³Ö¾î Æнº¿öµå ¾øÀÌ ·çÆ®·Î ·Î±äÇÏ·Á ÇÒ ¶§¿¡µµ Æнº¿öµå¸¦ ¹¯´Â´Ù.

    Step 1
    lilo.conf ÆÄÀÏÀ» ¿­¾î (vi /etc/lilo.conf) ¾Æ·¡Ã³·³ ¿É¼Ç ¼ÂÀ» Ãß°¡ÇÏ°í ¼³Á¤ °ªÀ» ¹Ù²Û´Ù:

    boot=/dev/hda
    map=/boot/map
    install=/boot/boot.b
    time-out=00 # ÀÌ ¿É¼ÇÀº °ªÀ» 00À¸·Î ¹Ù²Û´Ù.
    prompt
    Default=linux
    restricted # ÀÌ ÁÙÀ» Ãß°¡ÇÑ´Ù
    password=<password> # ÀÌ ÁÙÀ» Ãß°¡ÇÏ°í Æнº ¿öµå¸¦ ³Ö´Â´Ù.
    image=/boot/vmlinuz-2.2.14-12
    label=linux
    initrd=/boot/initrd-2.2.14-12.img
    root=/dev/hda6
    read-only

    Step 2
    ¿ì¸®´Â ¾Õ¼­ "/etc/lilo.conf" ÆÄÀÏ ¼Ó¿¡ ¾ÏȣȭµÇÁö ¾ÊÀº Æнº¿öµå¸¦ ³Ö¾úÀ¸¹Ç·Î ÀÌ ÆÄÀÏÀ» root¸¸ ÀÐÀ»¼ö ÀÖµµ·Ï ¸¸µé¾î¾ß ÇÑ´Ù.

    [root@kapil /]# chmod 600 /etc/lilo.conf

    root¸¦ Á¦¿ÜÇÑ ´Ù¸¥ À̵éÀº ÀÌÁ¦ "/etc/lilo.conf" ÆÄÀÏÀ» ÀÐÁö ¸øÇÒ °ÍÀÌ´Ù.

    Step 3
    ¾Æ·¡ ¸í·ÉÀ¸·Î "/etc/lilo.conf" ÆÄÀÏ ¾È¿¡ º¯°æµÈ ¼³Á¤ °ªÀ» ½Ã½ºÅÛ¿¡ ¹Ý¿µÇÑ´Ù:

    [Root@kapil /]# /sbin/lilo -v

    Step 4
    chattr ¸í·ÉÀ» »ç¿ëÇؼ­ "/etc/lilo.conf" ÆÄÀÏÀ» ¼öÁ¤ÇÒ ¼ö ¾øµµ·Ï ¼³Á¤ÇÏ¸é ´õ ¾ÈÀüÇÏ´Ù.

    * ÆÄÀÏÀ» ¹Ù²Ü ¼ö ¾ø°Ô ¸¸µé·Á¸é(immutable) ´ÙÀ½ ¸í·ÉÀ» »ç¿ëÇÑ´Ù:
    [root@kapil /]# chattr +i /etc/lilo.conf

    ÀÌ·¸°Ô ¼³Á¤ÇØ µÎ¸é ¾î¶»°Ô Çصµ "lilo.conf" ÆÄÀÏÀ» ¹Ù²Ü ¼ö ¾øÀ» °ÍÀÌ´Ù.(¿ì¿¬È÷ ȤÀº ±× ¹ÛÀÇ ´Ù¸¥ ÀÌÀ¯·Î)

    lilo º¸¾È¿¡ ´ëÇØ ´õ ¸¹Àº Á¤º¸°¡ ÇÊ¿äÇϸé http://www.linux4biz.net/articles.htmÀ» Àо´Ù.

 

Ư¼öÇÑ °èÁ¤À» ¸ðµÎ ¸·´Â´Ù

    ¸®´ª½º¸¦ ¼³Ä¡Çϸé ÀÚµ¿À¸·Î »ý¼ºµÇ´Â °èÁ¤ °¡¿îµ¥ lp, sync, shutdown, halt, news, uucp, operator, games, gopher µî ¿©·¯ºÐÀÌ ½ÇÁ¦·Î »ç¿ëÇÏÁö ¾Ê´Â °èÁ¤Àº ¸ðµÎ ¾ø¾Ö´Â °ÍÀÌ ÁÁ´Ù.

    »ç¿ëÀÚ °èÁ¤À» ¾ø¾Ù ¶§¿¡´Â:
    [root@kapil /]# userdel LP

    ±×·ìÀ» ¾ø¾Ù ¶§¿¡´Â:
    [root@kapil /]# groupdel LP

 

ÁÁÀº Æнº¿öµå¸¦ °í¸¥´Ù

    ÁÁÀº Æнº¿öµå¸¦ °í¸£±â Àü¿¡ ¾Æ·¡ ±ÔÄ¢¿¡ µû¶ó Æнº¿öµå ÃÖ¼Ò ±æÀ̸¦ ¼³Á¤ÇÑ´Ù.

    Æнº¿öµå ±æÀÌ:
    ¸®´ª½º¸¦ ±âº» °ªµé·Î ¼³Ä¡Çϸé, ÃÖ¼Ò ´Ù¼¸ ±ÛÀÚ¸¸ ³ÖÀ¸¸é Æнº¿öµå·Î ¹Þ¾ÆµéÀ̵µ·Ï ¼³Á¤µÇ¾î ÀÖÀ» °ÍÀÌ´Ù. ÇÏÁö¸¸, ´Ù¼¸ ±ÛÀÚ´Â ³Ê¹« Àû¾î ¾ÈÀüÇÏÁö ¸øÇÏ°í ÃÖ¼ÒÇÑ ¿©´ü ±ÛÀÚ´Â µÇ¾î¾ß¸¸ ÇÑ´Ù. Æнº¿öµå ±æÀÌ ÇÏÇÑÀ» ¹Ù²Ù·Á¸é login.defs ÆÄÀÏÀ» ¿­¾î(vi /etc/ligin.defs) ¾Æ·¡¿Í °°ÀÌ ÆíÁýÇÑ´Ù:

    PASS_MIN_LEN 5

    ¼ýÀÚ 5µé ¾Æ·¡Ã³·³ 8·Î ¹Ù²Û´Ù:
    PASS_MIN_LEN 8

    "login.defs" ÆÄÀÏÀº ·Î±ä ÇÁ·Î±×·¥ÀÇ È¯°æ ¼³Á¤ °ªÀ» ³Ö¾îµÎ´Â ÆÄÀÏÀÌ´Ù.

 

¼¨µµ¿ì Æнº¿öµå¸¦ È°¼ºÈ­ÇÑ´Ù

    ¼¨µµ¿ì Æнº¿öµåµµ ¼³Á¤ÇØ¾ß ÇÑ´Ù.
    "/usr/sbin/authconfig" À¯Æ¿¸®Æ¼¸¦ ÀÌ¿ëÇÏ¸é ½Ã½ºÅÛ¿¡¼­ ¼¨µµ¿ì Æнº¿öµå¸¦ È°¼ºÈ­ÇÒ ¼ö ÀÖ´Ù. »ç¿ë ÁßÀÎ Æнº¿öµå¿Í ±×·ìÀ» ¼¨µµ¿ì Æнº¿öµå, ±×·ìÀ¸·Î ¹Ù²Ù·Á¸é pwconv¿Í grpconv ¸í·ÉÀ» »ç¿ëÇÑ´Ù.

 

root °èÁ¤

    "root" °èÁ¤Àº À¯´Ð½º °è¿­ ½Ã½ºÅÛ¿¡¼­ ¸Å¿ì °­·ÂÇÑ ±ÇÇÑÀ» °¡Áø °èÁ¤ÀÌ´Ù. root·Î ·Î±äÇÑ ½Ã½ºÅÛ °ü¸®ÀÚ°¡ ·Î±×¾Æ¿ôÇÏ´Â °ÍÀ» ±ôºý ÀØ°í root ÇÁ·ÒÇÁÆ®¸¦ ³²°ÜµÐ ä ¶°³ª¹ö·È´Ù¸é, ŸÀӾƿôÀ» ¼³Á¤ÇØ µÎ°í ÀÏÁ¤ÇÑ ½Ã°£ÀÌ Áö³ª¼­ ÀÚµ¿À¸·Î ·Î±×¾Æ¿ôÇϵµ·Ï ¼³Á¤ÇÒ ¼ö ÀÖ´Ù. "TMOUT" º¯¼ö¿¡ ÃÊ´ÜÀ§·Î ŸÀӾƿô ½Ã°£À» ¼³Á¤ÇÏ¸é µÈ´Ù.

    "vi /etc/profile" ¸í·ÉÀ¸·Î ÇÁ·ÎÆÄÀÏÀ» ¿­¾î¼­ ¾Æ·¡ ¼³Á¤À» Àû´çÇÑ °÷¿¡ µ¡ºÙÀδÙ.

    "HISTFILESIZE="
    TMOUT=3600

    "TMOUT=" º¯¼ö¿¡ ¼³Á¤ÇÑ °ªÀº 1 ½Ã°£À» ¶æÇÑ´Ù. (60 * 60 = 3600 ÃÊ) ÀÌ ÁÙÀ» "/etc/profile"¿¡ ³Ö¾î µÎ¸é »ç¿ëÀÚ°¡ Á¢¼ÓÇؼ­ ÇÑ ½Ã°£ÀÌ Áö³ªµµ·Ï ¾Æ¹« °Íµµ ÇÏÁö ¾ÊÀ» ¶§ ÀÚµ¿À¸·Î ·Î±×¾Æ¿ôÇÑ´Ù. »ç¿ëÀÚ È¨ µð·ºÅ丮 ¾Æ·¡ ".bashrc " ÆÄÀÏ¿¡ ³Ö¾îµÎ°í °³ÀÎÀûÀ¸·Î »ç¿ëÇÒ ¼öµµ ÀÖ´Ù.
    ¿©·¯ºÐ ½Ã½ºÅÛ¿¡¼­ ÀÌ Æз¯¹ÌÅ͸¦ ¼³Á¤ÇÑ µÚ¿¡´Â ¹Ýµå½Ã ·Î±×¾Æ¿ô ÇÑ ´ÙÀ½ ´Ù½Ã ·Î±äÇؼ­ ¹Ù²ï ¼³Á¤ ³»¿ëÀ» ½Ã½ºÅÛ¿¡ Àû¿ëÇØ¾ß ÇÑ´Ù.

 

ÀÏ¹Ý »ç¿ëÀÚ¿¡ ´ëÇØ ¸ðµç ÄÜ¼Ö Á¢¼ÓÀ» Á¦ÇÑÇÑ´Ù

    shutdown, reboot, halt µî ÇÁ·Î±×·¥Àº ÀϹݻç¿ëÀÚ°¡ ÄܼÖÀ» ÅëÇØ Á¢±ÙÇÒ ¼ö ¾øµµ·Ï ¸¸µé¾î¾ß ÇÑ´Ù.

    ±×·¸°Ô ÇÏ·Á¸é, ´ÙÀ½ ¸í·ÉÀ» ½ÇÇàÇÑ´Ù:

    [root@kapil /]# rm -f
                        /etc/security/console.apps/<servicename>

    <servicename>¿¡´Â ÄܼÖ-À» ÅëÇØ Á¢±ÙÇÒ ¼ö ¾øµµ·Ï ¼³Á¤ÇÒ ÇÁ·Î±×·¥À» ½á ³Ö´Â´Ù.

 

»ç¿ëÇÏÁö ¾Ê´Â ¸ðµç ÇÁ·Î±×·¥À» Á¦ÇÑÇϰųª Áö¿ö¹ö¸°´Ù

    ¿©·¯ºÐ ¼­¹ö¿¡¼­ »ç¿ëÇÏÁö ¾Ê´Â ¼­ºñ½º´Â Á¦ÇÑÇÏ°í Á¦°ÅÇÑ´Ù. "/etc/inetd.conf" ÆÄÀÏÀ» ¿­¾î¼­ ¿©·¯ºÐ¿¡°Ô ÇÊ¿ä ¾ø´Â ¼­ºñ½º°¡ µî·ÏµÈ ÁÙ ¸Ç ¾Õ¿¡ # ¹®ÀÚ¸¦ ³Ö¾î Á¢¼ÓÀ» ¸·´Â´Ù. ±×¸®°í inetd ÇÁ·Î¼¼½º¿¡ SIGHUP ½Ã±×³ÎÀ» º¸³»¼­ "inetd.conf"ÆÄÀÏÀ» »õ·Î ÀоîµéÀÌ°Ô ÇÑ´Ù. ´ÙÀ½°ú °°Àº ÀýÂ÷¸¦ µû¸¥´Ù:

    Step 1
    ¸ÕÀú "/etc/inetd.conf" ÆÄÀÏÀ» ·çÆ®¸¸ Àаųª ¾µ ¼ö ÀÖµµ·Ï ¼³Á¤ÇÑ´Ù. ¾Æ·¡ ¸í·ÉÀ¸·Î Æ۹̼ÇÀ» 600À¸·Î ¼³Á¤ÇÏ¸é µÈ´Ù:

    [Root@kapil /]# chmod 600 /etc/inetd.conf

    Step 2
    "/etd/inetd.conf" ÆÄÀÏ ¼ÒÀ¯ÀÚ°¡ rootÀÎÁö È®ÀÎÇÑ´Ù.

    Step 3
    inetd.conf ÆÄÀÏÀ» ¿­¾î (vi /etc/inetd.conf) ¾Æ·¡ ¼­ºñ½ºµéÀ» ¸·¾Æ¹ö¸°´Ù:

    ftp, telnet, shell, login, exec, talk, ntalk, imap, pop-2, pop-3, finger, auth
    ±× ¹Û¿¡ ¿©·¯ºÐÀÌ »ç¿ëÇÏÁö ¾ÊÀ» ¼­ºñ½ºµé. ÀÌ·¸°Ô ÇØ µÎ¸é ÀÌ·± ¼­ºñ½º¸¦ ÀÌ¿ëÇÑ °ø°Ý¿¡ ´ëÇؼ­´Â °ÅÀÇ ¾ÈÀüÇØÁø´Ù.

    Step 4
    inetd ÇÁ·Î¼¼½º¿¡ HUP ½Ã±×³ÎÀ» º¸³½´Ù.

    [root@kapil /]# killall -HUP inetd

    Step 5
    chattr ¸í·ÉÀ¸·Î ¾Æ¹«µµ "/etc/inetd.conf" ÆÄÀÏÀ» °íÄ¡Áö ¸øÇÏ°Ô ¸¸µç´Ù.

    [root@kapil /]# chattr +i /etc/inetd.conf

    ÀÌÁ¦ºÎÅÍ´Â "inetd.conf" ÆÄÀÏÀÌ ¹Ù²îÁö ¾Êµµ·Ï(°íÀÇµç ¾Æ´Ïµç) º¸È£µÉ °ÍÀÌ´Ù. ½´ÆÛÀ¯ÀúÀÎ root¸¸ ÀÌ ¼Ó¼ºÀ» ¼³Á¤Çϰųª Á¦°ÅÇÒ ¼ö ÀÖ´Ù. inetd.conf ÆÄÀÏÀ» °íÃÄ¾ß ÇÒ ÀÏÀÌ »ý±ä´Ù¸é ´ÙÀ½ ¸í·ÉÀ¸·Î ºÒº¯(immutable) Ç÷¡±×¸¦ Á¦°ÅÇÑ´Ù:

    * ºÒº¯ ¼Ó¼ºÀ» Á¦°ÅÇÏ·Á¸é ´ÙÀ½ ¸í·ÉÀ» ½ÇÇàÇÑ´Ù:

    [root@kapil /]# chattr -i /etc/inetd.conf

 

TCP_WRAPPERS

    TCP_WRAPPERS¸¦ ÀÌ¿ëÇϸé Çã¿ëÇÏÁö ¾Ê´Â ¿ÜºÎ ÁּҷκÎÅÍ µé¾î¿À´Â ħÀÔÀ» ¸·¾Æ º¸¾ÈÀ» °­È­½ÃÄÑ ÁØ´Ù. °¡Àå ÁÁÀº Á¤Ã¥Àº "/etc/hosts.deny" ÆÄÀÏÀ» ¿­¾î "ALL: ALL@ALL, PARANOID" ÁÙÀ» Ãß°¡Çؼ­ ¸ðµç È£½ºÆ®¸¦ ±âº»ÀûÀ¸·Î °ÅºÎ(deny)ÇÑ ´ÙÀ½, "/etc/hosts.allow" ÆÄÀÏÀ» ¿­¾î ½Å·ÚÇÒ ¼ö Àִ ȣ½ºÆ®¸¸ ¿­¾îÁÖ´Â °ÍÀÌ´Ù. TCP_WRAPPERS´Â ¾Æ·¡ µÎ ÆÄÀÏ·Î Á¦¾îµÇ´Âµ¥ ÀÏ´Ü ÀÏÄ¡ÇÏ´Â ±ÔÄ¢À» ãÀ¸¸é ´Ù¸¥ ±ÔÄ¢µéÀº ºñ±³ÇÏÁö ¾Ê´Â´Ù.(±ÔÄ¢À» ã´Â ¼ø¼­´Â ¾Æ·¡ ¼ø¼­´ë·ÎÀÌ´Ù)

    /etc/hosts.allow
    /etc/hosts.deny

    Step 1
    hosts.deny ÆÄÀÏÀ» ¿­¾î (vi /etc/hosts.deny) ´ÙÀ½ ÁÙµéÀ» Ãß°¡ÇÑ´Ù:

    # ¸ðµç Á¢¼ÓÀ» °ÅºÎ
    ALL: ALL@ALL, PARANOID

    Which means all services, all locations is blocked, unless they are permitted access by entries in the allow file.
    À§ ¼³Á¤Àº ¸ðµç ¼­ºñ½º, ¸ðµç »ç¿ëÀÚ, ¸ðµç Ãâ¹ßÁö ÁÖ¼Ò¸¦ ¸·´Â´Ù. allow ÆÄÀÏ¿¡¼­ Çã¿ëÇÒ ÁÖ¼Ò·Î ¼³Á¤µÈ ¸ñ·Ï±îÁö Æ÷ÇÔÇؼ­.

    Step 2
    hotsts.allow ÆÄÀÏÀ» ¿­¾î (vi /etc/hosts.allow) ´ÙÀ½ ¿¹¹®Ã³·³ ¿©·¯ºÐ¿¡ ÇÊ¿äÇÑ °ªµéÀ» Ãß°¡ÇÑ´Ù:

    ¿¹¸¦ µé¾î:
    ftp: 202.54.15.99 foo.com
    ¿©·¯ºÐ ¼­¹ö¸¦ ÀÌ¿ëÇÒ Å¬¶óÀ̾ðÆ® ¸Ó½ÅÀÌ: IP ÁÖ¼Ò°¡ 202.54.15.99ÀÌ°í, È£½ºÆ® À̸§ÀÌ foo.comÀ̶ó¸é ftp Á¢¼ÓÀ» Çã¿ëÇÑ´Ù.

    Step 3
    tcpdchk ÇÁ·Î±×·¥Àº tcpd ·¡ÆÛ È¯°æ¼³Á¤À» Á¡°ËÇÑ´Ù. tcpdchk´Â ¿©·¯ºÐ ½Ã½ºÅÛ¿¡ ¼³Á¤µÈ tcp ·¡ÆÛ È¯°æ¼³Á¤À» °Ë»çÇÏ°í ÀáÀçµÇ¾ú°Å³ª ½ÇÁ¦·Î µå·¯³ª´Â ¹®Á¦Á¡µéÀ» ã¾Æ³» º¸°í ÇÑ´Ù.

    * tcpd ·¡ÆÛ¸¦ ¼³Á¤ÇÑ ´ÙÀ½¿¡ tcpdchk ÇÁ·Î±×·¥À» ½ÇÇàÇÑ´Ù.
    [Root@kapil /]# tcpdchk

 

½Ã½ºÅÛ issue ÆÄÀÏÀ» ¿ÜºÎ¿¡ ³ëÃâ½ÃÅ°Áö ¸»¶ó

    ¿ÜºÎ¿¡¼­ ¿©·¯ºÐÀÇ ¼­¹ö¿¡ ·Î±×ÇÒ ¶§ ½Ã½ºÅÛ issue ÆÄÀÏÀÌ ³ëÃâµÇÁö ¾Êµµ·Ï ¼³Á¤ÇØ¾ß ÇÑ´Ù. ÀÌ·¸°Ô ÇÏ·Á¸é "/etc/inetd.conf" ÆÄÀÏÀ» ÆíÁýÇؼ­ telnet ¿É¼ÇÀ» ¹Ù²Û´Ù.
    ¾Æ·¡´Â "/etc/inetd.conf" ÆÄÀÏÀ» ¿­¾î telnet ¶óÀÎÀ» ÆíÁýÇÑ ¸ð½ÀÀÌ´Ù:

    telnet stream tcp nowait root /usr/sbin/tcpd in.telnetd

    À§ ÁÙÀ» ´ÙÀ½Ã³·³:

    telnet stream tcp nowait root /usr/sbin/tcpd in.telnetd -h

    ÁÙ ³¡¿¡ µ¡ºÙÀÎ "-h" Ç÷¡±×´Â (hush) ÅÚ³Ý µ¥¸óÀÌ ½Ã½ºÅÛ Á¤º¸¸¦ º¸¿©ÁÖÁö ¾Êµµ·Ï ¼³Á¤ÇϹǷΠ»ç¿ëÀÚ´Â login: ÇÁ·ÒÇÁÆ®¸¸ ¸¸³ª°Ô µÉ °ÍÀÌ´Ù. ±×·¯³ª ÀÌ °Í¸¸À¸·Î´Â ¾ÈÀüÇÏÁö ¾Ê´Ù. ¿À°í °¡´Â µ¥ÀÌÅ͸¦ ¾ÏȣȭÇÏ´Â sshd¸¦ »ç¿ëÇ϶ó°í ±ÇÇÏ°í ½Í´Ù.

 

"/etc/host.conf" ÆÄÀÏÀ» ¹Ù²Û´Ù.

    "/etc/host.conf" ÆÄÀÏÀº À̸§À» Çؼ®ÇÏ´Â ¹æ¹ýÀ» ÁöÁ¤ÇÑ´Ù. host.conf ÆÄÀÏÀ» ¿­¾î (vi /etc/host.conf) ´ÙÀ½ ÁÙµéÀ» Ãß°¡ÇÑ´Ù:

    # ¸ÕÀú DNS¸¦ ÅëÇØ À̸§À» °Ë»öÇÏ°í ´ÙÀ½¿¡ /etc/hosts·Î µ¹¾Æ°£´Ù.
    order bind,hosts
    # ´ÙÁß IP ÁÖ¼Ò¸¦ °¡Áø ¸Ó½ÅÀÌ ÀÖ´Ù.
    multi on
    # IP ÁÖ¼Ò¸¦ ¼ÓÀÌ´ÂÁö (spoofing) °Ë»çÇÑ´Ù.
    nospoof on

    ù ¹ø° ¿É¼ÇÀº È£½ºÆ® À̸§À» Çؼ®ÇÒ ¶§ DNS¸¦ ¸ÕÀú ã¾Æº¸°í hosts ÆÄÀÏÀ» ÀÌ¿ëÇϵµ·Ï ¼³Á¤ÇÑ´Ù. multi ¿É¼ÇÀº "/etc/hosts" ÆÄÀÏ¿¡¼­ ÇÑ ¸Ó½Å¿¡ IP ÁÖ¼Ò ¿©·¯ °³¸¦ ¼³Á¤ÇÒ ¼ö ÀÖµµ·Ï Çã¿ëÇÑ´Ù. (eth0, eth1, ... ethN µî ÀÎÅÍÆäÀ̽º°¡ ¿©·¯°³)
    nospoof ¿É¼ÇÀº IP¸¦ ¼ÓÀÌÁö ¸øÇϵµ·Ï º¸È£ÇÑ´Ù.

 

"/etc/services" ÆÄÀÏÀ» °¨¿°µÇÁö ¾Êµµ·Ï º¸È£ÇÑ´Ù.

    "/etc/service" ÆÄÀÏÀº ÇԺηΠÁö¿öÁö°Å³ª ¼­ºñ½º¸¦ Ãß°¡ÇÏÁö ¸øÇϵµ·Ï ¹Ýµå½Ã º¸È£ÇØ¾ß ÇÑ´Ù.

    * "/etc/services" ÆÄÀÏÀ» º¸È£ÇÏ·Á¸é ´ÙÀ½ ¸í·ÉÀ» »ç¿ëÇÑ´Ù:
    [root@kapil /]# chattr +i /etc/services

 

´Ù¸¥ ÀåÄ¡¿¡¼­´Â root·Î ·Î±äÇÏÁö ¸øÇÏ°Ô ¸¸µç´Ù

    "/etc/securetty" ÆÄÀÏÀº "root" »ç¿ëÀÚ·Î ·Î±ä ÇÒ ¼ö ÀÖ´Â TTY ÀåÄ¡¸¦ ÁöÁ¤ÇÑ´Ù. "/etc/securetty" ÆÄÀÏÀ» ¿­¾î¼­ ÇÊ¿ä ¾ø´Â tty´Â ¸ðµÎ ÁÖ¼®À¸·Î ¹Ù²Û´Ù. (# ¹®ÀÚ¸¦ Á٠óÀ½¿¡ ³¢¿ö ³Ö´Â´Ù)

 

´Ù¸¥ »ç¿ëÀÚ°¡ su ¸í·ÉÀ¸·Î root°¡ µÇ´Â °ÍÀ» ¸·´Â´Ù

    su (substitute user) ¸í·ÉÀº ÇÑ »ç¿ëÀÚ°¡ °°Àº ½Ã½ºÅÛ ¾È¿¡ ÀÖ´Â ´Ù¸¥ »ç¿ëÀÚ°¡ µÉ ¶§ »ç¿ëÇÏ´Â µµ±¸ÀÌ´Ù. ¿©·¯ºÐÀÌ Çã¿ëÇÑ »ç¿ëÀÚ°¡ ¾Æ´Ï¶ó¸é su ¸í·ÉÀ» »ç¿ëÇÒ ¼ö ¾øµµ·Ï ¼³Á¤ÇÏ·Á¸é "/etc/pam.d/" µð·ºÅ丮 ¾Æ·¡ "su" ¼³Á¤ ÆÄÀÏÀ» ¿­¾î ¸Ç ²À´ë±â¿¡ ´ÙÀ½ µÎ ÁÙÀ» µ¡ºÙÀδÙ.

    Step 1
    su ÆÄÀÏÀ» ¿­¾î (vi /etc/pam.d/su) ´ÙÀ½ µÎ ÁÙÀ» ¸Ç ²À´ë±â¿¡ Ãß°¡ÇÑ´Ù:
    auth sufficient /lib/security/pam_rootok.so debug
    auth required /lib/security/Pam_wheel.so group=wheel

    ÀÌ ¼³Á¤Àº "wheel" ±×·ìÀÇ »ç¿ëÀÚ¸¸ su ¸í·ÉÀ¸·Î root°¡ µÉ ¼ö ÀÖµµ·Ï Çã¿ëÇÑ´Ù; ±×¸®°í ´©±º°¡°¡ root·Î su Çß´Ù¸é ±â·ÏÀ» ³²±ä´Ù. ÀÌÁ¦ºÎÅÍ´Â su ¸í·ÉÀ¸·Î root°¡ µÇ´Â °ÍÀ» Çã¿ëÇÒ »ç¿ëÀÚ¸¦ wheel ±×·ì¿¡ Ãß°¡Çϱâ¸é µÈ´Ù.

 

¼ÐÀ» »ç¿ëÇÑ ±â·Ï

    bash ¼ÐÀº ÀÚÁÖ »ç¿ëÇÏ´Â ¸í·ÉÀ̳ª ±ä ¸í·ÉµéÀ» ³ªÁß¿¡ ¶Ç ½á¸ÔÀ» ¼ö ÀÖµµ·Ï "~/.bash_history" ÆÄÀÏ¿¡ À¯Àú°¡ »ç¿ëÇÑ ¸í·ÉÀ» 500 °³ ÀúÀåÇÑ´Ù.( "~/"Àº ¿©·¯ºÐÀÇ È¨ µð·ºÅ丮¸¦ ³ªÅ¸³½´Ù, ȤÀº 1000 ÀÌ ±âº» °ªÀÏ ¼öµµ ÀÖ´Ù) ±×·¡¼­, ½Ã½ºÅÛ¿¡ °èÁ¤À» °¡Áö°í ÀÖ´Â »ç¿ëÀÚ¸¶´Ù Ȩ µð·ºÅ丮¿¡ "bash_history"¶ó´Â À̸§À» °¡Áø ÆÄÀÏÀÌ »ý±â°Ô µÈ´Ù. ½Ã½ºÅÛ ÀÚ¿øÀ» ¾Æ³¢°í, »ç¿ë±â·ÏÀ» ³ëÃâÇÏÁö ¾Ê±â À§ÇØ bash ¼ÐÀÌ ¸í·ÉÀ» Á¶±Ý¸¸ ÀúÀåÇÏ°í, ·Î±×¾Æ¿ôÇÒ ¶§¿¡´Â ÀÌ °ÍÀ» Áö¿ìµµ·Ï ¸¸µç´Ù.

    Step 1
    "/etc/profile" ÆÄÀÏ¿¡¼­ HISTFILESIZE¿Í HISTSIZE °ªÀÌ ¿©·¯ºÐ ½Ã½ºÅÛ¿¡ °èÁ¤À» °¡Áø ¸ðµç »ç¿ëÀÚ¿¡°Ô Àû¿ëÇÒ "Bash_history" ÆÄÀÏ Å©±â¸¦ ÁöÁ¤ÇÑ´Ù. "/etc/profile"¿¡¼­ HISTFILESIZE³ª HISTSIZE °ªÀ» 30À̳ª ±×º¸´Ù ÀÛ°Ô ¼³Á¤ÇÏ´Â°Ô ÁÁ°Ú´Ù.

    profile ÆÄÀÏÀ» ¿­¾î (vi /etc/profile) ¾Æ·¡Ã³·³ ¹Ù²Û´Ù:

    HISTFILESIZE=30
    HISTSIZE=30

    ÀÌ ¼³Á¤Àº °¢ »ç¿ëÀÚ¸¶´Ù Ȩ µð·ºÅ丮¿¡ ÀÖ´Â "Bash_history" ÆÄÀÏ¿¡ Áö³ª°£ ¸í·ÉÀ» Á¶±Ý¸¸ ÀúÀåÇÒ ¼ö ÀÖµµ·Ï ¼³Á¤ÇÑ´Ù.

    Step 2
    "rm -f $HOME/Bash_history" line, so that each time a user logs out, its "Bash_history" file will be deleted.
    "/etc/skel/Bash_logout" ÆÄÀÏ¿¡ "rm -f $HOME /Bash_history" ¶óÀÎÀ» Ãß°¡Çؼ­ »ç¿ëÀÚ°¡ ·Î±×¾Æ¿ôÇÒ ¶§¸¶´Ù "Bash_histry" ÆÄÀÏÀ» Áö¿ìµµ·Ï ¼³Á¤ÇÑ´Ù.
    Bash_logout ÆÄÀÏÀ» ¿­¾î (vi /etc/skel/Bash_logout) ÆÄÀÏÀ» ¿­¾î ´ÙÀ½ ÁÙÀ» Ãß°¡ÇÑ´Ù:

    rm -f $HOME/Bash_history

 

Control-Alt-Delete Å°¸¦ ´­·¯µµ ¼Ë´Ù¿î µÇÁö ¾Ê°Ô ¸¸µç´Ù

    ¿©·¯ºÐ ½Ã½ºÅÛ¿¡¼­ "/etc/inittab" ÆÄÀÏÀ» ¿­¾î (vi /etc/inittab) °ü·ÃµÈ ÁÙÀ» ÁÖ¼®À¸·Î ó¸®ÇÑ´Ù ("#" ¹®ÀÚ¸¦ ÀÌ¿ë). ¸ÕÀú ´ÙÀ½ ÁÙÀ» ã´Â´Ù:

    ca::ctrlaltdel:/sbin/shutdown -t3 -r now

    À§ ÁÙÀ» ¾Æ·¡Ã³·³ ¹Ù²Û´Ù:

    #ca::ctrlaltdel:/sbin/shutdown -t3 -r now

    ¹Ù²ï ¼³Á¤À» ½Ã½ºÅÛ¿¡ Àû¿ëÇÏ·Á¸é ÇÁ·ÒÇÁÆ®¿¡¼­ ´ÙÀ½ ¸í·ÉÀ» ½ÇÇàÇÑ´Ù:

    [root@kapil /]# /sbin/init q

 

"/etc/rc.d/init.d" µð·ºÅ丮 ¾Æ·¡ ½ºÅ©¸³Æ® ÆÄÀϵ鿡 ¼³Á¤µÈ Æ۹̼ÇÀ»
¹Ù·ÎÀâ´Â´Ù.

    "/etc/rc.d/init.d" µð·ºÅ丮 ¾Æ·¡¿¡´Â ½Ã½ºÅÛÀÌ ºÎÆ®ÇÒ ¶§ ¶ç¿ö¾ß ÇÏ´Â ¸ðµç ÇÁ·Î¼¼½º¸¦ ½ÇÇàÇϰųª ¸ØÃß´Â ¿ªÇÒÀ» ÇÏ´Â ½ºÅ©¸³Æ®µéÀÌ µé¾î ÀÖ´Ù. ¾Æ·¡ ¸í·ÉÀ» ½ÇÇàÇؼ­ Æ۹̼ÇÀ» Á¶Á¤ÇÑ´Ù:

    [root@kapil/]# chmod -R 700 /etc/rc.d/init.d/*

    ÀÌ µð·ºÅ丮¿¡ ÀÖ´Â ¸ðµç ÆÄÀÏÀº root »ç¿ëÀÚ¸¸ Àаí, ¾²°í, ½ºÅ©¸³Æ®¸¦ ½ÇÇàÇÒ ¼ö ÀÖµµ·Ï Çã¿ëÇÑ´Ù´Â ¶æÀÌ´Ù.

 

½Ã½ºÅÛ Á¤º¸¸¦ °¨ÃßÀÚ

    ¿©·¯ºÐÀÌ ¸®´ª½º ¹Ú½º¿¡ ·Î±äÇÒ ¶§ ¸®´ª½º ¹èÆ÷ÆÇ À̸§, ¹öÀü, Ä¿³Î ¹öÀü, ¼­¹ö À̸§ µî ½Ã½ºÅÛ Á¤º¸°¡ ±âº»ÀûÀ¸·Î Ç¥½ÃµÈ´Ù. ÀÌ·± Á¤º¸µéÀº Å©·¡Ä¿¿¡°Ô ÇÊ¿äÇÑ Á¤º¸¸¦ Á¦°øÇϱ⿡ ÃæºÐÇÑ °ÍÀ¸·Î ÀÌ ¼³Á¤À» ¹Ù²Ù¾î "Login:"ÇÁ·ÒÇÁÆ®¸¸ ³ªÅ¸³ªµµ·Ï ¼³Á¤ÇØ¾ß ÇÑ´Ù.

    Step 1
    ±×·¸°Ô ÇÏ·Á¸é, "/etc/rc.d/rc.local" ÆÄÀÏÀ» ¿­¾î¼­ ¾Æ·¡ ÁÙÀ» ã¾Æ°£ ´ÙÀ½ ¸Ç ¾Õ¿¡ "#" ¹®ÀÚ¸¦ ³Ö´Â´Ù:

    # ÀÌ °÷¿¡´Â ºÎÆ®ÇÒ ¶§¸¶´Ù /etc/issue ÆÄÀÏÀ» µ¤¾î¾²µµ·Ï ¼³Á¤µÇ¾î ÀÖ´Ù.
    # ±×·¡¼­, /etc/issue ÆÄÀÏÀ» ¹Ù²Ù¾îµµ ´ÙÀ½ ¹ø ºÎÆ® ¶§¿¡´Â ±× ³»¿ëÀÌ
    # »ç¶óÁú °ÍÀÌ´Ù.
    #echo "" > /etc/issue
    #echo "$R" >> /etc/issue
    #echo "Kernel $(uname -r) on $a $(uname -m)" >> /etc/issue
    #
    #cp -f /etc/issue /etc/issue.net
    #echo >> /etc/issue

    Step 2
    ±× ´ÙÀ½, "/etc" µð·ºÅ丮 ¾Æ·¡ "issue.net", "issue" ÆÄÀÏÀ» Áö¿î´Ù:

    [root@kapil /]# rm -f /etc/issue
    [root@kapil /]# rm -f /etc/issue.net

 

»ç¿ëÇÏÁö ¾Ê´Â SUID/SGID ÇÁ·Î±×·¥À» ¸·¾ÆµÐ´Ù.

    root°¡ ¼ÒÀ¯ÇÑ ÇÁ·Î±×·¥¿¡ SUID °¡ ¼³Á¤µÇ¾î ÀÖ°í ÀÌ °ÍÀ» ÀϹݻç¿ëÀÚ°¡ ½ÇÇàÇÒ ¼ö ÀÖ´Ù¸é ·çÆ® ±ÇÇÑÀ» ¾ò´Âµ¥ ÀÌ¿ëÇÒ ¼ö ÀÖ´Ù. ±×·¡¼­, ½Ã½ºÅÛ °ü¸®ÀÚ´Â SUID/GUID°¡ ¼³Á¤µÈ ÇÁ·Î±×·¥Àº ÃÖ¼ÒÇÑÀ¸·Î À¯ÁöÇÏ°í ÇÊ¿ä ¾øÀÌ SUID°¡ ¼³Á¤µÈ °ÍµéÀº ¸·¾ÆµÎ¾î¾ß ÇÑ´Ù.

    Step 1
    ¾Æ·¡ ¸í·ÉÀ¸·Î 's' ºñÆ®°¡ ¼³Á¤µÈ root ¼ÒÀ¯ ÇÁ·Î±×·¥µéÀ» ã´Â´Ù:

    [root@kapil]# find / -type f ¡¬( -perm -04000 -o -perm -02000 ¡¬) ¡¬-exec ls ¡©lg {} ¡¬;

    * ¾Æ·¡ ¸í·ÉÀ¸·Î À§¿¡¼­ ã¾Æ³½ ÇÁ·Î±×·¥µé¿¡¼­ suid ºñÆ®¸¦ ¹þ°Ü³½´Ù:

    [root@kapil /]# chmod a-s [program]

    À§¿¡¼­ Á¦¾ÈÇÏ´Â º¸¾È ±Ç°í¸¦ ¸ðµÎ ¼³Á¤Çß´Ù¸é ½Ã½ºÅÛ °ü¸®ÀÚ°¡ ¸¶¶¥È÷ ÇØ¾ß ÇÒ ±âº»ÀûÀÎ ¼öÁØÀÇ ½Ã½ºÅÛ º¸¾ÈÀ» °®Ãß°Ô µÈ °ÍÀÌ´Ù. ¾î¶² ÀÛ¾÷µéÀº ÇÑ ¹ø ¼³Á¤ÇÑ °ÍÀ¸·Î ´Ù½Ã ¼Õ´ëÁö ¾ÊÀ»Áö ¸ð¸£Áö¸¸ ¸î °¡Áö´Â °è¼ÓÇؼ­ °ü½ÉÀ» °¡Áö°í °ü¸®ÇØ¾ß ÇÒ °ÍÀÌ´Ù. ¾Æ¹«Æ°, ½Ã½ºÅÛ °ü¸®ÀÚÀÇ ÃÖ°í ´ö¸ñÀº ºÎÁö·±ÇÔÀÌ´Ù.

    Written by: Kapil Sharma
    Email: kapil@linux4biz.net
    Website: http://www.linux4biz.net

    [Kapil Sharma´Â ¸®´ª½º¿Í ÀÎÅÍ³Ý º¸¾È ÄÁ¼³ÅÏÆ®ÀÌ´Ù. 2³â ³Ñ°Ô ´Ù¾çÇÑ ¸®´ª½º/À¯´Ð½º ½Ã½ºÅÛ¿¡¼­ ÀÎÅÍ³Ý º¸¾È ÀÛ¾÷À» ÇØ¿Ô´Ù. ¹«·á·Î ¸®´ª½º¿Í À¯´Ð½º ¼Ö·ç¼ÇÀ» Á¦°øÇÏ´Â http://www.linux4biz.net À¥ »çÀÌÆ®¸¦ °ü¸®ÇÑ´Ù]

    -------------------------------------------------------

    Copyright ¨Ï 2000, Kapil Sharma
    Published in Issue 58 of Linux Gazette, October 2000

    translation: el@linuxlab.co.kr




¡ã top

homeÀ¸·Î...