Openswan เชื่อมต่อกับเครือข่ายย่อยทางขวาหลายอันไม่ทำงาน


14

ฉันพยายามใช้ Openswan (เวอร์ชัน 2.6.37) เพื่อเชื่อมต่อ IPsec VPN จากเครือข่ายท้องถิ่นของฉันไปยังไซต์ระยะไกล ทุกอย่างทำงานได้ดีเมื่อฉันต้องการเชื่อมต่อกับซับเน็ตเดียวบนไซต์ระยะไกล อย่างไรก็ตามไซต์ระยะไกลยังมีซับเน็ตพิเศษที่ฉันต้องการเข้าถึง

นี่คือการกำหนดค่าของฉัน:

conn myConn
        type=tunnel
        left=192.168.139.14
        leftsubnet=192.168.139.0/24
        leftxauthclient=yes
        right=X.X.X.X
        rightsubnet=172.16.1.0/24
        keyexchange=ike
        auth=esp
        authby=secret
        phase2alg=3des-sha1
        pfs=yes

เมื่อฉันแทนที่rightsubnetด้วยrightsubnetsเช่น:

rightsubnets={172.16.1.0/24 192.168.3.0/24}

... จากนั้นสร้างการเชื่อมต่อสำเร็จ แต่จะมีเฉพาะซับเน็ตสุดท้ายในรายการเท่านั้น ความพยายามในการ ping อะไรบน172.16.1.0ซับเน็ตล้มเหลว ถ้าฉันสลับลำดับของซับเน็ตรอบฉันสามารถปิงได้172.16.1.Xแต่ไม่สามารถปิงอะไรบนซับเน็ตอื่น เหมือนกับว่า Openswan ใช้เครือข่ายย่อยสุดท้ายในรายการเพื่อสร้างการเชื่อมต่อเท่านั้น

ฉันทำอะไรผิดที่นี่เหรอ?

ข้อมูลเพิ่มเติมเล็กน้อยที่ฉันไม่ได้พูดถึง (แม้ว่าฉันไม่แน่ใจว่าเกี่ยวข้อง): ไคลเอ็นต์ Openswan ของฉันอยู่หลังเราเตอร์ที่ใช้ NAT และฉันมีnat_traversal=yesอยู่ในipsec.confไฟล์ของฉัน


คุณใช้ VLAN หรือไม่ ฉันมีปัญหาเดียวกันเกือบทั้งหมดและปัญหานี้เป็นข้อผิดพลาด VLAN

คุณได้ลองสร้างการเชื่อมโยงด้านความปลอดภัยสองสมาคมหรือไม่สำหรับแต่ละเครือข่ายย่อย
gimmesudo

@Teke ไม่ฉันไม่ได้ใช้ VLANs ไคลเอนต์ OpenSwan ของฉันอยู่หลังเราเตอร์ที่ใช้ NAT แม้ว่า - ฉันได้อัปเดตคำถามเพื่อแสดงว่า
FixMaker

@gimmesudo: ฉันพยายามทำซ้ำการตั้งค่าของฉันข้างต้นสำหรับการเชื่อมต่อใหม่ ( connection myConn2) rightsubnetกับทุกสิ่งที่เหมือนกันยกเว้น เมื่อฉันใช้ipsec auto --up myConnฉันสามารถ ping 172.168.1.X เมื่อฉันพยายามที่จะเปิดการเชื่อมต่อที่สอง ( ipsec auto --up myConn2) ฉันสามารถ ping 192.168.3.X แต่การเชื่อมต่อครั้งแรกจะจบลงอย่างสมบูรณ์
FixMaker

สำหรับการเชื่อมต่อเป็นไคลเอนต์บนเราเตอร์ IPSec จำนวนมาก (เช่น Cisco) คุณจะใช้งานง่ายกว่าvpnc!
F. Hauri

คำตอบ:


3

ดูเหมือนว่าตัวคั่นปกติสำหรับ subnets หลายรายการเป็นเครื่องหมายจุลภาคแต่อย่างน้อย openswan-2.6.32 ก็สามารถทำงานร่วมกับช่องว่างได้เช่นกัน

