Итак, сеть настроена, пакеты ходят, интернет работает, права вырезаны - в общем тот момент, когда можно перевести дух и приступить к "тонкой настройке" сервера для удобства не пользователя, а администратор.
Чего хочет хороший системный администратор? Конечно! Чтобы его рабочие обязанности занимали как можно меньше свободного времени.
И что лучше всего для этого служит, естественно, удаленный доступ.
Сегодня этим никого не удивишь – безлимитный Интернет уже есть практически у каждого, поэтому вы можете получить доступ к любимому серверу из любой точки мира.
Но что делать, если за одним 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 #удаленное администрирование #удаленный доступ #Чулан
-
Одноклассники, Выпуск Второй!
19 Oct, 24 -
Вызов Общих Библиотек Из Simulink
19 Oct, 24