vsftpd ¼³Ä¡¿Í ¿î¿µ (ÇÑ±Û·Î±× ÆÐÄ¡ Æ÷ÇÔ) | ÀÛ¼ºÀÏ : 2003/10/04 02:04 |
Á¶È¸¼ö : 23982 |
Á¦ ¸ñ : vsftpd ¼³Ä¡¿Í ¿î¿µ (ÇÑ±Û·Î±× ÆÐÄ¡ Æ÷ÇÔ) ÀÛ¼ºÀÚ : ÁÁÀºÁøÈ£(truefeel, http://coffeenix.net/ ) ÀÛ¼ºÀÏ : 2003.10.01(¼ö) ¼öÁ¤ÀÏ : 2004.01.08(¸ñ), chroot_list_enable ±Û Ãß°¡ ÀÌ ±ÛÀº 7¿ù¿¡ ½è´ø 'vsftpd¿¡¼ ÇѱÛÆÄÀÏ·Î±×¿Í lastlog ·Î±äÈ®ÀÎÇϱâ'¸¦ ±âÃÊ·Î ÀÛ¼ºÇÏ¿´´Ù. 1. vsftpd FTP ¼¹ö¿¡ ´ëÇØ 2. vsftpd ¼³Ä¡ 3. vsftpd.conf ÀÇ ÁÖ¿ä ¼³Á¤ 4. ¹®Á¦ ÇØ°á 5. Âü°íÇÒ¸¸ÇÑ ¹®¼ 1. vsftpd FTP ¼¹ö¿¡ ´ëÇØ vsftpd´Â UNIX ½Ã½ºÅÛ¿¡¼ »ç¿ëÇÒ ¼ö ÀÖ´Â free FTP ¼¹ö(¶óÀ̼¾½º´Â GPL)ÀÌ´Ù. vsftpd°¡ ³»¼¼¿ì°í ÀÖ´Â °ÍÀº º¸¾È, ¼º´É, ¾ÈÁ¤¼ºÀÌ´Ù. Áö±Ý±îÁö vsftpdÀÇ ÀÚü º¸¾È ¹®Á¦°¡ ÀÖ¾î º¸¾È±Ç°í°¡ ³ª¿Â ÀûÀº ¾ø´Ù.(RedhatÀÇ rpm ÆÐÅ°ÁöÁß¿¡ tcp_wrappers Áö¿ø¾øÀÌ ¸¸µé¾îÁ®¼ ¾÷µ¥ÀÌÆ® rpmÀº ³ª¿Â Àû ÀÖÀ½) * Áö¿ø ¹× Å×½ºÆ®µÈ OS - Linux (Redhat, SuSE, Debian) - Solaris (¹öÀü¿¡ µû¶ó IPv6³ª inet_atonÇÔ¼ö¶§¹®¿¡ ¼³Ä¡°¡ Àß ¾ÈµÉ ¼ö ÀÖÀ½) - FreeBSD, OpenBSD - HP-UX - IRIX * ÁÖ¿ä ±â´É - °¡»ó IPº° º°µµÀÇ È¯°æ ¼³Á¤ ±â´É (¼³Á¤ÆÄÀÏÀÇ listen_address= ÀÌ¿ë) - °¡»ó »ç¿ëÀÚ ¼³Á¤ - Àü¼Û ´ë¿ªÆø ÁöÁ¤ - PAM Áö¿ø (¹öÀü 1.2.0ºÎÅÍ´Â PAMÀ» ÅëÇÑ wtmp¿¡ ·Î±ä ·Î±×¸¦ ³²±è) - xferlog Ç¥ÁØ ·Î±× ÆÄÀϺ¸´Ù »ó¼¼ÇÑ ÀÚü ·Î±× ÆÄÀÏ Çü½Ä Áö¿ø - Standalone ¹æ½Ä°ú inetd(xinetd)¸¦ ÅëÇÑ ¿î¿µ ¸ðµÎ Áö¿ø - IPº° ´Ù¸¥ ȯ°æ ÆÄÀÏ ÁöÁ¤ ±â´É (tcp_wrappers¿Í ÇÔ²² »ç¿ëÇÒ ¶§) - ... 2. vsftpd ¼³Ä¡ ¡Ø ¼³Ä¡´Â Redhat ±âÁØ. ¼Ö¶ó¸®½ºÀÇ PAM¿¡ ´ëÇÑ °ÍÀº README.solaris ÆÄÀÏ ÂüÁ¶ÇÑ´Ù. http://vsftpd.beasts.org/ ¿¡¼ ÃֽŹöÀü(ÇöÀç 1.2.0)ÀÇ ¼Ò½º¸¦ ¹Þ¾Æ¿Â´Ù.
Çѱ۷ΠµÈ ÆÄÀϸíÀ» Àü¼ÛÇÒ ¶§ ·Î±×¿¡ ÆÄÀϸíÀÌ ???? ·Î ³²Áö ¾Êµµ·Ï logging.c ÆÄÀÏÀ» ¿¬ ÈÄ 140¹ø° ÁÙÀÇ str_replace_unprintable(p_str, '?'); ¸¦ ´ÙÀ½Ã³·³ ÁÖ¼® ó¸®ÇÑ´Ù. /* str_replace_unprintable(p_str, '?'); */ ¶ÇÇÑ tcp_wrappers¸¦ ÅëÇÑ Á¢¼ÓÁ¦¾î¸¦ »ç¿ëÇÏ·Á¸é builddefs.h ¿¡¼ #undef VSF_BUILD_TCPWRAPPERS ¸¦ #define VSF_BUILD_TCPWRAPPERS ·Î ¹Ù²Û´Ù.
/etc/pam.d/vsftpd ù¹ø° ÁÙ¿¡ ´ÙÀ½°ú °°ÀÌ ÀÖ´Ù.
Áï, /etc/ftpusers ÆÄÀÏ¿¡ Á¸ÀçÇÏ´Â ID´Â Á¢¼ÓÇÒ ¼ö ¾ø°ÔµÈ´Ù.(sense=deny)
3. vsftpd.conf ÀÇ ÁÖ¿ä ¼³Á¤
ÇÊ¿äÇÑ ¼³Á¤ÀÌ ³¡³µÀ¸¸é xinetd¸¦ Àç½ÇÇàÇÑ´Ù.
4. ¹®Á¦ ÇØ°á 1) ftpwho °°Àº ¸í·ÉÀº ÀÖ³ª? ¶ÇÇÑ last¸¦ Çصµ Á¢¼ÓµÈ °É È®ÀÎÇÒ ¼ö°¡ ¾ø´Âµ¥ ¹æ¹ýÀÌ ¾ø³ª? ftpwho ÇüÅÂÀÇ ¸í·ÉÀº ¾øÀ¸¸ç ÀÓ½ÃÀûÀ¸·Î ´ÙÀ½ ¸í·É¾î µîÀ¸·Î È®ÀÎÇÒ ¼ö ÀÖ´Ù. # ps -ef|grep vsftpd # fuser -v ftp/tcp vsftpd v1.2.0ÀÌ»óºÎÅÍ PAMÀ» ÅëÇØ wtmp¿¡ ·Î±×¸¦ ³²±â¹Ç·Î last·Î Á¢¼Ó¿©ºÎ¸¦ È®ÀÎÇÒ ¼ö ÀÖ´Ù. 2) ÇÑ±Û ÆÄÀϸíÀÌ Àü¼ÛµÉ ¶§´Â vsftpd.log ¿¡ ???? ·Î ³²´Â´Ù. ÇØ°áÃ¥Àº? vsftpd´Â Ãâ·ÂÇÒ ¼ö ¾ø´Ù°í ÆÇ´ÜÇÏ´Â ASCII ÄÚµå 31 ÀÌÇÏ, 128~159, 177 ¹®ÀÚ¸¦ ¸ðµÎ ? ·Î ¹Ù²ã¼ ÀúÀåÀ» ÇÑ´Ù. µû¶ó¼ ÀÌ ºÎºÐÀ» ó¸®ÇÏÁö ¾Ê°í ÀúÀåÇϵµ·Ï ¼Ò½º¸¦ ¼öÁ¤ÇÑ ÈÄ ÄÄÆÄÀÏÇϸé ÇØ°áµÈ´Ù. 3) »ç¿ëÀÚ°¡ Ȩµð·ºÅ丮¸¦ ¸ø ¹þ¾î³ª°Ô ÇÏ°í ½Í´Âµ¥? /etc/vsftpd.conf¿¡ ´ÙÀ½À» Ãß°¡Çϸé, ¸ðµç »ç¿ëÀÚ´Â ÀÚ½ÅÀÇ È¨µð·ºÅ丮¸¸ Á¢±ÙÇÒ ¼ö ÀÖ´Ù. chroot_local_user=YES ¶ÇÇÑ Æ¯Á¤ »ç¿ëÀڷθ¸ Á¦ÇÑÀ» ÇÏ°í ½Í´Ù¸é ´ÙÀ½°ú °°ÀÌ ÇÑ´Ù. /etc/vsftpd.chroot_list¿¡´Â Á¦ÇÑÇÒ »ç¿ëÀÚ ID¸¦ ÇÑÁÙ¿¡ Çϳª¾¿ ³ª¿ÇÏ¸é µÈ´Ù. chroot_list_enable=YES chroot_list_file=/etc/vsftpd.chroot_list ÁÖÀÇÇÒ °ÍÀº chroot_local_user=YES¿Í chroot_list_enable=YES¸¦ ÇÔ²² »ç¿ëÇÒ °æ¿ì¿¡´Â /etc/vsftpd.chroot_list¿¡ Æ÷ÇÔµÈ »ç¿ëÀÚ ID¸¸ Á¦ÇѾøÀÌ È¨µð·ºÅ丮¸¦ ¹þ¾î³¯ ¼ö ÀÖ´Ù. Áï, ¹Ý´ë·Î ÀÛ¿ëÇÑ´Ù. standaloneÀ¸·Î FTP¼¹ö°¡ µ¿ÀÛÁßÀ̸é Àç½ÇÇà ÇÊ¿ä. standalone¿¡ ´ëÇؼ´Â 6)¹ø¿¡¼. 4) root·Î Á¢¼ÓÇÒ ¼ö´Â ¾ø³ª? °¡´ÉÇϸé root Á¢¼ÓÀº Çã¿ëÇÏÁö ¾Ê±â¸¦ ¹Ù¶õ´Ù. /etc/ftpusers ÆÄÀÏ¿¡¼ root¸¦ »©¸é Á¢¼ÓÀÌ °¡´ÉÇÏ´Ù. 5) ID/ºñ¹Ð¹øÈ£°¡ Á¤È®È÷ ¸Â´Âµ¥ ·Î±äÇÒ ¶§ ÀÚ²Ù 530 Login incorrect. ¶ó°í ³ª¿Â´Ù. /etc/ftpusers (¶Ç´Â vsftpd.ftpusers)¿¡ µî·ÏµÈ »ç¿ëÀÚÀÎÁö È®ÀÎÇÑ´Ù. ¿©±â¿¡ µî·ÏµÈ »ç¿ëÀÚ´Â ·Î±äÇÒ ¼ö ¾ø´Ù. ÀÌ·² ¶§ /var/log/messages¿¡ ´ÙÀ½°ú °°Àº ·Î±×°¡ ³²´Â´Ù. Aug 16 22:21:52 truefeel vsftpd: PAM-listfile: Refused user xxxxxxxx for service vsftpd 6) standaloneÀ¸·Î ¿î¿µÇÏ°í ½Í´Ù. (Áï, apache³ª sendmailó·³ xinetd ÅëÇÏÁö ¾Ê°í ¿î¿µÀ» ¿øÇÑ´Ù.) /etc/xinetd.d/vsftpd (vsftpd°¡ ¾Æ´Ñ ´Ù¸¥ ÆÄÀϸíÀÏ ¼ö ÀÖÀ½) ¿¡¼ disable = yes ·Î º¯°æÇÏ¿© xinetd·Î ¼ºñ½º ÇÏÁö ¾Êµµ·Ï ¼³Á¤ÇÑ´Ù. xinetd ¸¦ Àç½ÇÇàÇϸé ÀÌÁ¦ xinetd¸¦ ÅëÇÑ ftp ¼ºñ½º´Â Á¾·áµÈ´Ù. ·¹µåÇÞÀÇ °æ¿ì /etc/rc.d/init.d/xinetd restart ÀÌÁ¦ vsftpd µ¥¸ó¸¦ ½ÇÇàÇÑ´Ù. (¼Ò½º·Î ¼³Ä¡½Ã ±âº» °æ·Î´Â /usr/local/sbin) # /usr/local/sbin/vsftpd & 7) ´Ù¸¥ Æ÷Æ®(±âº» 21¹ø)¸¦ »ç¿ëÇÏ°í ½Í´Ù. (¿¹¸¦ µé¾î 11121¹ø Æ÷Æ®¸¦ ¿øÇÒ ¶§) * xinetd¸¦ ÀÌ¿ëÇÏ´Â °æ¿ì /etc/service ¿¡ 'ftp2 11121/tcp' ÇÑ ÁÙÀ» Ãß°¡ÇÑ´Ù. ±×¸®°í /etc/xinetd.d/vsftpd (vsftpd°¡ ¾Æ´Ñ ftp¿Í °°Àº ´Ù¸¥ ÆÄÀϸíÀÏ ¼ö ÀÖÀ½) ¿¡¼ service ftp ¸¦ service ftp2·Î ¹Ù²Ù°í, xinetd ¸¦ Àç½ÇÇàÇÑ´Ù. * standaloneÀ¸·Î ¿î¿µÇÏ´Â °æ¿ì /etc/vsftpd.conf ¿¡¼ listen_port=11121 À» Ãß°¡ÇÏ°í vsftpd ¼¹ö¸¦ Àç½ÇÇàÇÑ´Ù. ¹Ù²ï Æ÷Æ®·Î ¿î¿µÁßÀÎÁö È®ÀÎÀº netstat -atnp(¸®´ª½º) ¶Ç´Â netstat -an(±× ÀÌ¿Ü À¯´Ð½º) 8) ¾÷·Îµå ÆÄÀÏ Å©±â¸¦ Á¦ÇÑÇÏ´Â ¹æ¹ýÀº ¾ø³ª¿ä? À̸¦Å׸é 5MBÀÌ»óÀÇ ÆÄÀÏÀº ¾÷·Îµå ¸øÇÑ´ÙµçÁö. ÇöÀç 1.2.1¹öÀü±îÁö vsftpd ÀÚü¿¡ ¼³Á¤ÇÏ´Â ¹æ¹ýÀº ¾ø½À´Ï´Ù. 5. Âü°íÇÒ¸¸ÇÑ ¹®¼ * vsftpd 1.2.0 ¼³Ä¡ ¹®¼ ftp://vsftpd.beasts.org/users/cevans/untar/vsftpd-1.2.0/INSTALL * vsftpd.conf man page * vsftpd¿¡¼ ÇѱÛÆÄÀÏ·Î±×¿Í lastlog ·Î±äÈ®ÀÎÇϱâ (ÁÁÀºÁøÈ£) http://coffeenix.net/board_view.php?bd_code=4 * vsftpd¿¡¼ Àü¼Û¼Óµµ Á¦ÇÑ (bandwidth limit) (ÁÁÀºÁøÈ£) http://coffeenix.net/board_view.php?bd_code=21 |
Ä¿ÇǴнº, ½Ã½ºÅÛ ¿£Áö´Ï¾îÀÇ ½°ÅÍ / URL : http://coffeenix.net/board_view.php?bd_code=89 |