33 lines
1.4 KiB
Plaintext
33 lines
1.4 KiB
Plaintext
|
[Interface]
|
||
|
# Replace with the server's private key
|
||
|
PrivateKey = SERVER_PRIVATE_KEY
|
||
|
# VPN interface IP address
|
||
|
Address = 10.0.0.1/24
|
||
|
# Listening port
|
||
|
ListenPort = 51820
|
||
|
|
||
|
# Enable IP forwarding
|
||
|
PostUp = sysctl -w net.ipv4.ip_forward=1
|
||
|
# Masquerade outgoing traffic
|
||
|
PostUp = iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
|
||
|
# Allow forwarding from VPN to eth0
|
||
|
PostUp = iptables -A FORWARD -i wg0 -o eth0 -j ACCEPT
|
||
|
# Allow forwarding from eth0 to VPN
|
||
|
PostUp = iptables -A FORWARD -i eth0 -o wg0 -m state --state RELATED,ESTABLISHED -j ACCEPT
|
||
|
# Forward incoming SMTP traffic to the client
|
||
|
PostUp = iptables -t nat -A PREROUTING -i eth0 -p tcp --dport 25 -j DNAT --to-destination 10.0.0.2:25
|
||
|
# Forward incoming HTTP traffic to the client (web management portal)
|
||
|
PostUp = iptables -t nat -A PREROUTING -i eth0 -p tcp --dport 80 -j DNAT --to-destination 10.0.0.2:80
|
||
|
|
||
|
# Clean up rules on shutdown
|
||
|
PostDown = iptables -D FORWARD -i wg0 -o eth0 -j ACCEPT
|
||
|
PostDown = iptables -D FORWARD -i eth0 -o wg0 -m state --state RELATED,ESTABLISHED -j ACCEPT
|
||
|
PostDown = iptables -t nat -D POSTROUTING -o eth0 -j MASQUERADE
|
||
|
PostDown = iptables -t nat -D PREROUTING -i eth0 -p tcp --dport 25 -j DNAT --to-destination 10.0.0.2:25
|
||
|
PostDown = iptables -t nat -D PREROUTING -i eth0 -p tcp --dport 80 -j DNAT --to-destination 10.0.0.2:80
|
||
|
|
||
|
[Peer]
|
||
|
# Client's public key
|
||
|
PublicKey = CLIENT_PUBLIC_KEY
|
||
|
# Allowed IPs for the client
|
||
|
AllowedIPs = 10.0.0.2/32
|