คำอธิบาย
ฉันยังใหม่กับ Strongswan และฉันต้องการตั้งค่า Strongswan ใน นักรบข้างถนน การกำหนดค่า
ของฉัน ดวงจันทร์
เครือข่ายคือ AWS VPC พร้อมบล็อก CIDR 172.31.0.0/16
ภายในเครือข่ายนั้น เกตเวย์ VPN ของฉันคืออินสแตนซ์ EC2 ที่อยู่บนซับเน็ตสาธารณะที่มี IP สาธารณะ X.X.X.X
บนเครือข่ายดวงจันทร์ฉันมีเซิร์ฟเวอร์ HTTP พร้อม IP 172.31.X.X
ฟังคำขอที่พอร์ต 80
ของฉัน แครอล
โฮสต์ยังเป็นอินสแตนซ์ EC2 ที่อยู่ใน VPC อื่นที่มี CIDR 10.0.0.0/16 เดอะ แครอล
โฮสต์ยังอยู่ในซับเน็ตสาธารณะที่มี IP สาธารณะ ปปปป
ฉันชอบของฉัน แครอล
โฮสต์เพื่อส่งคำขอ HTTP ไปยังเซิร์ฟเวอร์ HTTP ของฉันใน ดวงจันทร์
เครือข่าย
ฉันสามารถโหลดและเริ่มต้นได้ บันทึกแสดงข้อความที่สำเร็จทั้งในเซิร์ฟเวอร์และไคลเอนต์
อย่างไรก็ตามเมื่อฉันวิ่ง ขด 172.31.XX
จากโฮสต์แครอล คำสั่งค้าง ฉันพยายามจับแพ็กเก็ตบน แครอล
เจ้าภาพด้วย tcpdump
แต่ไม่มีอะไรปรากฏขึ้นอย่างแน่นอน ดังนั้นฉันเดาว่าไม่มีการจราจรออกจาก แครอล
โฮสต์ (สิ่งเดียวกันเกิดขึ้นเมื่อใช้ ปิง - ฉัน
).
ปัญหา
เหตุใดทราฟฟิกจึงดูเหมือนจะไม่ออกจากไคลเอ็นต์ (แครอล
เจ้าภาพ) ?
วิธีตรวจสอบว่า Strongswan สามารถส่งต่อ/อุโมงค์การรับส่งข้อมูลจาก แครอล
โฮสต์ไปยังเซิร์ฟเวอร์ HTTP ?
การกำหนดค่าทางเทคนิค
เครื่องจักร
อินสแตนซ์ EC2 (จัดการโดย Cloud9) ที่ใช้งาน AmazonLinux 2
กลุ่มรักษาความปลอดภัยได้รับการตรวจสอบและกฎการเข้าอนุญาตเพียงพอ
สวอน
StrongSwan เวอร์ชัน 5.9.5 สำหรับทั้งไคลเอนต์และเซิร์ฟเวอร์ที่ติดตั้งจากแหล่งที่มาโดยใช้
./configure --prefix=/usr --sysconfdir=/ฯลฯ
ทำ
sudo ทำการติดตั้ง
แครอล
การกำหนดค่า
การเชื่อมต่อ {
บ้าน {
remote_addrs = X.X.X.X
ท้องถิ่น {
auth = คีย์ Pub
ใบรับรอง = carolCert.pem
id = [email protected]
}
ระยะไกล {
auth = คีย์ Pub
id = moon.strongswan.org
}
เด็ก {
บ้าน {
remote_ts = 172.31.0.0/16
start_action = เริ่ม
}
}
}
}
ดวงจันทร์
การกำหนดค่า
การเชื่อมต่อ {
rw {
ท้องถิ่น {
auth = คีย์ Pub
certs = moonCert.pem
id = moon.strongswan.org
}
ระยะไกล {
auth = คีย์ Pub
}
เด็ก {
rw {
local_ts = 172.31.0.0/16
remote_ts = 10.0.0.0/16
}
}
}
}
ผลลัพธ์ของ sudo swanctl -- เริ่มต้น -- บ้านเด็ก
จาก แครอล
[IKE] สร้างบ้าน CHILD_SA{3}
[ENC] กำลังสร้างคำขอ CREATE_CHILD_SA 3 [ SA No TSi TSr ]
[NET] ส่งแพ็คเก็ต: จาก 10.0.22.27[4500] ถึง X.X.X.X[4500] (304 ไบต์)
[NET] ได้รับแพ็กเก็ต: จาก X.X.X.X[4500] ถึง 10.0.22.27[4500] (192 ไบต์)
[ENC] แยกวิเคราะห์การตอบสนอง CREATE_CHILD_SA 3 [ SA No TSi TSr ]
[CFG] ข้อเสนอที่เลือก: ESP:AES_GCM_16_128
[IKE] CHILD_SA home{3} สร้างด้วย SPI z9777de6_i z67c5f90_o และ TS 10.0.22.27/32 === 172.31.0.0/16
เริ่มต้นเสร็จเรียบร้อยแล้ว
เปิดตาราง IP แครอล
เจ้าภาพ :
ผู้ดูแลระบบ:~/environment $ sudo ip route แสดงตาราง 220
172.31.0.0/16 ผ่าน 10.0.16.1 dev eth0 โปรโตสแตติก src 10.0.22.27