Добрый день.
У меня следующая проблема - в моей локальной сети много компьютеров (вероятно, около 40, и это количество может увеличиться), и я хочу предоставить всем им удаленный доступ из Интернета. Все эти машины подключены к внутренней сети через один шлюз / брандмауэр / что-то еще с debian 6.0.7 на борту. Я могу сделать что-то подобное с помощью iptables на моем шлюзе debian:
iptables -t nat -A PREROUTING -p tcp --dst %ip% -- dport 43001 -j DNAT --to-destination 192.168.0.1:%remotedesktopport%
iptables -t nat -A PREROUTING -p tcp --dst %ip% -- dport 43255 -j DNAT --to-destination 192.168.0.255:%remotedesktopport%
Итак, тогда владелец машины 192.168.0.1 захочет работать из дома, он будет делать это легко, то же самое для 192.168.0.255 и т. Д.
Но как я могу установить одинаковые правила для всей моей локальной сети? Может быть, есть способ сделать это более элегантно, чем вводить вручную 255 правил iptables? Может быть, есть какой-то трюк для динамического разрешения перенаправления, что-то вроде
-A PREROUTING -d %ip% -p tcp --dport 43%three-digits-number-var% -j DNAT --to-destination 192.168.0.%three-digits-number-var%
где% three-digits-number-var% - это переменная от 0 до 255? Я надеюсь, что кто-нибудь сможет мне помочь или показать мои ошибки, потому что я новичок в сетевых технологиях и Linux.
Upd. Основная идея моей текущей конфигурации заключается в том, что номер порта соответствует локальному ip. E. g. порт 43001 для 192.168.0.1, 43005 для 192.168.0.5 и т. д. Так что просто указать диапазон портов не получится. Или это из-за какого-то вуду? ..
С помощью iptables вы можете указать диапазон портов, используя
--dport 43000:43255
Я думаю, что вам действительно нужно здесь настроить VPN сервер чтобы ваши удаленные сотрудники использовали его для подключения к вашей офисной сети.