ควรบันทึกข้อมูลที่น่าสนใจ/var/log/secureซึ่งอาจมีเงื่อนงำว่าทำไมมันไม่ทำงาน นอกจากนี้ยังโพสต์การส่งออกของและip x s ship x p sh


หากคุณมาถึงที่นี่พยายามเปลี่ยนจากโฮสต์เดียวเป็นหลายโฮสต์ให้ระวังว่าคีย์สำหรับเครือข่ายย่อยหลายรายการนั้นอยู่ในพหูพจน์ ( rightsubnet*s*) แทนที่จะเป็นเอกพจน์
mgarciaisaia

1

สร้างconnการกำหนดค่าส่วนสำหรับแต่ละซับเน็ตบนจุดปลายทั้งสองของอุโมงค์ มีเพียงหนึ่งในพวกเขา (คนแรกที่เริ่มต้น) จะเริ่มการเจรจาต่อรอง SA คนที่สอง (หรือมากกว่า) จะสร้าง SPD ใหม่ของเครือข่ายย่อยเพิ่มเติม


น่าเสียดายที่ฉันไม่สามารถทำได้เนื่องจากปลายทางระยะไกลเป็นเราเตอร์ FortiGate บุคคลที่สาม (ไม่ได้ใช้ OpenSwan) ฉันเริ่มสงสัยว่าปัญหาอาจเกี่ยวข้องกับเราเตอร์ที่ไม่สามารถรับมือกับอุโมงค์หลายจุดระหว่างจุดปลายเดียวกันได้หรือไม่
FixMaker

1

ถ้าคุณใช้rightsubnetsคุณต้องใช้งานได้เป็นอย่างดีไม่ได้leftsubnets leftsubnetแม้ว่าจะมีซับเน็ตเพียงอันเดียวที่ด้านข้าง หน้า man ipsec.conf ไม่ได้อธิบายเรื่องนี้ได้ดีนัก แต่มันอยู่ที่นั่น

ฉันมีปัญหาที่คล้ายคลึงกันเป็นเวลาหลายเดือนและเพิ่งพบคำตอบได้ที่นี่: /server/571352/openswan-multiple-subnets-routing-issue


1
ไม่ใช่กรณี leftsubnets = {singletone} ควรเหมือนกับ leftsubnet = (ฉันเขียนรหัส)
mcr

นี่เป็นวิธีแก้ปัญหาสำหรับฉันที่ใช้ libeswan 3.15 ด้านซ้ายของฉันมีซับเน็ตเดียวและด้านขวามีหลายเครือข่าย หากฉันกำหนดค่าด้านซ้ายโดยใช้ leftsubnet = และสิทธิ์ในการใช้ rightsubnets = {} ดังนั้นจะมีเพียงการเชื่อมต่อล่าสุดของuboutubnetเท่านั้น เมื่อฉันกำหนดค่าทางด้านซ้ายเพื่อใช้ leftsubnets = {} กับซับเน็ตเดียวมันเชื่อมต่อกับทั้งหมด
Adam Plumb

1

ดูเหมือนว่ามีข้อผิดพลาดใน OpenSwan ที่รายการย่อยต้องการคอมมาพิเศษในตอนท้ายเพื่อให้ทำงานได้อย่างถูกต้อง ลอง:

rightsubnets={172.16.1.0/24,192.168.3.0/24,}

บันทึกเครื่องหมายจุลภาคพิเศษในตอนท้าย


ไม่ใช่กรณีและกรณีทดสอบหรือตัวอย่างไม่มีเครื่องหมายจุลภาคพิเศษ
mcr

-3

มันควรจะเป็นแบบนี้

rightsubnets={172.16.1.0/24,192.168.3.0/24}

ใช้เครื่องหมายจุลภาค ( ,) และไม่ใช่ช่องว่างเพื่อคั่นรายการ


1
นั่นน่าจะเป็นสิ่งที่คำตอบจากเมื่อสองปีก่อนกำลังพูดอยู่
G-Man กล่าวว่า 'Reinstate Monica'
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.