ฉันมีเซิร์ฟเวอร์ Ubuntu 3 เครื่อง ทั้งหมดกำลังทำงาน 21.10 (Linux Nas1 5.13.0-1016-raspi #18-Ubuntu SMP PREEMPT พฤหัสบดีที่ 20 มกราคม 08:53:01 UTC 2022 aarch64 aarch64 aarch64 GNU/Linux)
หนึ่งคือเซิร์ฟเวอร์ wireguard อีกสองเป็นไคลเอนต์ฉันเพิ่งติดตั้งเซิร์ฟเวอร์ที่สาม (ไคลเอนต์) ขณะที่ฉันติดตั้ง wireguard บนเครื่องนี้ ฉันตรวจสอบสิ่งที่โหลดมา และพบว่าจริง ๆ แล้วมีการเรียกใช้และเชื่อมต่อกับไฟล์ wg0.conf เปล่า
lsmod | สายเกรป
ไวร์การ์ด 90112 0
libchacha20poly1305 16384 1 ไวร์การ์ด
liblake2s 16384 1 ไวร์การ์ด
libcurve25519_generic 40960 1 ตัวป้องกันสาย
ip6_udp_tunnel 16384 1 ไวร์การ์ด
udp_tunnel 28672 1 ไวร์การ์ด
ifconfig
wg0: flags=209<UP,POINTOPOINT,RUNNING,NOARP> mtu 1420
ไม่ระบุ 00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00 txqueuelen 1000 (UNSPEC)
แพ็คเก็ต RX 0 ไบต์ 0 (0.0 B)
ข้อผิดพลาด RX 0 หลุด 0 โอเวอร์รัน 0 เฟรม 0
แพ็กเก็ต TX 0 ไบต์ 0 (0.0 B)
ฉันใช้การกำหนดค่าเดียวกันทุกประการจากไคลเอนต์ที่ทำการจับมือกับอันใหม่โดยใช้รหัสสาธารณะในเซิร์ฟเวอร์เท่านั้น กำหนดค่าสล็อต [Peer] ใหม่ (ใช้ cat บนไคลเอ็นต์เพื่อแสดงรายการคีย์สาธารณะ) และที่อยู่โฮสต์เป็น 192.168 .10.7 (ทั้งบนเซิร์ฟเวอร์และไคลเอ็นต์) กับ 192.168.10.6 จากไคลเอนต์ที่ใช้งานได้ ด้านล่างนี้คือการกำหนดค่า
เซิร์ฟเวอร์
[อินเตอร์เฟซ]
ที่อยู่ = 192.168.10.1/24
คีย์ส่วนตัว = ไพรเวตคีย์
ListenPort = 51820
PostUp = iptables -A FORWARD -i %i -j ยอมรับ; iptables -A ไปข้างหน้า -o %i -j ยอมรับ; iptables -t nat -A โพสต์ -o eth0 -j MASQUERADE
PostDown = iptables -D FORWARD -i %i -j ยอมรับ; iptables -D ส่งต่อ -o %i -j ยอมรับ; iptables -t nat -D โพสต์ -o eth0 -j MASQUERADE
[เพียร์]
#NAS_REMOTE
PublicKey = Rcl14dY+v76Pcw4uWmMUPwG0EdoBMjisDzsgGoBVFiI=
IP ที่อนุญาต = 192.168.10.6/32
[เพียร์]
#NAS1
PublicKey = 44yLweAnZJmLrtQdGJPUYJvOeNCbme4YnsaR2/hA6Q8=
IP ที่อนุญาต = 192.168.10.7/32
ลูกค้า
[อินเตอร์เฟซ]
ที่อยู่ = 192.168.10.7
คีย์ส่วนตัว = ไพรเวตคีย์
DNS = 8.8.8.8
[เพียร์]
PublicKey = E7k2xiSLRMy9wjuPTZIMKLoThQkv+4f0IJcYTbNAfAI=
จุดสิ้นสุด = <ที่อยู่สาธารณะของฉัน>:51820
IP ที่อนุญาต = 0.0.0.0/0, ::/0
PersistentKeepalive = 25
ทั้งหมดที่กล่าวมามันไม่จับมือในขณะที่อีกอัน 192.168.10.6 ไม่ฉันแค่งุนงงกับสิ่งนี้จริงๆ
ความช่วยเหลือใด ๆ ที่จะได้รับการชื่นชมอย่างมาก. ฉันใช้เวลาสามวันหยุดสุดสัปดาห์ในการพยายามคิดสิ่งนี้ออกมา
02/27/22 อัปเดต
ฉันสามารถจับมือกันได้ถ้าฉันใช้ IP ในเครื่องเป็นจุดสิ้นสุดกับ URL สาธารณะ (ซึ่งแปลเป็น IP สาธารณะได้อย่างถูกต้อง) มิฉะนั้น ฉันเชื่อว่าเครื่องไคลเอนต์ทั้งสองเหมือนกัน URL สาธารณะที่ใช้งานได้คืออัปเกรดเป็น 21.10 เทียบกับ URL สาธารณะที่ไม่ทำงานกับ IP สาธารณะ มันเป็นการติดตั้งใหม่