Saya mencoba mengatur koneksi IPSec VPN antara jaringan perusahaan kami dan Cloud Privat Amazon, menggunakan sistem VPN mereka dan server Linux. Sayangnya, satu-satunya panduan yang saya temukan membahas cara mengatur terowongan menggunakan mesin Linux host dan mendapatkan mesin linux itu untuk mengakses instance VPC, tetapi tidak ada diskusi yang dapat saya temukan online tentang cara mendapatkan instance untuk mengakses jaringan perusahaan (atau sisa internet melalui jaringan itu).
Informasi jaringan
Local subnet: 10.3.0.0/25
Remote subnet: 10.4.0.0/16
Tunnel 1:
Outside IP Addresses:
- Customer Gateway: : 199.167.xxx.xxx
- VPN Gateway : 205.251.233.121
Inside IP Addresses
- Customer Gateway : 169.254.249.2/30
- VPN Gateway : 169.254.249.1/30
Tunnel 2:
Outside IP Addresses:
- Customer Gateway: : 199.167.xxx.xxx
- VPN Gateway : 205.251.233.122
Inside IP Addresses
- Customer Gateway : 169.254.249.6/30
- VPN Gateway : 169.254.249.5/30
Inilah /etc/ipsec-tools.conf saya:
flush;
spdflush;
spdadd 169.254.249.2/30 169.254.249.1/30 any -P out ipsec
esp/tunnel/199.167.xxx.xxx-205.251.233.121/require;
spdadd 169.254.249.1/30 169.254.249.2/30 any -P in ipsec
esp/tunnel/205.251.233.121-199.167.xxx.xxx/require;
spdadd 169.254.249.6/30 169.254.249.5/30 any -P out ipsec
esp/tunnel/199.167.xxx.xxx-205.251.233.122/require;
spdadd 169.254.249.5/30 169.254.249.6/30 any -P in ipsec
esp/tunnel/205.251.233.122-199.167.xxx.xxx/require;
spdadd 169.254.249.2/30 10.4.0.0/16 any -P out ipsec
esp/tunnel/199.167.xxx.xxx-205.251.233.121/require;
spdadd 10.4.0.0/16 169.254.249.2/30 any -P in ipsec
esp/tunnel/205.251.233.121-199.167.xxx.xxx/require;
spdadd 169.254.249.6/30 10.4.0.0/16 any -P out ipsec
esp/tunnel/199.167.xxx.xxx-205.251.233.122/require;
spdadd 10.4.0.0/16 169.254.249.6/30 any -P in ipsec
esp/tunnel/205.251.233.122-199.167.xxx.xxx/require;
Inilah /etc/racoon/racoon.conf saya:
remote 205.251.233.122 {
exchange_mode main;
lifetime time 28800 seconds;
proposal {
encryption_algorithm aes128;
hash_algorithm sha1;
authentication_method pre_shared_key;
dh_group 2;
}
generate_policy off;
}
remote 205.251.233.121 {
exchange_mode main;
lifetime time 28800 seconds;
proposal {
encryption_algorithm aes128;
hash_algorithm sha1;
authentication_method pre_shared_key;
dh_group 2;
}
generate_policy off;
}
sainfo address 169.254.249.2/30 any address 169.254.249.1/30 any {
pfs_group 2;
lifetime time 3600 seconds;
encryption_algorithm aes128;
authentication_algorithm hmac_sha1;
compression_algorithm deflate;
}
sainfo address 169.254.249.6/30 any address 169.254.249.5/30 any {
pfs_group 2;
lifetime time 3600 seconds;
encryption_algorithm aes128;
authentication_algorithm hmac_sha1;
compression_algorithm deflate;
}
BGP bekerja dengan baik, jadi saya tidak akan memposting konfigurasi tersebut.
Inilah yang berhasil
- Dari kotak Linux, saya bisa melakukan ping titik akhir lokal (169.254.249.2/169.254.249.6), dan setara jarak jauh mereka (169.254.249.1/169.254.249.5).
- Saya juga bisa ping instans di VPC, SSH ke mereka, dll.
- Dari instance jarak jauh di VPC, saya bisa melakukan ping titik akhir lokal dan jarak jauh juga
- Saya tidak bisa melakukan ping ke server lokal pada subnet 10.3.0.0/25
Saya berasumsi saya kehilangan sesuatu yang sederhana, tetapi saya sudah mencoba menambahkan entri ke ipsec-tools.conf untuk mencerminkan {endpoint lokal} <-> {subnet jarak jauh}, menggunakan {subnet lokal} <-> {endpoint jarak jauh}, tapi sepertinya itu tidak berhasil.
Ketika saya melakukan ping dari {remote instance} ke {server lokal}, ping habis. Paket-paket terlihat pada antarmuka eth0 (meskipun jaringan lokal pada eth1).
Google tidak banyak membantu; itu menunjukkan hanya orang yang mencoba menggunakan OpenSwan, atau memiliki masalah serupa tetapi dengan router perangkat keras, atau menggunakan alat yang lebih tua.