ฉันกำลังดิ้นรนกับสิ่งนี้ ฉันลอง 2 วิธี วิธีแรกคือกับ UFW วิธีที่ 2 คือกับ iptables หลังจากใช้คำสั่ง grep เซิร์ฟเวอร์กำลังฟังพอร์ต 1194 สำหรับ UDP ปัญหาของฉันคือเมื่ออุปกรณ์ไคลเอนต์ของฉันพยายามเชื่อมต่อผ่าน VPN เซิร์ฟเวอร์ vps ของฉันหยุดทำงานขณะพยายามเชื่อมต่อ ฉันคิดว่ามันเกี่ยวข้องกับตารางเส้นทาง ฉันไม่พบข้อมูลที่ถูกต้องเกี่ยวกับการตั้งค่าเซิร์ฟเวอร์ openvpn หากฉันไม่ได้ตั้งค่า iptables openvpn ก็ทำงานได้ดี ฉันต้องการเพียง 1 พอร์ตที่จะเปิดซึ่งก็คือ 44158 ดังนั้น id เช่นไคลเอนต์ของฉันเพื่อเชื่อมต่อกับเซิร์ฟเวอร์ openvpn ผ่านเซิร์ฟเวอร์ vps ระยะไกลและเพื่อส่งต่อการรับส่งข้อมูลขาเข้าและขาออกทั้งหมดไปยังพอร์ต 44158
คำสั่งที่ฉันใช้โดยที่:
iptables -t nat -I PREROUTING -p udp --dport 1194 -j REDIRECT --to-port 44158
iptables -I INPUT -p udp --dport 44158 -j ยอมรับ
การเพิ่มสาเหตุข้างต้นทำให้เซิร์ฟเวอร์ openvpn หยุดทำงานในขณะที่ไคลเอนต์พยายามเชื่อมต่อ หากฉันเปลี่ยนกลับเป็นการตั้งค่าเริ่มต้น มันก็ใช้งานได้ แต่พอร์ต 44158 ถูกปิดอย่างเห็นได้ชัด
ฉันคิดไม่ออกว่าจะกำหนดค่าอะไรบนเซิร์ฟเวอร์ openvpn ทั้งหมดทำโดย iptables? ฉันมีประสบการณ์พื้นฐานเกี่ยวกับเซิร์ฟเวอร์ แต่ฉันไม่เคยพยายามส่งต่อพอร์ตมาก่อนหรือเปิดพอร์ต ฉันใช้ Road warrior openvpn ซึ่งติดตั้งได้ง่ายมาก แม้ว่าจะไม่ใช่เวอร์ชันเต็มก็ตาม เซิร์ฟเวอร์ Vps กำลังเรียกใช้ Ubuntu 18.04 lts อัปเดตอย่างสมบูรณ์ ความช่วยเหลือหรือคำแนะนำใด ๆ ที่จะได้รับการชื่นชมมาก
นี่คือ iptables ที่ฉันเพิ่มเข้าไป
สิ่งเหล่านี้บางอย่างอาจไม่จำเป็น แต่ฉันพยายามทุกวิถีทาง
iptables -I FORWARD 1 -d 10.8.0.2 -p tcp --dport 44158 -j ยอมรับ
iptables -t nat -A POSTROUTING -m conntrack --ctstate DNAT -d 10.8.0.2 -p tcp --dport 44158 -j SNAT --to-source 10.8.0.1
iptables -t nat -A PREROUTING -d (vps.server.ip) -p tcp --dport 44158 -j DNAT --to-dest 10.8.0.2:44158
iptables -t nat -A POSTROUTING -d 10.8.0.2 -p tcp --dport 44158 -j SNAT --to-source 10.8.0.1
iptables -I FORWARD 1 -d 10.8.0.2 -p udp --dport 44158 -j ยอมรับ
iptables -t nat -A POSTROUTING -m conntrack --ctstate DNAT -d 10.8.0.2 -p udp --dport 44158 -j SNAT --to-source 10.8.0.1
iptables -t nat -A PREROUTING -d (vps.server.ip) -p udp --dport 44158 -j DNAT --to-dest 10.8.0.2:44158
iptables -t nat -A POSTROUTING -d 10.8.0.2 -p udp --dport 44158 -j SNAT --to-source 10.8.0.1
iptables -A OUTPUT -p tcp --dport 44158 -j ยอมรับ
iptables -A OUTPUT -o eth0 -p tcp --dport 44158 -m state --state NEW,ESTABLISHED -j ยอมรับ
ive ยังเปิดใช้งานการส่งต่อพอร์ต sysctl net.ipv4.ip_forward=1
ฉันกำลังทดสอบสิ่งนี้บนแล็ปท็อปของฉันซึ่งติดตั้งซอฟต์แวร์ไคลเอนต์ openvpn IP ของแล็ปท็อปที่กำหนดโดย openvpn คือ 10.8.0.2
เป้าหมายของฉันคือการเชื่อมต่อเครื่องขุดฮีเลียมกับ VPN ซึ่งต้องใช้ 44158 เปิดผ่านอุโมงค์ VPN เพื่อ "นินทา" กับเครื่องขุดฮีเลียมอื่น ๆ บนเครือข่ายฮีเลียมสามารถทำได้ แต่ไม่ตรงไปตรงมา ฉันทำตามคำแนะนำมากมายที่ไม่ได้ผล
ที่อยู่ IP ของ LAN ของแล็ปท็อปบนเครือข่ายของฉันคือ 192.168.0.3
ตอนนี้ฉันค่อนข้างมั่นใจในการทำงานกับ iptables หากฉันต้องการลบสิ่งใดๆ ฉันสามารถทำได้ตามความเหมาะสม
คำแนะนำใด ๆ ที่จะได้รับการชื่นชมอย่างสุดซึ้ง ขอขอบคุณ.