This Is a know working Debian 10 setup hope it helps you. Test setup only will not work after reboot and network-manager will break this every time link state changes. Was just using this for testing.
WAN="eno1"
LAN="enp2s0"
#
# delete all existing rules.
#
iptables -F
iptables -t nat -F
iptables -t mangle -F
iptables -X
iptables -P INPUT DROP
iptables -P FORWARD DROP
# Always accept loopback traffic
iptables -A INPUT -i lo -j ACCEPT
# Allow established connections, and those not coming from the outside
iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
iptables -A INPUT -m state --state NEW -i ! $WAN -j ACCEPT
iptables -A FORWARD -i $WAN -o $LAN -m state --state ESTABLISHED,RELATED -j ACCEPT
# Allow outgoing connections from the LAN side.
iptables -A FORWARD -i $LAN -o $WAN -j ACCEPT
# Masquerade.
iptables -t nat -A POSTROUTING -o $WAN -j MASQUERADE
# Don't forward from the outside to the inside.
iptables -A FORWARD -i $WAN -o $LAN -j DROP
# Enable routing.
echo 1 > /proc/sys/net/ipv4/ip_forward
# Kill IPv6
sysctl -w net.ipv6.conf.all.disable_ipv6=1
sysctl -w net.ipv6.conf.default.disable_ipv6=1
ifconfig $LAN 192.168.0.14/28
|