본문 바로가기

IT 공부

IPSec(IP Security)란?

반응형

IPSec(IP Security)란?

IPSec(Internet Protocol Security)은 인터넷 프로토콜(IP) 통신을 보호하기 위한 보안 프로토콜이에요. 네트워크 계층(Layer 3)에서 데이터를 암호화하고 인증하여 보안이 강화된 통신을 가능하게 해줍니다.

IP 기반 통신을 보호하는 프로토콜
암호화 및 인증을 통해 데이터 무결성 보장
VPN, 원격 접속, 보안 네트워크 통신에 사용됨


1. IPSec의 주요 기능

IPSec은 주로 **VPN(Virtual Private Network)**을 구축할 때 사용되며, 다음과 같은 기능을 제공합니다.

🔹 데이터 기밀성(Encryption) → 데이터를 암호화하여 외부에서 볼 수 없도록 보호
🔹 데이터 무결성(Integrity) → 데이터가 전송 중 변경되지 않았음을 보장
🔹 인증(Authentication) → 송신자와 수신자가 신뢰할 수 있는 사용자인지 확인
🔹 재전송 방지(Anti-replay) → 동일한 패킷이 반복적으로 전송되는 것을 방지


2. IPSec의 구성 요소

(1) 보안 프로토콜

IPSec은 두 가지 주요 프로토콜을 사용해 데이터를 보호해요.

AH(Authentication Header) → 인증과 무결성 보장 (암호화 X)
ESP(Encapsulating Security Payload) → 암호화 + 인증 제공

프로토콜암호화무결성 검사IP 헤더 보호

AH ❌ 없음 ✅ 있음 ✅ 보호
ESP ✅ 있음 ✅ 있음 ❌ 보호 안됨

대부분의 경우 ESP가 더 많이 사용돼요, 왜냐하면 암호화까지 제공하기 때문이에요.


(2) IPSec 동작 모드

전송 모드(Transport Mode)

  • IP 패킷의 페이로드(데이터)만 보호
  • 종단 간 통신(예: 서버 간 보안 통신)에 사용됨
  • AH 또는 ESP 헤더가 원래 IP 헤더 뒤에 추가됨

터널 모드(Tunnel Mode)

  • 전체 IP 패킷을 암호화하여 새로운 IP 헤더를 붙임
  • VPN 터널링 및 게이트웨이 간 통신에서 사용됨
  • IPSec VPN에서 가장 일반적으로 사용됨

3. IPSec의 동작 과정

1) 키 교환 및 보안 연결(Phase 1)

🔹 IKE(Internet Key Exchange) 프로토콜을 사용하여 암호화 키를 공유하고 인증
🔹 인증 방식: 예제 – 사전 공유 키(Pre-Shared Key), 디지털 서명, 인증서(X.509)
🔹 SA(Security Association) 설정 → 보안 정책을 정하고 세션 생성

2) 데이터 보호(Phase 2)

🔹 ESP 또는 AH를 사용하여 패킷을 암호화하고 인증 수행
🔹 트래픽이 안전하게 전달됨


4. IPSec과 VPN

IPSec은 **VPN(가상 사설망)**을 구축할 때 많이 사용돼요.
Site-to-Site VPN → 회사 간의 네트워크 연결
Remote Access VPN → 원격 근무자가 사내 네트워크에 안전하게 접속


5. IPSec 설정 예시 (리눅스 StrongSwan VPN 예제)

bash
복사편집
# IPSec 설정 파일 (ipsec.conf) config setup charondebug="ike 2, knl 2, cfg 2" conn myvpn auto=start left=192.168.1.1 # 로컬 VPN 게이트웨이 right=203.0.113.1 # 원격 VPN 서버 authby=secret ike=aes256-sha2_256-modp2048 esp=aes256-sha2_256

AES-256 암호화 사용
VPN 게이트웨이 간 보안 터널 구축


6. IPSec의 장점과 단점

장점

강력한 보안 → 네트워크 계층에서 암호화 및 인증 제공
VPN 지원 → 원격 접속과 네트워크 간 안전한 연결
유연성 → 다양한 암호화 알고리즘과 인증 방법 지원

단점

설정이 복잡함 → 키 교환, SA 설정 등 구성이 어려울 수 있음
네트워크 속도 저하 → 암호화/복호화 과정에서 성능 저하 가능
방화벽 문제 발생 가능 → 일부 네트워크 환경에서 IPSec 트래픽 차단 가능


7. 결론

IPSec은 강력한 보안을 제공하는 네트워크 계층 보안 프로토콜로, VPN과 안전한 네트워크 통신에 필수적으로 사용돼요. 설정이 다소 복잡할 수 있지만, 데이터 암호화, 인증, 무결성 보장 기능을 제공하여 기업 및 공공기관에서 널리 사용되고 있어요. 🚀

728x90