Назад | Перейти на главную страницу

IPTABLES порт nat forwarding с использованием SSH localForward

| <--------- ВНУТРЕННЯЯ СЕТЬ ------------------------------------- -> || <--- ПРЕДОСТАВЛЯТЬ ЧАСТНУЮ СЕТЬ -------> | | <--------- DESKTOP (MacOS) ----------> | <- LINUX HOST w IPTABLES -> | <--- MS SQL на порту 1433 --- -----> | | <--- ХОСТУ LINUX РАЗРЕШЕНО ПРЕДОСТАВЛЯТЬ СЕТЬ НА ПОРТЕ 1444 -> |

Итак, с помощью следующей конфигурации IPTABLES CONFIG я могу разговаривать с целевой базой данных, подключившись к хосту Linux, который перенаправляет мой трафик 1433 в пункт назначения. Однако это вызывает проблему, когда любой, у кого есть машина во внутренней сети, может поговорить с БД назначения, если они знают об установке.

Как это можно сделать, только создав туннель SSH (localForward) к LINUX HOST. По крайней мере, вам нужна учетная запись, чтобы иметь доступ к целевой БД ...

Вот копия имеющейся у меня конфигурации iptables.

Мои IPTABLES Config.

iptables -F iptables -t nat -F iptables -X

iptables -P INPUT DROP iptables -P OUTPUT DROP iptables -P FORWARD DROP

iptables -A INPUT -i lo -j ACCEPT iptables -A OUTPUT -o lo -j ACCEPT

iptables -A INPUT -m state --state ESTABLISHED, RELATED -j ACCEPT iptables -A FORWARD -m state --state ESTABLISHED, RELATED -j ACCEPT iptables -A OUTPUT -m state --state ESTABLISHED, RELATED -j ACCEPT

iptables -A OUTPUT -m state --state NEW, ESTABLISHED, RELATED -j ACCEPT

iptables -A INPUT -p tcp --dport 22 -m state --state NEW -j ACCEPT

iptables -A FORWARD -p tcp --dport 1433 -d 7.8.9.10 -j ПРИНЯТЬ

iptables -t nat -A PREROUTING -p tcp --dport 1433 -j DNAT --to-destination 7.8.9.10:1433 iptables -t nat -A POSTROUTING -p tcp -d 7.8.9.10 --dport 1433 -j SNAT - -в исходный код 3.4.5.6