IPSec 편집하기
IT위키
편집을 취소할 수 있습니다. 이 편집을 되돌리려면 아래의 바뀐 내용을 확인한 후 게시해주세요.
최신판 | 당신의 편집 | ||
1번째 줄: | 1번째 줄: | ||
=개요= | ==개요== | ||
* 보안에 취약한 구조를 가진 IP의 보안을 위하여 국제 인터넷 기술 위원회(IETF)에서 설계한 표준(RFC2401) | |||
*보안에 취약한 구조를 가진 IP의 보안을 위하여 국제 인터넷 기술 위원회(IETF)에서 설계한 표준(RFC2401) | * IPv4에선 보안이 필요한 경우에만 선택적으로 사용하였지만 IPv6부턴 기본 스펙에 포함됨 | ||
*IPv4에선 보안이 필요한 경우에만 선택적으로 사용하였지만 IPv6부턴 기본 스펙에 포함됨 | |||
==2+1 프로토콜== | ==2+1 프로토콜== | ||
===AH(Authentication Header)=== | ===AH(Authentication Header)=== | ||
;AH (Authentication Header)는 IP Extension Header로서 IP Packet에 대한 인증을 제공한다. | ;AH (Authentication Header)는 IP Extension Header로서 IP Packet에 대한 인증을 제공한다. | ||
* 메세지 인증 코드(MAC)를 이용하며 무결성(Data Integrity)과 인증(Authentication) 기능 제공 | |||
*메세지 인증 코드(MAC)를 이용하며 무결성(Data Integrity)과 인증(Authentication) 기능 제공 | * 암호화는 기본적으로 제공되지 않음 | ||
*암호화는 제공되지 않음 | * 구성 | ||
*구성 | ** Next Header(8bit) : Payload의 Data Type 으로 TCP는 6, UDP는 17 | ||
**Next Header(8bit) : Payload의 Data Type 으로 TCP는 6, UDP는 17 | ** Payload Length(8bit) : Payload의 length | ||
**Payload Length(8bit) : Payload의 length | ** SPI(Security Parameters Index) : SA를 구분하기 위한 Index 값 | ||
**SPI(Security Parameters Index) : SA를 구분하기 위한 Index 값 | ** Authentication Data : SHA, Keyed MD5, HMAC-MD5-96, HMAC-SHA-1-96등의 인증 정보 | ||
**Authentication Data : SHA, Keyed MD5, HMAC-MD5-96, HMAC-SHA-1-96등의 인증 정보 | |||
===ESP(Encapsulating Security Payload)=== | ===ESP(Encapsulating Security Payload)=== | ||
* AH가 가진 무결성과, 인증도 제공하고 추가적으로 암호화를 제공한다. | |||
* 대칭키 암호화를 통해 기밀성(Confidentiality)을 제공한다. | |||
* 구성 | |||
*AH가 가진 무결성과, 인증도 제공하고 추가적으로 대칭키 암호화를 통해 기밀성(Confidentiality) | ** SPI(Security Parameters Index) : SA를 구분하기 위한 Index 값 | ||
*구성 | ** IV(Initialization Vector) : CBC Encryption에 사용되는 초기 벡터 | ||
**SPI(Security Parameters Index) : SA를 구분하기 위한 Index 값 | ** Padding : Payload Data 와 Authentication Data를 구분하기 위한 패딩 | ||
**IV(Initialization Vector) : CBC Encryption에 사용되는 초기 벡터 | ** Pad Length : Padding의 Length | ||
**Padding : Payload Data 와 Authentication Data를 구분하기 위한 패딩 | ** Next Header(8bit) : Payload의 Data Type 으로 TCP는 6, UDP는 17 | ||
**Pad Length : Padding의 Length | ** Authentication Data : authentication value. AH와는 달리 authentication service가 선택되었을 경우에만 존재한다. | ||
**Next Header(8bit) : Payload의 Data Type 으로 TCP는 6, UDP는 17 | |||
**Authentication Data : authentication value. AH와는 달리 authentication service가 선택되었을 경우에만 존재한다. | |||
===IKE(Internet key Exchange)=== | ===IKE(Internet key Exchange)=== | ||
* IPSec에서 키 교환에 사용되는 프로토콜 | |||
* UDP 500 포트를 사용한다. | |||
* 종류 | |||
*IPSec에서 키 교환에 사용되는 프로토콜 | ** Manual Key Exchange : 관리자가 수동으로 각 종단에 키를 설치해둠 | ||
*UDP 500 포트를 사용한다. | ** Simple Key Interchange : Sun Microsystems에서 제안. 표준으로 채택되지 않아 많이 사용하지 않음. 쉬운 구현이 장점. | ||
*종류 | ** Internet Security Association : 표준 채택 | ||
**Manual Key Exchange : 관리자가 수동으로 각 종단에 키를 설치해둠 | |||
**Simple Key Interchange : Sun Microsystems에서 제안. 표준으로 채택되지 않아 많이 사용하지 않음. 쉬운 구현이 장점. | |||
**Internet Security Association : 표준 채택 | |||
==2가지 동작 모드== | ==2가지 동작 모드== | ||
===전송 모드(Transport Mode)=== | ===전송 모드(Transport Mode)=== | ||
* 보호 범위 | |||
*보호 범위 | ** IP 패킷 전체를 보호하는 것이 아니라 IP 헤더를 제외한 IP 패킷의 페이로드(Payload)만을 보호 | ||
**IP 헤더를 제외한 IP 패킷의 페이로드(Payload)만을 보호 | ** IP 헤더는 암호화하지 않으므로 트래픽 경로는 노출된다. | ||
**IP 헤더는 암호화하지 않으므로 트래픽 경로는 노출된다. | * 보호 구간 | ||
*보호 구간 | ** 일반적으로 종단 노드(End Node) 구간의 IP 패킷 보호를 위해 사용한다. | ||
**일반적으로 종단 노드(End Node) 구간의 IP 패킷 보호를 위해 사용한다 | |||
===터널 모드(Tunneling Mode)=== | ===터널 모드(Tunneling Mode)=== | ||
* 보호 범위 | |||
** IP 패킷 전체를 보호하는 모드로 패킷 전체를 보호한다. | |||
** 암호화된 패킷에 IP 패킷에 IPSec 헤더를 추가하여 라우팅을 수행한다. | |||
** IPSec 헤더는 구간 간 이동에 대한 정보만 있으므로 종단 정보(출발지, 목적지)와 트래픽 경로는 보호된다. | |||
* 보호 구간 | |||
** 일반적으로 터널/보안 게이트웨이 구간 또는 종단 노드와 터널/보안 게이트웨이 구간의 IP 패킷 보호를 위해 사용한다. | |||
* | ==보안성== | ||
* | * 기밀성 : 메시지가 도청되어도 암호화되어 있어서 내용을 알 수 없다. | ||
* | * 비연결형 무결성 : [[메시지 인증 코드]]를 이용해 패킷별로 무결성을 검증한다. | ||
* | * 데이터 인증 : [[메시지 인증 코드]]를 이용해 올바른 송신자로부터 온 것임을 검증한다. | ||
* | * 재전송 공격 방지 : SA별로 일련번호를 유지하여 재전송 공격을 방지한다. | ||
* | * 접근 제어 | ||
* 제한된 트래픽 기밀성 | |||
** 터널링 모드일땐 원본 IP패킷 전체를 암호화하여 출발지 목적지의 기밀성을 유지할 수 있다. | |||
** 단 새로운 IP 헤더를 통해 게이트웨이 구간 정보는 노출된다. | |||
** 전송 모드 사용 시 데이터만 암호화되며 트래픽 흐름 기밀성은 제공되지 않는다. | |||
* | |||
* | |||
* | |||
* | |||