Linux 커널의 IPsec

Linux 커널의 IPsec

IPsec의 Linux 커널 구현 및 사용자 공간 인터페이스와 관련된 몇 가지 문제(질문)가 있습니다.

  1. 가장 큰 질문은 Linux 커널 IPsec 구현을 위한 실제 공식 프로젝트가 무엇인지입니다. 내가 이해한 바에 따르면 구현은 Kame 프로젝트의 포크이지만 친구는 이것이 사실이 아니라고 말했습니다. 공식 웹사이트와 저장소는 어느 것입니까?
  2. 커널 문서 소스의 어디에서 관련 참고 사항을 찾을 수 있습니까?
  3. 어떤 사용자 공간 프런트엔드가 주로 사용됩니까? ip-tools 또는 iproute2 패키지? 이 두 가지 접근 방식이 동일합니까, 아니면 둘 중 하나가 더 큰 오버헤드를 가지고 있습니까?
  4. 내가 본 바로는 iproute2 IPsec 전송 모드에 대한 튜토리얼은 구성 파일을 로드하기 위한 "setkey" 유틸리티와 관련이 있습니다. "setkey"가 실제로 iproute2 패키지에 사용됩니까, 아니면 제가 오해한 것입니까? "setkey"가 ip-tools의 "racoon"에 붙어 있습니까, 아니면 구성 로딩을 위한 일반 애플리케이션입니까? "setkey"는 실제로 무엇을 합니까(저는 이것에 대해 매우 혼란스럽습니다)?

답변1

  1. 2.6(NETKEY) 이후 Linux 커널에 통합된 IPsec 스택은 원래 KAME 스택(적어도 API와 관련하여)을 기반으로 했습니다. 소스 코드는 다음의 일부입니다.커널 저장소net/xfrm, Netlink/XFRM 구성 인터페이스 구현을 포함하여 주요 구성 요소가 폴더에 있습니다 . 대안과표준화된(그러나 다소 확장됨) PF_KEYv2 인터페이스 구현은 폴더에 있습니다 net/key.
  2. 문서가 많지 않습니다. 하지만 Documentation/networking폴더를 확인해보세요.
  3. IPsec SA 및 정책을 수동으로 구성하는 경우(수동 키잉) 권장합니다.iproute2. 더 강력한 Netlink/XFRM 인터페이스를 사용하며 패키지는 기본적으로 대부분의 배포판에서 설치됩니다. 그러나 일반적으로 사용자 영역에서 제공하는 자동 키잉을 사용합니다.이케StrongSwan, Open/libreswan 또는 racoon(ipsec-tools)과 같은 데몬을 사용하면 SA 및 정책을 수동으로 설치할 필요가 없으며 IKE 중에 Diffie-Hellman을 통해 임시 암호화/무결성 키가 설정됩니다. 키 재설정이라고 하는 새 키의 정기적인 자동 협상도 가능합니다.
  4. setkey에 의해 제공됩니다IPsec 도구수동 키잉용 패키지는 해당 패키지와 관련이 없습니다.iproute2패키지. 와 함께iproute2ip xfrmSA와 정책을 수동으로 구성하려면 이 명령을 사용합니다 . 두 명령 모두 SAD 및 SPD와 직접 상호 작용합니다(참조:RFC 4301)를 커널에서 IPsec SA 및 정책을 수동으로 관리합니다. setkey, racoon기타 BSD 기반 도구와 마찬가지로 PF_KEYv2 인터페이스를 사용하므로 ip xfrm명령보다 강력하지 않습니다. 예를 들어 확장된 시퀀스 번호 또는 표시는 Linux에서 PF_KEYv2를 사용하여 구성할 수 없습니다.

관련 정보