6.11. IPsec È£½ºÆ® °£ ¼³Á¤

IPsecÀ» È£½ºÆ® °£ ¿¬°áÀ» ÅëÇÏ¿© µ¥½ºÅ©Å¾À̳ª ¿öÅ©½ºÅ×À̼ǵéÀ» ¿¬°áÇϵµ·Ï ¼³Á¤ °¡´ÉÇÕ´Ï´Ù. ÀÌ·¯ÇÑ À¯ÇüÀÇ ¿¬°áÀº °¢ È£½ºÆ®°¡ ¿¬°áµÈ ³×Æ®¿öÅ©¸¦ »ç¿ëÇÏ¿© ¾ç È£½ºÆ® »çÀÌ¿¡ º¸¾È ÅͳÎÀ» »ý¼ºÇÕ´Ï´Ù. È£½ºÆ® °£ ¿¬°á¿¡ ÇÊ¿äÇÑ ¿ä°ÇÀº °¢ È£½ºÆ®¿¡ IPsec¸¸ ¼³Á¤ÇÏ¸é µË´Ï´Ù. È£½ºÆ®¿¡¼­ IPsec ¿¬°áÀ» »ý¼ºÇϱâ À§Çؼ­´Â °øÁß ³×Æ®¿öÅ© (¿¹, ÀÎÅͳÝ)¿Í Red Hat Enterprise Linux¿¡ ¿¬°áÇÒ Àü¿ë¼±¸¸ ÀÖÀ¸¸é µË´Ï´Ù.

¿¬°áÀ» »ý¼ºÇϴ ù¹øÂ° ´Ü°è´Â °¢ ¿öÅ©½ºÅ×À̼ÇÀÇ ½Ã½ºÅÛ Á¤º¸¿Í ³×Æ®¿öÅ© Á¤º¸¸¦ ¸ðÀ¸´Â °ÍÀÔ´Ï´Ù. È£½ºÆ® °£ ¿¬°áÀ» À§Çؼ­´Â ´ÙÀ½°ú °°Àº Á¤º¸¸¦ ¼öÁýÇÏ¼Å¾ß ÇÕ´Ï´Ù:

¿¹¸¦ µé¾î ¿öÅ©½ºÅ×ÀÌ¼Ç A¿Í ¿öÅ©½ºÅ×ÀÌ¼Ç B°¡ IPsec ÅͳÎÀ» ÅëÇÏ¿© ¿¬°áÇϰíÀÚ ÇÑ´Ù°í °¡Á¤ÇÕ´Ï´Ù. foobarbaz ¸¦ ÀÌ¹Ì °øÀ¯µÈ Ű·Î »ç¿ëÇÏ¿© ¿¬°áÇϰíÀÚ ÇÏ¸ç ¾ç »ç¿ëÀÚ°¡ racoon µ¥¸óÀÌ ÀÚµ¿À¸·Î ÀÎÁõ۸¦ »ý¼ºÇÏ¿© °¢ È£½ºÆ® °£¿¡ °øÀ¯ÇÏ´Â °Í¿¡ µ¿ÀÇÇÏ¿© ÀÌ ¿¬°áÀ» ipsec0À¸·Î À̸§ ºÙ¿´´Ù°í °¡Á¤ÇÕ´Ï´Ù.

´ÙÀ½Àº ¿öÅ©½ºÅ×ÀÌ¼Ç A¿¡¼­ È£½ºÆ® °£ IPsec ¿¬°á¿¡ »ç¿ëµÈ ifcfg ÆÄÀÏÀÔ´Ï´Ù. ÀÌ ¿¹½Ã¿¡¼­ ÀÌ ¿¬°áÀ» ½Äº°Çϱâ À§ÇØ »ç¿ëµÈ °íÀ¯ À̸§Àº ipsec0À̹ǷΠ°á°úÀûÀ¸·Î ÆÄÀÏ À̸§Àº /etc/sysconfig/network-scripts/ifcfg-ipsec0°¡ µË´Ï´Ù.

DST=X.X.X.X
TYPE=IPsec
ONBOOT=yes
IKE_METHOD=PSK

¿öÅ©½ºÅ×ÀÌ¼Ç A´Â X.X.X.X ºÎºÐÀ» ¿öÅ©½ºÅ×ÀÌ¼Ç BÀÇ IP ÁÖ¼Ò·Î ´ëüÇϰí, ¿öÅ©½ºÅ×ÀÌ¼Ç B´Â X.X.X.X¸¦ ¿öÅ©½ºÅ×ÀÌ¼Ç AÀÇ IP ÁÖ¼Ò·Î ´ëüÇÕ´Ï´Ù. ÀÌ ¿¬°áÀº ºÎÆÃ½Ã ½ÃÀ۵ǵµ·Ï (ONBOOT=yes) ¼³Á¤µÇ¾úÀ¸¸ç ÀÌ¹Ì °øÀ¯µÈ Ű ÀÎÁõ ¹æ½Ä (IKE_METHOD=PSK)À» »ç¿ëÇÕ´Ï´Ù.

