CentOS 7에서 IPSec VPN에 StrongSwan 사용

StrongSwan은 오픈 소스 IPsec 기반 VPN 솔루션입니다. Linux 커널의 기본 NETKEY IPsec 스택과 함께 IKEv1 및 IKEv2 키 교환 프로토콜을 모두 지원합니다. 이 튜토리얼에서는 strongSwan을 사용하여 CentOS 7에서 IPSec VPN 서버를 설정하는 방법을 보여줍니다.

strongSwan 설치

strongSwan 패키지는 EPEL (Extra Packages for Enterprise Linux) 저장소에서 사용 가능합니다. 먼저 EPEL을 활성화 한 다음 strongSwan을 설치해야합니다.

yum install http://ftp.nluug.nl/pub/os/Linux/distr/fedora-epel/7/x86_64/Packages/e/epel-release-7-11.noarch.rpm
yum install strongswan openssl

인증서 생성

VPN 클라이언트와 서버 모두 자신을 식별하고 인증하기위한 인증서가 필요합니다. 인증서를 생성하고 서명하기 위해 두 개의 쉘 스크립트를 준비했습니다. 먼저이 두 스크립트를 폴더에 다운로드합니다 /etc/strongswan/ipsec.d.

cd /etc/strongswan/ipsec.d
wget https://raw.githubusercontent.com/michael-loo/strongswan_config/for_vultr/server_key.sh
chmod a+x server_key.sh
wget https://raw.githubusercontent.com/michael-loo/strongswan_config/for_vultr/client_key.sh
chmod a+x client_key.sh

이 두 .sh파일에서 조직 이름을로 설정했습니다 VULTR-VPS-CENTOS. 당신이 그것을 변경하려면 열 .sh파일과 교체 O=VULTR-VPS-CENTOS와 함께 O=YOUR_ORGANIZATION_NAME.

그런 다음 server_key.sh서버의 IP 주소와 함께 사용 하여 서버의 인증 기관 (CA) 키와 인증서를 생성하십시오. SERVER_IPVultr VPS의 IP 주소로 교체하십시오 .

./server_key.sh SERVER_IP

클라이언트 키, 인증서 및 P12 파일을 생성하십시오. 여기에서는 VPN 사용자 "john"에 대한 인증서 및 P12 파일을 작성합니다.

./client_key.sh john john@gmail.com

스크립트를 실행하기 전에 "john"과 그의 이메일을 사용자 이메일로 바꾸십시오.

생성 된 클라이언트와 서버에 대한 인증서 후, 복사 /etc/strongswan/ipsec.d/john.p12/etc/strongswan/ipsec.d/cacerts/strongswanCert.pem로컬 컴퓨터입니다.

strongSwan 구성

strongSwan IPSec 구성 파일을여십시오.

vi /etc/strongswan/ipsec.conf

내용을 다음 텍스트로 바꾸십시오.

config setup
    uniqueids=never
    charondebug="cfg 2, dmn 2, ike 2, net 0"

conn %default
    left=%defaultroute
    leftsubnet=0.0.0.0/0
    leftcert=vpnHostCert.pem
    right=%any
    rightsourceip=172.16.1.100/16

conn CiscoIPSec
    keyexchange=ikev1
    fragmentation=yes
    rightauth=pubkey
    rightauth2=xauth
    leftsendcert=always
    rekey=no
    auto=add

conn XauthPsk
    keyexchange=ikev1
    leftauth=psk
    rightauth=psk
    rightauth2=xauth
    auto=add

conn IpsecIKEv2
    keyexchange=ikev2
    leftauth=pubkey
    rightauth=pubkey
    leftsendcert=always
    auto=add

conn IpsecIKEv2-EAP
    keyexchange=ikev2
    ike=aes256-sha1-modp1024!
    rekey=no
    leftauth=pubkey
    leftsendcert=always
    rightauth=eap-mschapv2
    eap_identity=%any
    auto=add

strongSwan 구성 파일을 편집하십시오 strongswan.conf.

vi /etc/strongswan/strongswan.conf

모든 것을 삭제하고 다음으로 교체하십시오.

