เรียนชุมชน ServerFault
ฉันมีปัญหากับการกำหนดค่าโดยรวมของ WireGuard Tunnel
ฉันมี OVH VPS ที่มี 4 IP สาธารณะ (MY_PUBLIC) ซึ่งทำหน้าที่เป็นเซิร์ฟเวอร์ WireGuard และส่งต่อการรับส่งข้อมูลทั้งหมด (และพอร์ต) ไปยังเราเตอร์ EdgeRouter-X ของฉัน (192.168.255.1) (ซึ่งทำหน้าที่เป็นไคลเอนต์ WireGuard) และจากนั้น ส่งต่อไปยังเซิร์ฟเวอร์ Debian ของฉัน (192.168.255.10)
ปัญหาคือเมื่ออยู่บนเซิร์ฟเวอร์ Debian ฉันพยายามผูกกับ IP สาธารณะของ OVH VPS WireGuard (MY_PUBLIC) [ฉันพยายามผูก Apache กับพวกเขาพร้อมกับ MariaDB และ Docker แต่ไม่มีอะไร] ฉันได้รับข้อผิดพลาดในการผูกที่บอกฉันว่า มันเป็นไปไม่ได้.
ผูก: ไม่สามารถกำหนดที่อยู่ที่ร้องขอ
หลังจากการวิจัยฉันพบสิ่งนี้:
ข้อความ “ไม่สามารถกำหนดที่อยู่ที่ร้องขอได้” แสดงว่าชื่อโฮสต์/IP ที่คุณพยายามผูกไม่สามารถแก้ไขไปยังอินเทอร์เฟซเครือข่ายท้องถิ่นได้
จากการวิจัยออนไลน์ ดูเหมือนว่า NAT จะอยู่ระหว่าง VPS และเซิร์ฟเวอร์ ฉันเป็นมือใหม่กับเครือข่ายและฉันไม่รู้ว่าจะแก้ปัญหานี้อย่างไร
นี่เป็นปัญหาหลักเนื่องจากเซิร์ฟเวอร์สามารถใช้ IP ที่เชื่อมโยงกับ 0.0.0.0 เท่านั้น
การกำหนดค่า ER-X ของฉัน:
ไฟร์วอลล์ {
เปิดใช้งาน all-ping
ปิดใช้งานการออกอากาศ ping
กลุ่ม {
ที่อยู่กลุ่ม MY_PUBLIC { // IP ของ OVH VPS
ที่อยู่ 92.CENSORED.CENSORED.108
ที่อยู่ 149.CENSORED.CENSORED.64
ที่อยู่ 37.CENSORED.CENSORED.244
ที่อยู่ 149.CENSORED.CENSORED.244
}
}
ipv6 ชื่อ WANv6_IN {
การลดลงของการดำเนินการเริ่มต้น
คำอธิบาย "การรับส่งข้อมูลขาเข้า WAN ส่งต่อไปยัง LAN"
เปิดใช้งานเริ่มต้นเข้าสู่ระบบ
กฎข้อที่ 10 {
การกระทำยอมรับ
คำอธิบาย "อนุญาตเซสชันที่สร้างขึ้น/ที่เกี่ยวข้อง"
สถานะ {
เปิดใช้งาน
เปิดใช้งานที่เกี่ยวข้อง
}
}
กฎ 20 {
การกระทำลดลง
คำอธิบาย "ลดสถานะที่ไม่ถูกต้อง"
สถานะ {
เปิดใช้งานไม่ถูกต้อง
}
}
}
ชื่อ ipv6 WANv6_LOCAL {
การลดลงของการดำเนินการเริ่มต้น
คำอธิบาย "การรับส่งข้อมูลขาเข้าของ WAN ไปยังเราเตอร์"
เปิดใช้งานเริ่มต้นเข้าสู่ระบบ
กฎข้อที่ 10 {
การกระทำยอมรับ
คำอธิบาย "อนุญาตเซสชันที่สร้างขึ้น/ที่เกี่ยวข้อง"
สถานะ {
เปิดใช้งาน
เปิดใช้งานที่เกี่ยวข้อง
}
}
กฎ 20 {
การกระทำลดลง
คำอธิบาย "ลดสถานะที่ไม่ถูกต้อง"
สถานะ {
เปิดใช้งานไม่ถูกต้อง
}
}
กฎ 30 {
การกระทำยอมรับ
คำอธิบาย "อนุญาต IPv6 icmp"
โปรโตคอล ipv6-icmp
}
กฎ 40 {
การกระทำยอมรับ
คำอธิบาย "อนุญาต dhcpv6"
ปลายทาง {
พอร์ต 546
}
โปรโตคอล udp
แหล่งที่มา {
พอร์ต 547
}
}
}
ipv6-receive-redirects ปิดใช้งาน
ปิดใช้งานเส้นทาง ipv6-src
ปิดการใช้งาน ip-src-route
เปิดใช้งาน log-Martians
แก้ไข wireguard_route {
กฎข้อที่ 5 {
การปรับเปลี่ยนการกระทำ
ปลายทาง {
กลุ่ม {
ที่อยู่กลุ่ม MY_PUBLIC
}
}
แก้ไข {
ตารางหลัก
}
}
กฎข้อที่ 7 {
การปรับเปลี่ยนการกระทำ
ปลายทาง {
ที่อยู่ 172.16.1.0/24
}
แก้ไข {
ตารางหลัก
}
}
กฎข้อที่ 10 {
การปรับเปลี่ยนการกระทำ
คำอธิบาย wireguard-vpn
แก้ไข {
ตารางที่ 1
}
แหล่งที่มา {
ที่อยู่ 192.168.255.0/24
}
}
}
ชื่อ WAN_IN {
การลดลงของการดำเนินการเริ่มต้น
คำอธิบาย "WAN ไปยังภายใน"
กฎข้อที่ 10 {
การกระทำยอมรับ
คำอธิบาย "อนุญาตให้สร้าง/เกี่ยวข้อง"
สถานะ {
เปิดใช้งาน
เปิดใช้งานที่เกี่ยวข้อง
}
}
กฎ 20 {
การกระทำลดลง
คำอธิบาย "ลดสถานะที่ไม่ถูกต้อง"
สถานะ {
เปิดใช้งานไม่ถูกต้อง
}
}
}
ชื่อ WAN_LOCAL {
การลดลงของการดำเนินการเริ่มต้น
คำอธิบาย "WAN ไปยังเราเตอร์"
กฎข้อที่ 10 {
การกระทำยอมรับ
คำอธิบาย "อนุญาตให้สร้าง/เกี่ยวข้อง"
สถานะ {
เปิดใช้งาน
เปิดใช้งานที่เกี่ยวข้อง
}
}
กฎ 20 {
การกระทำลดลง
คำอธิบาย "ลดสถานะที่ไม่ถูกต้อง"
สถานะ {
เปิดใช้งานไม่ถูกต้อง
}
}
กฎ 30 {
การกระทำยอมรับ
คำอธิบาย openvpn
ปลายทาง {
พอร์ต 1194
}
โปรโตคอล udp
}
}
ปิดการรับ-เปลี่ยนเส้นทาง
เปิดใช้งานการส่งเปลี่ยนเส้นทาง
ปิดใช้งานการตรวจสอบแหล่งที่มา
เปิดใช้งาน syn-cookies
}
อินเทอร์เฟซ {
อีเธอร์เน็ต eth0 {
ที่อยู่ dhcp
คำอธิบาย อินเตอร์เน็ต
dhcpv6-pd {
พี 0 {
อินเทอร์เฟซ eth1 {
บริการ dhcpv6-stateful
}
อินเทอร์เฟซ eth2 {
บริการ dhcpv6-stateful
}
อินเทอร์เฟซ eth3 {
บริการ dhcpv6-stateful
}
สวิตช์อินเทอร์เฟซ0 {
ที่อยู่โฮสต์ ::1
เครื่องหมายบริการ
}
คำนำหน้าความยาว /64
}
เปิดใช้งานอย่างรวดเร็ว
}
เพล็กซ์อัตโนมัติ
ไฟร์วอลล์ {
ใน {
ipv6 ชื่อ WANv6_IN
ชื่อ WAN_IN
}
ท้องถิ่น {
ipv6 ชื่อ WANv6_LOCAL
ชื่อ WAN_LOCAL
}
}
ipv6 {
ที่อยู่ {
คอนเฟิร์มอัตโนมัติ
}
dup-addr-detect-transmits 1
}
ความเร็วอัตโนมัติ
}
อีเธอร์เน็ต eth1 {
คำอธิบาย ท้องถิ่น
เพล็กซ์อัตโนมัติ
ความเร็วอัตโนมัติ
}
อีเธอร์เน็ต eth2 {
คำอธิบาย ท้องถิ่น
เพล็กซ์อัตโนมัติ
ความเร็วอัตโนมัติ
}
อีเธอร์เน็ต eth3 {
คำอธิบาย ท้องถิ่น
เพล็กซ์อัตโนมัติ
ความเร็วอัตโนมัติ
}
อีเธอร์เน็ต eth4 {
คำอธิบาย ท้องถิ่น
เพล็กซ์อัตโนมัติ
โพ {
ปิดเอาต์พุต
}
ความเร็วอัตโนมัติ
}
วนกลับเลย {
}
openvpn vtun0 {
เซิร์ฟเวอร์โหมด
เซิร์ฟเวอร์ {
เนมเซิร์ฟเวอร์ 192.168.255.1
เส้นทางพุช 192.168.255.0/24
ซับเน็ต 172.16.1.0/24
}
tl {
ca-cert-file /config/auth/cacert.pem
ใบรับรองไฟล์ /config/auth/server.pem
dh-ไฟล์ /config/auth/dh.pem
ไฟล์คีย์ /config/auth/server.key
}
}
สวิตช์ สวิตช์0 {
ที่อยู่ 192.168.255.1/24
คำอธิบาย ท้องถิ่น
ไฟร์วอลล์ {
ใน {
แก้ไข wireguard_route
}
}
mtu 1500
สวิตช์พอร์ต {
อินเทอร์เฟซ eth1 {
}
อินเทอร์เฟซ eth2 {
}
อินเทอร์เฟซ eth3 {
}
อินเทอร์เฟซ eth4 {
}
ปิดใช้งาน vlan-aware
}
}
ไวร์การ์ด wg0 {
ที่อยู่ 10.0.0.2/30
คำอธิบาย Wireguard
ฟังพอร์ต 51821
มธ.1420
เพียร์เซ็นเซอร์ + เซ็นเซอร์ + เซ็นเซอร์ = {
อนุญาต-ips 0.0.0.0/0
จุดสิ้นสุด 92.CENSORED.CENSORED.108:51821
ถาวร-keepalive 25
คีย์ที่ใช้ร่วมกันล่วงหน้า /config/auth/wg-preshared.key
}
คีย์ส่วนตัว /config/auth/wg.key
เส้นทางอนุญาต ips เท็จ
}
}
ส่งต่อพอร์ต {
เปิดใช้งานไฟร์วอลล์อัตโนมัติ
กุ๊บกิ๊บ-แนทเปิดใช้งาน
สวิตช์อินเทอร์เฟซ LAN0
กฎข้อที่ 1 {
คำอธิบาย "อนุญาตทั้งหมด"
ส่งต่อไปยัง {
ที่อยู่ 192.168.255.10
}
พอร์ตเดิม 1-65535
โปรโตคอล tcp_udp
}
WAN-อินเทอร์เฟซ wg0
}
โปรโตคอล {
คงที่ {
ตารางที่ 1 {
คำอธิบาย "ตารางบังคับ wg0:aws"
เส้นทางอินเทอร์เฟซ 0.0.0.0/0 {
อินเทอร์เฟซถัดไปกระโดด wg0 {
}
}
เส้นทาง 0.0.0.0/0 {
หลุมดำ {
ระยะทาง 255
}
}
}
}
}
บริการ {
เซิร์ฟเวอร์ dhcp {
ปิดใช้งานเท็จ
ปิดใช้งานการอัปเดตไฟล์โฮสต์
ชื่อเครือข่ายที่ใช้ร่วมกัน LAN-X {
ปิดการใช้งานอย่างเป็นทางการ
เครือข่ายย่อย 192.168.255.0/24 {
เริ่มต้นเราเตอร์ 192.168.255.1
เซิร์ฟเวอร์ DNS 192.168.255.1
ให้เช่า 86400
เริ่มต้น 192.168.255.2 {
หยุด 192.168.255.254
}
iDRAC การทำแผนที่แบบคงที่ {
ที่อยู่ IP 192.168.255.120
ที่อยู่ mac เซ็นเซอร์:เซ็นเซอร์:เซ็นเซอร์:เซ็นเซอร์:เซ็นเซอร์:เซ็นเซอร์
}
โหนดการแมปแบบคงที่ 2 {
ที่อยู่ IP 192.168.255.10
ที่อยู่ mac เซ็นเซอร์:เซ็นเซอร์:เซ็นเซอร์:เซ็นเซอร์:เซ็นเซอร์:เซ็นเซอร์
}
}
}
ปิดใช้งาน static-arp
ใช้-dnsmasq ปิดการใช้งาน
}
DNS {
ส่งต่อ {
แคชขนาด 150
สวิตช์เปิดฟัง0
ฟังบน vtun0
}
}
กุย {
http-พอร์ต 80
https-พอร์ต 443
เก่า-ciphers เปิดใช้งาน
}
แนท {
กฎ 5001 {
คำอธิบาย wireguard-nat
ปิดการใช้งานบันทึก
อินเทอร์เฟซขาออก wg0
โปรโตคอลทั้งหมด
แหล่งที่มา {
ที่อยู่ 192.168.255.0/24
}
ประเภทสวมหน้ากาก
}
กฎ 5002 {
คำอธิบาย "สวมหน้ากากสำหรับ WAN"
ปิดการใช้งานบันทึก
อินเทอร์เฟซขาออก eth0
โปรโตคอลทั้งหมด
ประเภทสวมหน้ากาก
}
}
ssh {
พอร์ต 22
โปรโตคอลเวอร์ชัน v2
}
ยกเลิก {
}
}
ระบบ {
ตัวจัดการการวิเคราะห์ {
ส่งการวิเคราะห์รายงานเท็จ
}
ตัวจัดการความผิดพลาด {
ส่งข้อขัดข้องรายงานเท็จ
}
ชื่อโฮสต์ EdgeRouter-X-5-Port
เข้าสู่ระบบ {
ผู้ใช้ ubnt {
การรับรองความถูกต้อง {
เข้ารหัสรหัสผ่านเซ็นเซอร์
}
ผู้ดูแลระบบระดับ
}
}
เอ็นทีพี {
เซิร์ฟเวอร์ 0.ubnt.pool.ntp.org {
}
เซิร์ฟเวอร์ 1.ubnt.pool.ntp.org {
}
เซิร์ฟเวอร์ 2.ubnt.pool.ntp.org {
}
เซิร์ฟเวอร์ 3.ubnt.pool.ntp.org {
}
}
ถ่าย {
เปิดการใช้งาน
ipsec เปิดใช้งาน
}
ซิสล็อก {
ทั่วโลก {
สิ่งอำนวยความสะดวกทั้งหมด {
ประกาศระดับ
}
โปรโตคอลสิ่งอำนวยความสะดวก {
การแก้ปัญหาระดับ
}
}
}
เขตเวลา UTC
}
การกำหนดค่า WG ของ OVH VPS ของฉัน:
[อินเตอร์เฟซ]
ที่อยู่ = 10.0.0.1/30
ListenPort = 51821
PrivateKey = เซ็นเซอร์
### ลูกค้า VPN
[เพียร์]
PublicKey = เซ็นเซอร์
PresharedKey = เซ็นเซอร์
IP ที่อนุญาต = 10.0.0.2/30
OVH IPTables ของฉัน:
# สร้างโดย iptables-save v1.8.7 เมื่อวันอาทิตย์ที่ 9 มกราคม 11:04:33 น. 2565
*กรอง
: ยอมรับอินพุต [971:145912]
:ส่งต่อ ยอมรับ [920:137172]
: ยอมรับเอาต์พุต [637:108812]
:f2b-sshd - [0:0]
ให้สัญญา
# เสร็จสิ้นเมื่อ อา. 9 ม.ค. 11:04:33 น. 2565
# สร้างโดย iptables-save v1.8.7 เมื่อวันอาทิตย์ที่ 9 มกราคม 11:04:33 น. 2565
*แนท
: ยอมรับ [133:6792]
: ยอมรับอินพุต [61:2272]
: ยอมรับเอาต์พุต [3:228]
:หลังยอมรับ [66:4011]
-A PREROUTING -i ens3 -p udp -m multiport --dports 1,000:51820 -j DNAT --to-destination 10.0.0.2
-A PREROUTING -i ens3 -p udp -m multiport --dports 51822:65534 -j DNAT --to-destination 10.0.0.2
-A PREROUTING -i ens3 -p tcp -m หลายพอร์ต --dports 51822:65534 -j DNAT --to-ปลายทาง 10.0.0.2
-A PREROUTING -i ens3 -p tcp -m multiport --dports 1,000:51820 -j DNAT --to-destination 10.0.0.2
-A PREROUTING -i ens3 -p tcp -m multiport --dports 21,22,80,25,995,110,443,465,993,143 -j DNAT --to-destination 10.0.0.2
-A PREROUTING -i ens3 -p udp -m multiport --dports 21,22,80,25,995,110,443,465,993,143 -j DNAT --to-destination 10.0.0.2
-A โพสต์ -o ens3 -j MASQUERADE
ให้สัญญา
# เสร็จสิ้นเมื่อ อา. 9 ม.ค. 11:04:33 น. 2565
สำหรับการแก้ไขปัญหา ฉันพยายามเชื่อมโยงกับ IP ของ Office ซึ่งไม่ได้ทำงานอยู่เบื้องหลัง WireGuard Tunnel ของ ER-X ตามที่คาดไว้และต้องการ
ต่อไปนี้คือบางหัวข้อที่ช่วยให้ฉันตั้งค่าโครงสร้าง WireGuard ปัจจุบันของฉันขึ้น: https://community.ui.com/questions/EdgeRouter-X-as-WireGuard-Client-Forward-ports-from-WG-tunnel-to-LAN/f19957fb-70be-485f-832d-381c6ea4b306
https://community.ui.com/questions/EdgeRouter-X-as-a-WireGuard-client-with-port-forwarding-or-User-IP-is-shown-to-be-WireGuard-tunnels/2a8b19ab- ac0c-48ed-b367-afd3914de9c2
ขอบคุณล่วงหน้าสำหรับความช่วยเหลือของคุณ!