Iptables И Удаленный Доступ К Сети

Итак, сеть настроена, пакеты ходят, интернет работает, права вырезаны - в общем тот момент, когда можно перевести дух и приступить к "тонкой настройке" сервера для удобства не пользователя, а администратор.

Чего хочет хороший системный администратор? Конечно! Чтобы его рабочие обязанности занимали как можно меньше свободного времени.

И что лучше всего для этого служит, естественно, удаленный доступ.

Сегодня этим никого не удивишь – безлимитный Интернет уже есть практически у каждого, поэтому вы можете получить доступ к любимому серверу из любой точки мира.

Но что делать, если за одним IP-адресом находится разветвленная сеть с несколькими серверами, к каждому из которых может потребоваться доступ? Естественно, есть возможность установить на каждый из них что-то вроде Radmin и использовать один как «перевалочную базу».

Однако Radmin не всегда может помочь — нужен полноценный «родной» терминал.

Что делать в этом случае? Вам просто нужно ввести разницу, по какому порту обращаться.

Кратко опишу структуру сети, о которой пойдет речь.

Внешний IP - один.

Собственно, к ADSL-модему подключен «шлюзовой» сервер под управлением Linux, второй интерфейс сервера подключен к сети.

Интернет распределен по нескольким подсетям, в каждой из которых есть сервер, доступ к которому возможен по RDP. В качестве адреса внешнего интерфейса сервера шлюза возьмем 192.168.100.1. eth0 — «внутренний» интерфейс, eth1 — «внешний» интерфейс.

192.168.1.1 — адрес первого сервера, 192.168.2.1 — второго и т.д. Думаю, нет необходимости подробно описывать процесс редактирования правил IPTABLES. Поэтому мы сосредоточимся на том, как предоставить внешний доступ к нескольким серверам.

Для начала вам необходимо пробросить порты с ADSL-модема на сервер.

Мы решаем, сколько нам нужно.

Например, шесть — настраиваем порты с 3384 по 3389 для переадресации.

Далее нам останется только обработать пакет, который получит модем, и отправить его на нужный нам сервер:

iptables -t nat -A PREROUTING -p tcp -d 192.168.100.1 --dport 3385 -j DNAT to-destination 192.168.2.1:3389 iptables -t nat -A PREROUTING -p tcp -d 192.168.100.1 --dport 3386 -j DNAT to-destination 192.168.3.1:3389 iptables -t nat -A PREROUTING -p tcp -d 192.168.100.1 --dport 3389 -j DNAT to-destination 192.168.1.1:3389



iptables -A FORWARD -i eth1 -o eth0 -d 192.168.1.1 -p tcp --dport 3389 -j ACCEPT iptables -A FORWARD -i eth1 -o eth0 -d 192.168.2.1 -p tcp --dport 3389 -j ACCEPT iptables -A FORWARD -i eth1 -o eth0 -d 192.168.3.1 -p tcp --dport 3389 -j ACCEPT

Что мы делаем? Если мы запустим RDP-клиент на внешний адрес модема, то шлюз перенаправит его на нужный сервер внутри сети, исходя из портов.

Если мы укажем адрес подключения без указания порта, мы подключимся к серверу 192.168.1.1. Метод не идеален, но работает вполне хорошо.

А самое главное, это просто и не требует никаких усилий для реализации.

Спасибо за внимание.

Буду рад, если это кому-то пригодится.

Теги: #linux #iptables #удаленное администрирование #удаленный доступ #Чулан

Вместе с данным постом часто просматривают:

Автор Статьи


Зарегистрирован: 2019-12-10 15:07:06
Баллов опыта: 0
Всего постов на сайте: 0
Всего комментарий на сайте: 0
Dima Manisha

Dima Manisha

Эксперт Wmlog. Профессиональный веб-мастер, SEO-специалист, дизайнер, маркетолог и интернет-предприниматель.