На хосте у меня дома есть хост для VPN, который мне нужен для нескольких целей. Временно проживающий в Японии, он работает как NAT для некоторых устройств, поэтому я все еще могу использовать мой NETFLIX и некоторые другие сервисы. Однако я хочу, чтобы этот сервер все еще использовал обычную сеть для загрузок / просмотра веб-страниц. В настоящее время ниже приведена копия моей конфигурации:
IP правило шоу
0: from all lookup local
32764: from all fwmark 0x1 lookup 10
32767: from all lookup main
32768: from all lookup default
ip route show table 10
default dev ppp0 scope link
Iptables-сохранить
*mangle
:PREROUTING ACCEPT [11:822]
:INPUT ACCEPT [11:822]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [8:872]
:POSTROUTING ACCEPT [8:872]
-A OUTPUT -s 192.168.1.102 -j MARK --set-mark 0x1
COMMIT
*nat
:PREROUTING ACCEPT [2831:752380]
:POSTROUTING ACCEPT [107531:7116617]
:OUTPUT ACCEPT [107652:7124121]
-A POSTROUTING -o eth0 -j MASQUERADE
COMMIT
*filter
:INPUT ACCEPT [0:0]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [41463962:7467495526]
-A FORWARD -i eth0 -p ppp+ -j ACCEPT
-A FORWARD -i ppp+ -o eth0 -j ACCEPT
COMMIT
Я хотел бы заявить, что моя фактическая конфигурация iptables более сложна, чтобы включить несколько операторов журнала для новых соединений на стороне FORWARD и чтобы избежать слишком большого количества журналов, существует общий прием для УСТАНОВЛЕННЫХ, СВЯЗАННЫХ соединений перед журналом заявление и больше IP-адресов в таблице mangle. Эта конфигурация служит своим целям для моих устройств, однако я просто попытался ssh'ing в нее с пульта и не могу. Причина очевидна: ответы от моей службы ssh направляются по адресу eth0 вместо ppp0. Что подводит меня к моему вопросу.
Можно ли применять fwmark 1 ко всем сеансам, созданным через ppp0? Я знаю, что через некоторое копание, что conntrack может выполнять сопоставления, основанные на исходном IP-адресе исходного хоста сеанса, но могу ли я сделать что-то подобное для исходного dev?
Общая цель состоит в том, чтобы ssh можно было выполнять из частной подсети, моего исходного ip-адреса (японский ip 204.xxx.xxx.xxx) или ip vpn (23.xxx.xxx.xxx) без постоянного изменения конфигурации. Неэффективное решение, позволяющее использовать ssh только для частного и VPN, будет применять fwmark к любой подсети, кроме 192.168.xxx.xxx, со значением sport 22 в таблице mangle, однако это не позволит использовать ssh для японского ip. ,