Din întrebarea anterioară UFW, se pare că utilizați WireGuard în două scopuri?: 1) redirecționați traficul de la un client WireGuard al VPS-ului dvs. către Internet și 2) redirecționați câteva porturi publice de la VPS-ul dvs. înapoi către clientul WireGuard . Aveți nevoie de masquerading (aka SNAT) pentru 1) și port forwarding (aka DNAT) pentru 2).
Cel mai simplu mod de a configura acest lucru cu firewalld este să legați interfața publică Ethernet a VPS-ului (eth0
în cazul dvs.) la firewalld-ul predefinit extern
zonă și interfața WireGuard a VPS-ului dvs. (wg0
în cazul dvs.) la firewalld-ul predefinit intern
zona. The extern
zona vine preconfigurată cu masquerading activat; și ambele zone vin, de asemenea, preconfigurate pentru a accepta SSH și alte câteva servicii.
Mai întâi deschideți portul de ascultare WireGuard al VPS-ului dvs. (49503
în cazul dumneavoastră) pe extern
zona:
$ sudo firewall-cmd --zone=external --add-port=49503/udp
Și portul de redirecționare TCP 56000
pe extern
zonă către același port pe 10.66.66.2
:
$ sudo firewall-cmd --zone=external --add-forward-port='port=56000:proto=tcp:toaddr=10.66.66.2'
Apoi legați eth0
la extern
zonă (care aplică configurația firewalld pentru extern
zona tuturor eth0
conexiuni):
$ sudo firewall-cmd --zone=external --add-interface=eth0
Și legați wg0
la intern
zona:
$ sudo firewall-cmd --zone=intern --add-interface=wg0
Verificați-vă zonele active:
$ sudo firewall-cmd --get-active-zones
extern
interfețe: eth0
intern
interfețe: wg0
Și verificați configurația dvs extern
zona:
$ sudo firewall-cmd --info-zone=extern
extern (activ)
target: implicit
icmp-block-inversion: nu
interfețe: eth0
surse:
servicii: ssh
porturi: 49503/udp
protocoale:
mascarada: da
forward-ports: port=56000:proto=tcp:toaddr=10.66.66.2
porturi sursă:
icmp-blocks:
reguli bogate:
Dacă totul funcționează corect, salvați setările curente pentru firewall:
$ sudo firewall-cmd --runtime-to-permanent