charon {
    load_modular = yes
    duplicheck.enable = no
    compress = yes
    plugins {
            include strongswan.d/charon/*.conf
    }
    dns1 = 8.8.8.8
    dns2 = 8.8.4.4
    nbns1 = 8.8.8.8
    nbns2 = 8.8.4.4
}

include strongswan.d/*.conf

IPsec 비밀 파일을 편집하여 사용자 및 비밀번호를 추가하십시오.

vi /etc/strongswan/ipsec.secrets

사용자 계정 "john"을 추가하십시오.

: RSA vpnHostKey.pem
: PSK "PSK_KEY"
john %any : EAP "John's Password"
john %any : XAUTH "John's Password"

콜론 ':'의 양쪽에는 공백이 필요합니다.

IPv4 전달 허용

/etc/sysctl.confLinux 커널에서 전달을 허용하도록 편집하십시오 .

vi /etc/sysctl.conf

파일에 다음 줄을 추가하십시오.

net.ipv4.ip_forward=1

파일을 저장 한 다음 변경 사항을 적용하십시오.

sysctl -p

방화벽 구성

서버에서 VPN의 방화벽을 엽니 다.

firewall-cmd --permanent --add-service="ipsec"
firewall-cmd --permanent --add-port=4500/udp
firewall-cmd --permanent --add-masquerade
firewall-cmd --reload

VPN 시작

systemctl start strongswan
systemctl enable strongswan

이제 StrongSwan이 서버에서 실행 중입니다. strongswanCert.pem.p12인증서 파일을 클라이언트에 설치하십시오 . 이제 개인 네트워크에 가입 할 수 있습니다.

댓글 남기기

NTLite를 사용하여 업데이트로 Windows 사용자 지정 ISO를 만드는 방법

NTLite를 사용하여 업데이트로 Windows 사용자 지정 ISO를 만드는 방법

NTLite를 사용하여 Vultr 시스템과 호환되는 Windows 사용자 지정 ISO를 만드는 방법을 단계별로 설명합니다. 최신 드라이버와 업데이트 통합을 포함한 완벽 가이드.

Vultr에서 BGP 구성

Vultr에서 BGP 구성

Vultr BGP 설정을 위한 단계별 튜토리얼. ASN 할당부터 IP 라우팅 구성, BIRD 데몬 설정, FreeBSD 특이사항 및 실전 문제 해결 팁 7가지 포함한 최종 가이드

WsgiDAV를 사용하여 Debian 10에 WebDAV 배포

WsgiDAV를 사용하여 Debian 10에 WebDAV 배포

WebDAV (Web Distributed Authoring and Versioning)를 이용한 원격 파일 작성을 위한 프레임워크로, WsgiDAV 설치 및 구성 방법을 안내합니다.

데비안 7에 Mailcow 설치

데비안 7에 Mailcow 설치

Mailcow는 DoveCot, Postfix 및 기타 여러 오픈 소스 패키지를 기반으로 하는 경량 메일 서버입니다. 데비안에서 Mailcow 설치 방법을 안내합니다.

AI가 랜섬웨어 공격의 증가와 싸울 수 있습니까?

AI가 랜섬웨어 공격의 증가와 싸울 수 있습니까?

랜섬웨어 공격이 증가하고 있지만 AI가 최신 컴퓨터 바이러스를 처리하는 데 도움이 될 수 있습니까? AI가 답인가? AI boone 또는 bane인지 여기에서 읽으십시오.

ReactOS: 이것이 Windows의 미래입니까?

ReactOS: 이것이 Windows의 미래입니까?

오픈 소스이자 무료 운영 체제인 ReactOS가 최신 버전과 함께 제공됩니다. 현대 Windows 사용자의 요구 사항을 충족하고 Microsoft를 무너뜨릴 수 있습니까? 이 구식이지만 더 새로운 OS 환경에 대해 자세히 알아보겠습니다.

WhatsApp 데스크톱 앱 24*7을 통해 연결 유지

WhatsApp 데스크톱 앱 24*7을 통해 연결 유지

Whatsapp은 마침내 Mac 및 Windows 사용자용 데스크톱 앱을 출시했습니다. 이제 Windows 또는 Mac에서 Whatsapp에 쉽게 액세스할 수 있습니다. Windows 8 이상 및 Mac OS 10.9 이상에서 사용 가능

AI는 어떻게 프로세스 자동화를 다음 단계로 끌어올릴 수 있습니까?

AI는 어떻게 프로세스 자동화를 다음 단계로 끌어올릴 수 있습니까?

인공 지능이 소규모 회사에서 어떻게 인기를 얻고 있으며 어떻게 인공 지능이 성장할 가능성을 높이고 경쟁자가 우위를 점할 수 있는지 알아보려면 이 기사를 읽으십시오.

macOS Catalina 10.15.4 추가 업데이트로 인해 해결보다 더 많은 문제가 발생함

macOS Catalina 10.15.4 추가 업데이트로 인해 해결보다 더 많은 문제가 발생함

최근 Apple은 문제를 해결하기 위해 macOS Catalina 10.15.4 추가 업데이트를 출시했지만 이 업데이트로 인해 Mac 컴퓨터의 브릭킹으로 이어지는 더 많은 문제가 발생하는 것 같습니다. 자세히 알아보려면 이 기사를 읽어보세요.

빅데이터의 13가지 상용 데이터 추출 도구

빅데이터의 13가지 상용 데이터 추출 도구

빅데이터의 13가지 상용 데이터 추출 도구