ฉันมีการตั้งค่าต่อไปนี้:
- เราเตอร์ที่มีการเข้าถึงอินเทอร์เน็ต
- ที่อยู่ IP สาธารณะแบบคงที่
- ฟังก์ชั่นต่ำ
- มีคุณสมบัติ "การส่งต่อพอร์ต"
- ที่อยู่ IP ท้องถิ่น: 192.168.1.1
- เซิร์ฟเวอร์ Linux (Ubuntu) เชื่อมต่อกับบริการ VPN (ควบคุมโดยฉันไม่ได้) เป็นเกตเวย์สำหรับลูกค้า (3)
- อินเตอร์เฟส enp0s3: gw: 192.168.1.1; ที่อยู่ IP: 192.168.1.10
- อินเตอร์เฟส tun0 - การเชื่อมต่อ VPN
- ไคลเอนต์ Windows 7
- อินเตอร์เฟสเครือข่าย: gw: 192.168.1.10; ที่อยู่ IP: 192.168.1.8
กฎ iptables บนเซิร์ฟเวอร์ (2):
*nat
:PREROUTING ACCEP T [443:55918]
:INPUT ACCEPT [21:3328]
:OUTPUT ACCEPT [22:1600]
:POSTROUTING ACCEPT [73:4883]
-A POSTROUTING -s 192.168.1.8/32 -o tun0 -j MASQUERADE
COMMIT
*filter
:INPUT ACCEPT [2135:1080592]
:FORWARD ACCEPT [846:190487]
:OUTPUT ACCEPT [1592:396526]
-A FORWARD -s 192.168.1.8/32 -i tun0 -o enp0s3 -m state --state RELATED,ESTABLISHED -j ACCEPT
-A FORWARD -s 192.168.1.8/32 -i enp0s3 -o tun0 -j ACCEPT
COMMIT
ฉันจะส่งต่อพอร์ตสำหรับการเชื่อมต่อ SSH ไปยังไคลเอนต์ผ่านที่อยู่ของเราเตอร์ภายนอกได้อย่างไร (ฉันไม่สามารถทำได้ผ่าน VPN)