GeoIP È°¿ë(¾ÆÆÄÄ¡ À¥·Î±×¿¡ ±¹°¡ÄÚµå ³²±â±â ¿Ü) | ÀÛ¼ºÀÏ : 2008/04/23 08:34 |
Á¶È¸¼ö : 23555 |
Á¦ ¸ñ : GeoIP È°¿ë(¾ÆÆÄÄ¡ À¥·Î±×¿¡ ±¹°¡ÄÚµå ³²±â±â ¿Ü) ÀÛ¼ºÀÚ : ÁÁÀºÁøÈ£(truefeel, http://coffeenix.net/ ) ÀÛ¼ºÀÏ : 2008.3.18(È) Á¤¸®ÀÏ : 2008.4.20(ÀÏ) ¼öÁ¤ÀÏ : 2008.4.23(¼ö) MaxMindÀÇ GeoIP µ¥ÀÌÅ͸¦ ÀÌ¿ëÇؼ ´ÙÀ½ 2°¡Áö¿¡ È°¿ëÇÒ °ÍÀÌ´Ù. 1) À¥ÆäÀÌÁö¿¡ Á¢¼ÓÇÑ IP°¡ ¾î´À ±¹°¡ÀÎÁö¸¦ ¾ÆÆÄÄ¡ À¥·Î±×¿¡ ÄÚµå·Î ³²±â°í, ¶ÇÇÑ Æ¯Á¤ À¥ÆäÀÌÁö¸¦ ±¹°¡º°·Î Á¢±ÙÀ» Á¦ÇÑÇÏ´Â ¹æ¹ýÀ» ¾Ë¾Æº»´Ù. 2) IP¸¦ ÁöÁ¤ÇÏ¸é ±× IP°¡ ¾î´À ±¹°¡ÀÇ °ÍÀÎÁö¸¦ ¾Ë¾Æ³»´Â php ½ºÅ©¸³Æ®¿¡ ´ëÇØ ¾Ë¾Æº¼ °ÍÀÌ´Ù. iptables¿¡ GeoIP¸¦ ÀÌ¿ëÇؼ ±¹°¡º°·Î IP¸¦ Â÷´ÜÇÏ´Â °ÍÀº '6. GeoIP·Î ±¹°¡º° IP Â÷´Ü ¼³Á¤ ÀÚ·á'¸¦ Âü°íÇϱ⠹ٶõ´Ù. 1. GeoIP C API ¼³Ä¡ apacheÀÇ mod_geoip ¸ðµâÀ̳ª phpÀÇ geoip.so ¸ðµâÀ» ¼³Ä¡Çϱâ À§Çؼ´Â ¸ÕÀú GeoIP C API ¸ÕÀú ¼³Ä¡ÇØ¾ß ÇÑ´Ù. http://www.maxmind.com/app/c ¿¡¼ ¹Þ¾Æ ¼³Ä¡ÇÑ´Ù.
/usr/local/GeoIP/share/GeoIP/ ¿¡ GeoIP ¹ÙÀ̳ʸ® Æ÷¸Ë ÆÄÀÏ(GeoIP.dat)ÀÌ Á¸ÀçÇÑ´Ù. ÇöÀç ¾à 1MB. 2. apache¿¡¼ GeoIP È°¿ëÇϱâ http://www.maxmind.com/app/mod_geoip ¿¡¼ mod_geoip2(ÇöÀç ¹öÀü 1.2.1)¸¦ ¹Þ¾Æ¿Â´Ù. apache´Â /usr/local/www¿¡ ¼³Ä¡µÇ¾î ÀÖ°í, Apache 2.2.x ±âÁØÀ¸·Î ¼³¸íÇÑ´Ù. ¾Æ·¡¿¡ -I/usr... ¿¡¼ -I´Â ´ë¹®ÀÚ I(¾ÆÀÌ), -lGeoIP ¿¡¼ -l Àº ¼Ò¹®ÀÚ L(¿¤)ÀÌ´Ù. (ºê¶ó¿ìÀú ±Û²Ã¿¡ µû¶ó ±¸º°ÀÌ Àß ¾ÈµÉ ¼ö ÀÖÀ¸´Ï ÁÖÀÇ) apxs ¸í·ÉÀ» ³»¸®¸é /usr/local/www/modules/mod_geoip.so ¿¡ ÀÚµ¿À¸·Î ¼³Ä¡µÈ´Ù.
apache ¸ðµâÀÌ ¼³Ä¡µÈ »óÅ¿¡¼ phpinfo() ¸¦ »ìÆ캸¸é, Apache Environment ºÎºÐ¿¡¼ GEOIP_CONTINENT_CODE, GEOIP_COUNTRY_CODE, GEOIP_COUNTRY_NAMEȯ°æ º¯¼ö¸¦ º¼ ¼ö ÀÖ´Ù. apache À¥·Î±×ÀÇ ¸¶Áö¸·Ä¿¡ ±¹°¡Äڵ带 ³²±â´Â ¹æ¹ýÀ» ¼³¸íÇÑ´Ù. ·Î±×¿¡ ±¹°¡Äڵ带 ³²±èÀ¸·Î½á, 1) IP¸¦ °®°í whois·Î ¾î´À ±¹°¡ÀÎÁö¸¦ ã¾Æº¼ ÇÊ¿ä°¡ ¾ø¾îÁö°í, 2) ƯÁ¤ÆäÀÌÁö¸¦ ¾î´À ±¹°¡¿¡¼ ¿äûÇÏ´ÂÁö Åë°è¸¦ »Ì¾Æº¼ ¼öµµ ÀÖ°í, 3) À¥ÇØÅ·½Ãµµ¸¦ ÇÒ ¶§ ¾î´À ±¹°¡¿¡¼ °ø°ÝÇÏ´Â °ÍÀÎÁö ¹Ù·Î È®ÀÎÇÒ ¼ö ÀÖ´Ù.
À§¿¡¼ %{º¯¼ö¸í}i Çü½ÄÀº ¿äûÇÒ ¶§ÀÇ HeaderÁß ÇØ´ç °ªÀ» ¸»ÇÑ´Ù. %{º¯¼ö¸í}e ´Â ȯ°æº¯¼ö¸¦ ÀǹÌÇÑ´Ù. LogFormat ¼³Á¤ Áß¿¡ 2°¡Áö¸¦ »ìÆ캸ÀÚ. %{Host}i : ¿äûÇÑ È£½ºÆ®¸íÀ» ·Î±×¿¡ ³²±ä´Ù. À̸¦Å׸é ÇϳªÀÇ ¼¹ö¿¡ 2°³ ÀÌ»óÀÇ µµ¸ÞÀÎÀ» °®°í ÀÖÀ» ¶§ À¯¿ëÇÏ´Ù. www.foobar.com, www.foobar.net, foobar.com µîÀÇ µµ¸ÞÀÎÀÌ ÀÖÀ» ¶§ ¾î¶² µµ¸ÞÀÎÀ¸·Î ¿äûÇß´ÂÁö¸¦ ³²±æ ¼ö ÀÖ°Ô µÈ´Ù. %{GEOIP_COUNTRY_CODE}e : GEOIP_COUNTRY_CODE ȯ°æº¯¼ö, Áï ±¹°¡Äڵ带 ³²±ä´Ù. ´ÙÀ½Àº ƯÁ¤Àº ÆäÀÌÁö¸¦ ÁöÁ¤ÇÑ ±¹°¡¿¡¼ Á¢±ÙÇÒ ¼ö ¾øµµ·Ï ¼³Á¤ÇÑ ¿¹ÀÌ´Ù.
À§´Â ƯÁ¤ ±¹°¡¸¸ Á¦ÇÑÇÏ´Â °ÍÀε¥, ¹Ý´ë·Î ƯÁ¤ ±¹°¡¸¸ Çã¿ëÇÏ·Á¸é À§ÀÇ ³»¿ëÁß¿¡ location ºÎºÐÀ» ´ÙÀ½°ú °°ÀÌ ¼öÁ¤ÇÏ¸é µÈ´Ù.
À§ÀÇ 2°¡Áö ¼³Á¤(·Î±×¿¡ ±¹°¡ÄÚµå, ƯÁ¤ ±¹°¡ Á¦ÇÑ)ÀÌ Àû¿ëµÈ ·Î±× ¿¹(ÀϺΠ·Î±×´Â º¯°æ ó¸®ÇÔ)ÀÌ´Ù. 2¹ø° ÁÙÀº ƯÁ¤ ±¹°¡ Á¢¼Ó½Ã 403 ¿¡·¯¸¦ ¹ß»ýÇϸç, Á¢±ÙÀÌ Á¦ÇѵÆÀ½À» È®ÀÎÇÒ ¼ö ÀÖ´Ù.
3. php¿ë ¸ðµâ ¼³Ä¡ apache ¸ðµâ¸¸ ¼³Ä¡µÇ¾î À־, php¿¡¼ ´ÙÀ½°ú °°ÀÌ Á¢¼ÓÇÑ °÷ÀÇ ±¹°¡ Äڵ带 È®ÀÎÇغ¼ ¼ö ÀÖ´Ù.
±×·¯³ª GeoIP php ¸ðµâÀ» ¼³Ä¡ÇÑ´Ù¸é ´õ ÀÚ¼¼ÇÑ Á¤º¸¸¦ ¾òÀ» ¼ö ÀÖ´Ù. apache¸¸ÀÇ ¸ðµâ·Î´Â ÇöÀç Á¢¼ÓÇÑ IPÀÇ ±¹°¡Äڵ常 ¾Ë ¼ö ÀÖÁö¸¸, php ¸ðµâ·Î´Â º»ÀÎÀÌ ¿øÇÏ´Â IP¸¦ ÁöÁ¤ÇÏ¿© ¾Ë¾Æ³¾ ¼ö ÀÖ´Ù. ¶ÇÇÑ µµ¸ÞÀÎÀ» ÁöÁ¤ÇÒ ¼öµµ Àִµ¥, À̶© µµ¸ÞÀÎÀ» IP·Î lookupÇÑ ´ÙÀ½¿¡ ¾î´À ³ª¸®ÀÎÁö µîÀ» ¾Ë¾Æ³½´Ù. php ¸ðµâÀ» ¼³Ä¡Çغ¸ÀÚ. http://pecl.php.net/package/geoip/ ¿¡¼ ÃֽŠGeoIP PHP extension(ÇöÀç geoip-1.0.2.tgz)À» ¹Þ´Â´Ù. configureÇÒ ¶§ php-config ¸í·É °æ·Î¿Í GeoIPÀÇ µð·ºÅ丮¸¦ ÀÚ½ÅÀÇ È¯°æ¿¡ ¸Â°Ô ÁöÁ¤ÇÑ´Ù.
php.ini ¿¡ ¸ðµâ ¼³Á¤À» Ãß°¡ÇÑ´Ù. ÇÊ¿ä½Ã¿¡ extension_dir = "" ·Î php¸ðµâÀÌ ÀÖ´Â µð·ºÅ丮¸¦ ÁöÁ¤ÇÑ´Ù.
4. php¿¡¼ GeoIP Å×½ºÆ® php¿ë »ùÇà ¼Ò½º´Â http://www.maxmind.com/download/geoip/api/php/ ¿¡¼ È®ÀÎÇÒ ¼ö ÀÖ´Ù. ¿©±â¼´Â Å×½ºÆ®¸¦ À§ÇØ ¸¸µé¾îº» Å×½ºÆ®¿ë ¼Ò½º¸¦ ¼Ò°³ÇÒ °ÍÀ̸ç, ±× °á°úµµ ÇÔ²² »ìÆ캻´Ù. * geoip_php.html ³»·Á¹Þ±â
5.Âü°íÀÚ·á * PHP : GeoIP Functions http://www.php.net/manual/en/ref.geoip.php * PECL :: Package :: geoip http://pecl.php.net/package/geoip/ * GeoIP PHP API http://www.maxmind.com/app/php * Installation of PECL extensions http://www.php.net/manual/en/install.pecl.php 6. GeoIP·Î ±¹°¡º° IP Â÷´Ü ¼³Á¤ ÀÚ·á * ±¹°¡º°·Î Á¢¼Ó Â÷´Ü¼³Á¤À» ÇÏ°íÀÚ ÇÒ ¶§ (±Û È«¼®¹ü) http://www.tt.co.kr/~antihong/documents/iptables_country.pdf * ssh dictionary attack ¸·±â (±Û ±èÁ¤±Õ) http://my.oops.org/42 * RHEL/CentOS ¿¡¼ GeoIP kernel module ºôµå (±Û ±èÁ¤±Õ) http://my.oops.org/117 * centos5 geoip patchÇϱâ http://kldp.org/node/82983 |
Ä¿ÇǴнº, ½Ã½ºÅÛ ¿£Áö´Ï¾îÀÇ ½°ÅÍ / URL : http://coffeenix.net/board_view.php?bd_code=1638 |