4.6. Libreswan을 사용하여 VPN(Virtual Private Network) 보안


Red Hat Enterprise Linux 7에서는 Libreswan 애플리케이션에서 지원하는 IPsec 프로토콜을 사용하여VPN( Virtual Private Network )을 구성할 수 있습니다. LibreswanOpenswan 애플리케이션에 대한 연속이며, Openswan 문서의 많은 예제는 Libreswan 과 교환 가능합니다. NetworkManager IPsec 플러그인을 NetworkManager-libreswan 이라고 합니다. GNOME Shell 사용자는 NetworkManager-libreswan-gnome 패키지를 설치해야 하며 NetworkManager-libreswan 을 종속성으로 사용해야 합니다. NetworkManager-libreswan-gnome 패키지는 선택적 채널에서만 사용할 수 있습니다. 추가 리포지토리 활성화 및 선택적 리포지토리를 참조하십시오.
VPN용 IPsec 프로토콜은 자체적으로 인터넷 키 교환 (IKE) 프로토콜을 사용하여 구성됩니다. IPsec과 IKE라는 용어는 서로 바꿔 사용할 수 있습니다. IPsec VPN은 IKE VPN, IKEv2 VPN, XAUTH VPN, Cisco VPN 또는 IKE/IPsec VPN이라고도 합니다. L2TP( Level 2 Tunneling Protocol )을 사용하는 IPsec VPN 변형은 일반적으로 선택적 채널 xl2tpd 애플리케이션이 필요한 L2TP/IPsec VPN이라고 합니다.
Libreswan 은 Red Hat Enterprise Linux 7에서 사용 가능한 오픈 소스 사용자 공간 IKE 구현입니다. IKE 버전 1 및 2는 사용자 수준 데몬으로 구현됩니다. 또한IKE 프로토콜 자체도 암호화되어 있습니다. IPsec 프로토콜은 Linux 커널에 의해 구현되며 Libreswan 은 VPN 터널 구성을 추가 및 제거하도록 커널을 설정합니다.
IKE 프로토콜은 UDP 포트 500 및 4500을 사용합니다. IPsec 프로토콜은 프로토콜 번호 50이 있고, 프로토콜 번호 51인 인증된 헤더 (AH)와 프로토콜 번호 51인 Encapsulated Security Payload (ESP)라는 두 가지 프로토콜로 구성됩니다. AH 프로토콜은 사용하지 않는 것이 좋습니다. AH 사용자는 null 암호화를 사용하여 ESP 로 마이그레이션하는 것이 좋습니다.
IPsec 프로토콜에는 터널 모드(기본값) 및 전송 모드 의 두 가지 작동 모드가 있습니다. IKE 없이 IPsec을 사용하여 커널을 구성할 수 있습니다. 이를 Manual Keying이라고 합니다. ip xfrm 명령을 사용하여 수동 키 처리를 설정할 수 있지만 보안상의 이유로 강력히 권장되지 않습니다. netlink를 사용하여 Linux 커널과 Libreswan 인터페이스. 패킷 암호화 및 암호 해독은 Linux 커널에서 수행됩니다.
LibreswanNSS( Network Security Services ) 암호화 라이브러리를 사용합니다. libreswan 및 NSS는 모두 Federal Information Processing Standard (FIPS)PublicationRuntimeConfig와 함께 사용하도록 인증되었습니다.
중요
Libreswan 및 Linux 커널에서 구현되는 IKE/IPsec VPN은 Red Hat Enterprise Linux 7에서 사용할 수 있는 유일한 VPN 기술입니다. 이러한 위험에 대해 이해하지 않고 다른 VPN 기술을 사용하지 마십시오.

4.6.1. Libreswan 설치

Libreswan 을 설치하려면 root 로 다음 명령을 입력합니다.
~]# yum install libreswan
Copy to Clipboard
Libreswan 이 설치되어 있는지 확인하려면 다음을 수행하십시오.
~]$ yum info libreswan
Copy to Clipboard
Libreswan 의 새 설치 후 설치 프로세스의 일부로 NSS 데이터베이스를 초기화해야 합니다. 새 데이터베이스를 시작하기 전에 다음과 같이 이전 데이터베이스를 제거합니다.Before you start a new database, remove the old database as follows:
~]# systemctl stop ipsec
~]# rm /etc/ipsec.d/*db
Copy to Clipboard
그런 다음 새 NSS 데이터베이스를 초기화하려면 root 로 다음 명령을 입력합니다.
~]# ipsec initnss
Initializing NSS database
Copy to Clipboard
FIPS 모드에서만 작동하는 경우에만 NSS 데이터베이스를 암호로 보호해야 합니다. 이전 명령 대신 FIPS 모드의 데이터베이스를 초기화하려면 다음을 사용합니다.
~]# certutil -N -d sql:/etc/ipsec.d
Enter a password which will be used to encrypt your keys.
The password should be at least 8 characters long,
and should contain at least one non-alphabetic character.