´ÙÀ½Àº ÀÌ¹Ì °øÀ¯µÈ Ű ÆÄÀÏ (/etc/sysconfig/network-scripts/keys-ipsec0)·Î¼­ ¾ç ¿öÅ©½ºÅ×À̼ÇÀÌ »ó´ë¹æÀ» ÀÎÁõÇϴµ¥ »ç¿ëÇÕ´Ï´Ù. ÀÌ ÆÄÀÏÀÇ ³»¿ëÀº µ¿ÀÏÇØ¾ß ÇÏ¸ç ·çÆ® »ç¿ëÀÚ¸¸ÀÌ ÀÌ ÆÄÀÏÀ» Àаųª ÀÛ¼ºÇÒ ¼ö ÀÖ½À´Ï´Ù.

IKE_PSK=foobarbaz

Áß¿äÁß¿ä
 

keys-ipsec0 ÆÄÀÏÀ» ·çÆ® »ç¿ëÀÚ¸¸ ÀÐ°í ¼öÁ¤ÇÒ ¼ö ÀÖµµ·Ï ÇϽ÷Á¸é, ÆÄÀÏÀ» ¸¸µå½Å ÈÄ ´ÙÀ½ ¸í·ÉÀ» ÀÔ·ÂÇϽʽÿÀ:

chmod 600 /etc/sysconfig/network-scripts/keys-ipsec0

¾ðÁ¦µçÁö ÀÎÁõ۸¦ º¯°æÇϽ÷Á¸é ¾ç ¿öÅ©½ºÅ×À̼ǿ¡¼­ keys-ipsec0 ÆÄÀÏÀ» ¼öÁ¤ÇÏ½Ã¸é µË´Ï´Ù. ¾ç ۰¡ µ¿ÀÏÇØ¾ß¸¸ ÀûÀýÈ÷ ¿¬°áµÉ ¼ö ÀÖ½À´Ï´Ù.

/etc/racoon/racoon.conf ÆÄÀÏÀº include "/etc/racoon/X.X.X.X.conf" ¹®ÀåÀ» Á¦¿ÜÇÑ ¸ðµç ´Ù¸¥ ºÎºÐÀÌ µ¿ÀÏÇØ¾ß ÇÕ´Ï´Ù. ÀÌ ¹®Àå (¹× ÀÌ ¹®ÀåÀÌ ¾ð±ÞÇÏ´Â ÆÄÀÏ)Àº IPsec ÅͳÎÀÌ È°¼ºÈ­µÈ °æ¿ì¿¡¸¸ ³ªÅ¸³³´Ï´Ù. ¿öÅ©½ºÅ×ÀÌ¼Ç A¿¡¼­ include ¹®Àå¿¡ ¾ð±ÞµÈ X.X.X.X´Â ¿öÅ©½ºÅ×ÀÌ¼Ç BÀÇ IP ÁÖ¼ÒÀÌ¸ç ¿öÅ©½ºÅ×ÀÌ¼Ç B¿¡¼­´Â ±× ¹Ý´ëÀÔ´Ï´Ù. ´ÙÀ½Àº IPsec ¿¬°áÀÌ È°¼ºÈ­µÇ¾úÀ»¶§ ÀüÇüÀûÀÎ racoon.conf ÆÄÀÏÀ» º¸¿©ÁÝ´Ï´Ù.

# Racoon IKE daemon configuration file.
# See 'man racoon.conf' for a description of the format and entries.

path include "/etc/racoon";
path pre_shared_key "/etc/racoon/psk.txt";
path certificate "/etc/racoon/certs";

sainfo anonymous
{
	pfs_group 2;
	lifetime time 1 hour ;
	encryption_algorithm 3des, blowfish 448, rijndael ;
	authentication_algorithm hmac_sha1, hmac_md5 ;
	compression_algorithm deflate ;
}
include "/etc/racoon/X.X.X.X.conf"

¿¬°áÀ» ½ÃÀÛÇÏ·Á¸é ¿öÅ©½ºÅ×À̼ÇÀ» ÀçºÎÆÃÇϰųª °¢ È£½ºÆ®¿¡¼­ ·çÆ®·Î ·Î±×ÀÎÇϽŠÈÄ ´ÙÀ½ ¸í·ÉÀ» ½ÇÇàÇÏ½Ã¸é µË´Ï´Ù:

/sbin/ifup ipsec0

IPsec ¿¬°áÀ» °Ë»çÇϽ÷Á¸é tcpdump À¯Æ¿¸®Æ¼¸¦ ½ÇÇàÇÏ¿© È£½ºÆ® °£ (³×Æ®¿öÅ© °£)¿¡ Àü¼ÛµÇ´Â ³×Æ®¿öÅ© ÆÐŶÀÌ IPsecÀ» »ç¿ëÇÏ¿© ¾ÏȣȭµÇ¾ú´ÂÁö È®ÀÎÇϽñ⠹ٶø´Ï´Ù. ÆÐŶÀº AH Çì´õ¸¦ Æ÷ÇÔÇØ¾ß Çϸç ESP ÆÐŶÀ¸·Î º¸¿©Á®¾ß ÇÏ´Ï´Ù. ESP´Â ÆÐŶÀÌ ¾ÏȣȭµÇ¾ú´Ù´Â °ÍÀ» ÀǹÌÇÕ´Ï´Ù. ¿¹¸¦ µé¸é:

17:13:20.617872 pinky.example.com > ijin.example.com: \
	    AH(spi=0x0aaa749f,seq=0x335): ESP(spi=0x0ec0441e,seq=0x335) (DF)