IPv4over IPv6를 구성하는 VPN 터널
4099 단어 IPv4OverIPv6AWSstrongswan
구조도
터미널 A와 터미널 B가 통신할 수 있도록 스트롱스완 A와 스트롱스완 B 두 기계에 IPSec 터널을 가설한다.이번 구성례에서 VPCA(172.31.0.0/16)와 Subnet B-1(192.168.0.0/24)에 속하는 단말기는 서로 자유롭게 연결할 수 있다.
생성 과정
초기 설정
# OSの初期アップデート
sudo apt update
sudo apt upgrade -y
# strongSwanとswanctlのインストール
sudo apt install strongswan strongswan-swanctl -y
# インターフェース間のパケット転送を許可
echo "net.ipv4.ip_forward = 1" | sudo tee -a /etc/sysctl.conf
sudo sysctl -p
swanctl을 이용하기 위해, charon.conf의 start-scripts에 다음 내용을 추가합니다.
/etc/strongswan.d/charon.confcharon {
(省略)
start-scripts {
swanctl = /usr/sbin/swanctl -q
}
(省略)
}
또한 시스템이strongSwan을 시작할 수 있도록 프로필을 만듭니다.
/etc/systemd/system/strongswan.service[Unit]
Description=strongSwan
[Service]
Type=forking
ExecStart=/usr/sbin/ipsec start
ExecStop=/usr/sbin/ipsec stop
[Install]
WantedBy=multi-user.target
sudo systemctl start strongswan
sudo systemctl enable strongswan
연결 설정
다음은 strongSwanA의 설정입니다.strongSwanb를 설정할 때 자신과 연결 목표의 표식을 교체해야 합니다.
/etc/swanctl/conf.d/connection.confconnections {
net-net {
local_addrs = XXXX:XXXX::10 #自身(strongSwanA)のIPv6アドレス
remote_addrs = YYYY:YYYY::10 #接続先(strongSwanB)のIPv6アドレス
local {
auth = psk
id = XXXX:XXXX::10 #自身(strongSwanA)のIPv6アドレス
}
remote {
auth = psk
id = YYYY:YYYY::10 #接続先(strongSwanB)のIPv6アドレス
}
children {
net-net {
local_ts = 172.31.0.0/16 #自身(strongSwanA)側のCIDR
remote_ts = 192.168.0.0/24 #接続先(strongSwanB)側のCIDR
esp_proposals = aes128-sha256-x25519
}
}
version = 2
mobike = no
proposals = aes128-sha256-x25519
}
}
secrets {
ike-1 {
id = XXXX:XXXX::10 #自身(strongSwanA)のIPv6アドレス
secret = "pre-shared-key-password"
}
}
참조: https://www.strongswan.org/testing/testresults/ipv6/net2net-ip4-in-ip6-ikev2/
VPN 세션 설정
이번에는 strong SwanA부터 strong SwanB까지 세션을 진행한다.먼저 strongSwanB에서 설정을 가져오려면 strongSwan을 다시 시작합니다.로그를 보려면 sudo swanctl --log
를 수행합니다.이 명령을 실행하면 로그를 실시간으로 볼 수 있습니다.
strongSwanBsudo systemctl restart strongswan
sudo swanctl --log
그런 다음 strongSwana 측면에서 설정을 읽고 VPN 세션을 확장합니다.
strongSwanAsudo systemctl restart strongswan
sudo swanctl -i -c net-net
AWS 측면 설정
이전 설정에서 핑은 strongSwanA와 strongSwanB 사이를 통과해야 합니다.터미널 A와 터미널 B 사이의 연결을 위해서는 AWS 측에서 대상 검사 및 루트 테이블을 비활성화해야 합니다.
미해결 이벤트
운영체제가 재부팅될 때 다음 로그가 표시됩니다. strongSwan은 시작할 수 없습니다.systemctl restart strongswan
고칠 수 있으니 우선 방치하라. systemd[1]: Starting strongSwan...
ipsec[529]: Starting strongSwan 5.8.2 IPsec [starter]...
ipsec_starter[529]: Starting strongSwan 5.8.2 IPsec [starter]...
ipsec[529]: starter is already running (/var/run/starter.charon.pid exists) -- no fork done
ipsec_starter[529]: starter is already running (/var/run/starter.charon.pid exists) -- no fork done
ipsec[545]: Stopping strongSwan IPsec...
systemd[1]: strongswan.service: Succeeded.
systemd[1]: Started strongSwan.
참조 사이트
IPv6 Configuration Examples - strongSwan
swanctl - strongSwan
Reference
이 문제에 관하여(IPv4over IPv6를 구성하는 VPN 터널), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/kerorinfather/items/37aec492f04706d55ade
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
# OSの初期アップデート
sudo apt update
sudo apt upgrade -y
# strongSwanとswanctlのインストール
sudo apt install strongswan strongswan-swanctl -y
# インターフェース間のパケット転送を許可
echo "net.ipv4.ip_forward = 1" | sudo tee -a /etc/sysctl.conf
sudo sysctl -p
charon {
(省略)
start-scripts {
swanctl = /usr/sbin/swanctl -q
}
(省略)
}
[Unit]
Description=strongSwan
[Service]
Type=forking
ExecStart=/usr/sbin/ipsec start
ExecStop=/usr/sbin/ipsec stop
[Install]
WantedBy=multi-user.target
sudo systemctl start strongswan
sudo systemctl enable strongswan
connections {
net-net {
local_addrs = XXXX:XXXX::10 #自身(strongSwanA)のIPv6アドレス
remote_addrs = YYYY:YYYY::10 #接続先(strongSwanB)のIPv6アドレス
local {
auth = psk
id = XXXX:XXXX::10 #自身(strongSwanA)のIPv6アドレス
}
remote {
auth = psk
id = YYYY:YYYY::10 #接続先(strongSwanB)のIPv6アドレス
}
children {
net-net {
local_ts = 172.31.0.0/16 #自身(strongSwanA)側のCIDR
remote_ts = 192.168.0.0/24 #接続先(strongSwanB)側のCIDR
esp_proposals = aes128-sha256-x25519
}
}
version = 2
mobike = no
proposals = aes128-sha256-x25519
}
}
secrets {
ike-1 {
id = XXXX:XXXX::10 #自身(strongSwanA)のIPv6アドレス
secret = "pre-shared-key-password"
}
}
sudo systemctl restart strongswan
sudo swanctl --log
sudo systemctl restart strongswan
sudo swanctl -i -c net-net
이전 설정에서 핑은 strongSwanA와 strongSwanB 사이를 통과해야 합니다.터미널 A와 터미널 B 사이의 연결을 위해서는 AWS 측에서 대상 검사 및 루트 테이블을 비활성화해야 합니다.
미해결 이벤트
운영체제가 재부팅될 때 다음 로그가 표시됩니다. strongSwan은 시작할 수 없습니다.systemctl restart strongswan
고칠 수 있으니 우선 방치하라. systemd[1]: Starting strongSwan...
ipsec[529]: Starting strongSwan 5.8.2 IPsec [starter]...
ipsec_starter[529]: Starting strongSwan 5.8.2 IPsec [starter]...
ipsec[529]: starter is already running (/var/run/starter.charon.pid exists) -- no fork done
ipsec_starter[529]: starter is already running (/var/run/starter.charon.pid exists) -- no fork done
ipsec[545]: Stopping strongSwan IPsec...
systemd[1]: strongswan.service: Succeeded.
systemd[1]: Started strongSwan.
참조 사이트
IPv6 Configuration Examples - strongSwan
swanctl - strongSwan
Reference
이 문제에 관하여(IPv4over IPv6를 구성하는 VPN 터널), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/kerorinfather/items/37aec492f04706d55ade
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
systemd[1]: Starting strongSwan...
ipsec[529]: Starting strongSwan 5.8.2 IPsec [starter]...
ipsec_starter[529]: Starting strongSwan 5.8.2 IPsec [starter]...
ipsec[529]: starter is already running (/var/run/starter.charon.pid exists) -- no fork done
ipsec_starter[529]: starter is already running (/var/run/starter.charon.pid exists) -- no fork done
ipsec[545]: Stopping strongSwan IPsec...
systemd[1]: strongswan.service: Succeeded.
systemd[1]: Started strongSwan.
IPv6 Configuration Examples - strongSwan
swanctl - strongSwan
Reference
이 문제에 관하여(IPv4over IPv6를 구성하는 VPN 터널), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/kerorinfather/items/37aec492f04706d55ade텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)