Enter new password:
Re-enter password:
Copy to Clipboard
Libreswan 에서 제공하는 ipsec 데몬을 시작하려면 root 로 다음 명령을 실행합니다.
~]# systemctl start ipsec
Copy to Clipboard
데몬이 현재 실행 중인지 확인하려면 다음을 수행하십시오.
~]$ systemctl status ipsec
* ipsec.service - Internet Key Exchange (IKE) Protocol Daemon for IPsec
   Loaded: loaded (/usr/lib/systemd/system/ipsec.service; disabled; vendor preset: disabled)
   Active: active (running) since Sun 2018-03-18 18:44:43 EDT; 3s ago
     Docs: man:ipsec(8)
           man:pluto(8)
           man:ipsec.conf(5)
  Process: 20358 ExecStopPost=/usr/sbin/ipsec --stopnflog (code=exited, status=0/SUCCESS)
  Process: 20355 ExecStopPost=/sbin/ip xfrm state flush (code=exited, status=0/SUCCESS)
  Process: 20352 ExecStopPost=/sbin/ip xfrm policy flush (code=exited, status=0/SUCCESS)
  Process: 20347 ExecStop=/usr/libexec/ipsec/whack --shutdown (code=exited, status=0/SUCCESS)
  Process: 20634 ExecStartPre=/usr/sbin/ipsec --checknflog (code=exited, status=0/SUCCESS)
  Process: 20631 ExecStartPre=/usr/sbin/ipsec --checknss (code=exited, status=0/SUCCESS)
  Process: 20369 ExecStartPre=/usr/libexec/ipsec/_stackmanager start (code=exited, status=0/SUCCESS)
  Process: 20366 ExecStartPre=/usr/libexec/ipsec/addconn --config /etc/ipsec.conf --checkconfig (code=exited, status=0/SUCCESS)
 Main PID: 20646 (pluto)
   Status: "Startup completed."
   CGroup: /system.slice/ipsec.service
           └─20646 /usr/libexec/ipsec/pluto --leak-detective --config /etc/ipsec.conf --nofork
Copy to Clipboard
Libreswan 이 시스템을 시작할 때 시작되도록 하려면 root 로 다음 명령을 실행합니다.
~]# systemctl enable ipsec
Copy to Clipboard
ipsec 서비스를 허용하도록 모든 중간 및 호스트 기반 방화벽을 구성합니다. 방화벽에 대한 정보는 5장. 방화벽 사용 를 참조하십시오. 특정 서비스를 통과할 수 있도록 허용하십시오. Libreswan 에서 다음 패킷을 허용하도록 방화벽이 필요합니다.
  • 인터넷 키 교환 (IKE) 프로토콜용 UDP 포트 500 및 4500
  • 프로토콜 50: Encapsulated Security Payload (ESP) IPsec 패킷
  • 인증된 헤더 (AH) IPsec 패킷의 경우 프로토콜 51
Libreswan 을 사용하여 IPsec VPN을 설정하는 방법에 대한 세 가지 예를 제공합니다. 첫 번째 예는 두 개의 호스트를 함께 연결하여 안전하게 통신할 수 있도록 하는 것입니다. 두 번째 예는 두 사이트를 함께 연결하여 하나의 네트워크를 구성하는 것입니다. 세 번째 예는이 컨텍스트에서 대행사로 알려진 원격 사용자를 지원하는 것입니다.
맨 위로 이동
Red Hat logoGithubredditYoutubeTwitter

자세한 정보

평가판, 구매 및 판매

커뮤니티

Red Hat 문서 정보

Red Hat을 사용하는 고객은 신뢰할 수 있는 콘텐츠가 포함된 제품과 서비스를 통해 혁신하고 목표를 달성할 수 있습니다. 최신 업데이트를 확인하세요.

보다 포괄적 수용을 위한 오픈 소스 용어 교체

Red Hat은 코드, 문서, 웹 속성에서 문제가 있는 언어를 교체하기 위해 최선을 다하고 있습니다. 자세한 내용은 다음을 참조하세요.Red Hat 블로그.

Red Hat 소개

Red Hat은 기업이 핵심 데이터 센터에서 네트워크 에지에 이르기까지 플랫폼과 환경 전반에서 더 쉽게 작업할 수 있도록 강화된 솔루션을 제공합니다.

Theme

© 2025 Red Hat