Mi-am configurat EdgeRouter-X ca client WireGuard (folosind IPv6), astfel încât IP-ul meu public să fie afișat ca IP-ul public al serverului WireGuard.
Acest lucru se datorează faptului că vreau să găzduiesc un server de acasă folosind IP-ul OVH și Anti-DDoS în loc de propriul meu ip public care este neprotejat.
Am 4 IP-uri publice:
22.22.22.22
33.33.33.33
44.44.44.44
55.55.55.55
Graficul pentru conexiunea mea este astfel:
OVH VPS Wireguard Server WG0 Tunnel (LOCAL Tunnel 10.0.0.1) [Redirecționare porturi cu IPTables] <-----> (LOCAL Tunnel 10.0.0.2) EdgeRouter X
EdgeRouter-X (LOCAL 192.168.1.1) [Redirecționare porturi cu EdgeRouter] <-----> (LOCAL 192.168.1.10) HOME-SERVER
Redirec toate porturile de la VPS-ul OVH (1-65535) cu IPTables către EdgeRouter-ul meu prin tunelul wg0 și apoi către homeserver-ul meu și asta funcționează.
Problema este că atunci când un utilizator se conectează să spunem la 22.22.22.22:80, el este afișat cu succes pagina web, dar IP-ul său la server rezultă a fi 10.0.0.1 și nu IP-ul public al utilizatorului.
Aceasta este configurația mea WG Server:
[Interfață]
Adresa = 10.0.0.1/30
ListenPort = 51821
PrivateKey = Cenzurat
### Client VPN
[Peer]
PublicKey = Cenzurat
PresharedKey = Cenzurat
AllowedIPs = 10.0.0.2/30
Aceasta este configurația mea WG Server IPTables pentru a redirecționa porturile către EdgeRouter prin WG0:
# Generat de iptables-save v1.8.7 pe duminica 9 ianuarie 11:04:33 2022
*filtru
:INPUT ACCEPT [971:145912]
: FORWARD ACCEPT [920:137172]
: ACCEPT IEȘIRE [637:108812]
:f2b-sshd - [0:0]
COMMIT
# Finalizat duminică, 9 ianuarie 11:04:33 2022
# Generat de iptables-save v1.8.7 pe duminica 9 ianuarie 11:04:33 2022
*nat
:ACCEPTAREA PRE-ROUTARE [133:6792]
:INPUT ACCEPT [61:2272]
: ACCEPT IEȘIRE [3:228]
: POSTROUTING ACCEPT [66:4011]
-A PREROUTING -i ens3 -p udp -m multiport --dports 1000: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 multiport --dports 51822:65534 -j DNAT --to-destination 10.0.0.2
-A PREROUTING -i ens3 -p tcp -m multiport --dports 1000:51820 -j DNAT --to-destination 10.0.0.2
-A PREROUTING -i ens3 -p tcp -m multiport --dports 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 80,25,995,110,443,465,993,143 -j DNAT --to-destination 10.0.0.2
-A POSTROUTING -j MASQUERADE
COMMIT
# Finalizat duminică, 9 ianuarie 11:04:33 2022
Aceasta este configurația mea EdgeRouter-X cu client WG0 și redirecționare porturi către serverul de acasă:
firewall {
activare all-ping
dezactivare broadcast-ping
grup {
grup de adrese MY_PUBLIC {
adresa 22.22.22.22
adresa 33.33.33.33
adresa 44.44.44.44
adresa 55.55.55.55
}
}
nume-ipv6 WANv6_IN {
drop-acțiune implicită
descriere „Trafic de intrare WAN redirecționat către LAN”
enable-default-log
regula 10 {
acțiune accepta
descriere „Permite sesiuni stabilite/conexe”
stat {
activat stabilit
activare aferentă
}
}
regula 20 {
picătură de acțiune
descriere „Renunțați la starea nevalidă”
stat {
activare nevalidă
}
}
}
nume-ipv6 WANv6_LOCAL {
drop-acțiune implicită
descriere „Trafic de intrare WAN către router”
enable-default-log
regula 10 {
acțiune accepta
descriere „Permite sesiuni stabilite/conexe”
stat {
activat stabilit
activare aferentă
}
}
regula 20 {
picătură de acțiune
descriere „Renunțați la starea nevalidă”
stat {
activare nevalidă
}
}
regula 30 {
acțiune accepta
descriere „Permite icmp IPv6”
protocol ipv6-icmp
}
regula 40 {
acțiune accepta
descriere „permite dhcpv6”
destinație {
portul 546
}
protocol udp
sursă {
portul 547
}
}
}
ipv6-receive-redirects dezactivat
ipv6-src-route dezactivat
ip-src-route dezactivat
log-martians permit
modifica wireguard_route {
regula 5 {
modificarea acțiunii
destinație {
grup {
grup de adrese MY_PUBLIC
}
}
modifica {
tabel principal
}
}
regula 10 {
modificarea acțiunii
descriere wireguard-vpn
modifica {
tabelul 1
}
sursă {
adresa 192.168.1.0/24
}
}
}
nume WAN_IN {
drop-acțiune implicită
descriere „WAN către intern”
regula 10 {
acțiune accepta
descriere „Permite stabilit/relativ”
stat {
activat stabilit
activare aferentă
}
}
regula 20 {
picătură de acțiune
descriere „Renunțați la starea nevalidă”
stat {
activare nevalidă
}
}
}
nume WAN_LOCAL {
drop-acțiune implicită
descriere „WAN la router”
regula 10 {
acțiune accepta
descriere „Permite stabilit/relativ”
stat {
activat stabilit
activare aferentă
}
}
regula 20 {
picătură de acțiune
descriere „Renunțați la starea nevalidă”
stat {
activare nevalidă
}
}
}
dezactivarea redirecționărilor de primire
activare trimitere-redirecționări
dezactivarea validării sursei
activați syn-cookie-urile
}
interfețe {
ethernet eth0 {
adresa dhcp
descriere Internet
dhcpv6-pd {
pd 0 {
interfață eth1 {
service dhcpv6-stateful
}
interfață eth2 {
service dhcpv6-stateful
}
interfață eth3 {
service dhcpv6-stateful
}
comutator de interfață0 {
adresa gazdă ::1
service slaac
}
prefix-lungime /64
}
activare rapid-commit
}
duplex automat
firewall {
în {
nume-ipv6 WANv6_IN
nume WAN_IN
}
local {
nume-ipv6 WANv6_LOCAL
nume WAN_LOCAL
}
}
ipv6 {
abordare {
autoconf
}
dup-addr-detect-transmite 1
}
viteza automata
}
ethernet eth1 {
descriere Local
duplex automat
viteza automata
}
ethernet eth2 {
descriere Local
duplex automat
viteza automata
}
ethernet eth3 {
descriere Local
duplex automat
viteza automata
}
ethernet eth4 {
descriere Local
duplex automat
poe {
ieșire oprită
}
viteza automata
}
loopback lo {
}
comuta comutator0 {
adresa 192.168.1.1/24
descriere Local
firewall {
în {
modifica wireguard_route
}
}
mtu 1500
switch-port {
interfață eth1 {
}
interfață eth2 {
}
interfață eth3 {
}
interfață eth4 {
}
dezactivare vlan-aware
}
}
wireguard wg0 {
adresa 10.0.0.2/30
descriere Wireguard
portul de ascultare 51821
mtu 1420
peer CENSORED {
permis-ips 0.0.0.0/0
punct final [2001:41d0:52:400::6e3]:51821
persistent-menținere în viață 25
cheie-preshared /config/auth/wg-preshared.key
}
cheie-privată /config/auth/wg.key
route-allowed-ips false
}
}
port-forward {
activare auto-firewall
hairpin-nat enable
comutator lan-interfață0
regula 1 {
descriere „Permite TOATE”
transmite {
adresa 192.168.1.10
}
original-port 1-65535
protocol tcp_udp
}
wan-interfață wg0
}
protocoale {
static {
tabelul 1 {
descrierea „tabel pentru a forța wg0:aws”
interfață-rută 0.0.0.0/0 {
next-hop-interfață wg0 {
}
}
ruta 0.0.0.0/0 {
gaură neagră {
distanta 255
}
}
}
}
}
serviciu {
Server DHCP {
dezactivat fals
hostfile-update dezactivat
shared-network-name LAN {
activare autorizată
subrețea 192.168.1.0/24 {
router implicit 192.168.1.1
dns-server 192.168.1.1
inchiriere 86400
începe 192.168.1.38 {
oprire 192.168.1.243
}
static-mapping Node2 {
adresa ip 192.168.1.10
adresa mac 90:b1:1c:44:f6:da
}
iDRAC cu cartografiere statică {
adresa ip 192.168.1.120
adresa mac E0:DB:55:06:2D:14
}
}
}
dezactivare static-arp
use-dnsmasq dezactivați
}
dns {
redirecționare {
dimensiunea cache-ului 150
comutator de ascultare0
}
}
gui {
http-port 80
https-port 443
Cifrurile mai vechi permit
}
nat {
regula 5002 {
descriere wireguard-nat
dezactivare jurnal
interfață de ieșire wg0
protocol toate
sursă {
adresa 192.168.1.0/24
}
tip mascarada
}
regula 5003 {
descriere „masquerade for WAN”
dezactivare jurnal
interfață de ieșire eth0
protocol toate
tip mascarada
}
}
ssh {
portul 22
versiunea de protocol v2
}
unms {
}
}
sistem {
analytics-handler {
trimite-analytics-raport false
}
crash-handler {
send-crash-report false
}
numele gazdă EdgeRouter-X-5-Port
Autentificare {
utilizator ubnt {
autentificare {
parolă-criptată
}
nivel admin
}
}
ntp {
server 0.ubnt.pool.ntp.org {
}
server 1.ubnt.pool.ntp.org {
}
server 2.ubnt.pool.ntp.org {
}
server 3.ubnt.pool.ntp.org {
}
}
descărcare {
hwnat activare
activare ipsec
}
syslog {
global {
facilitate toate {
aviz de nivel
}
protocoale de facilitate {
depanare la nivel
}
}
}
fus orar UTC
}