Переадресация портов на Linux без iptables?
У меня есть сервер Linux VPS (virtuozzo), и мне нужно настроить переадресацию портов, но мой хостинг-провайдер не разрешает модули ядра iptables-nat, поэтому iptables -t nat
- не работает.
Я ищу другие способы, как это сделать. Я знаю, что могу перенаправить порт, используя openssh, но мне нужно переадресовать более 20 разных портов, tcp и udp, так что это не вариант.
Есть ли какое-нибудь программное обеспечение для Linux, которое может выполнять переадресацию портов?
8 ответов
Я обнаружил небольшую утилиту с именем portfwd http://portfwd.sourceforge.net/ которая делает именно то, что мне нужно (пересылка TCP и UDP), на домашней странице написано, что она последний раз обновлялась в 2002 году, но последний выпуск - 2007, и он работает на ядре 2.6.,
Используйте инструмент под названием "socat", это отличный инструмент для таких вещей, и он уже упакован во многие дистрибутивы Linux. Читайте об этом здесь: http://www.dest-unreach.org/socat/doc/README
Пример переадресации портов с помощью socat:
socat TCP4-LISTEN:80,fork TCP4:www.yourdomain.org:8080
Это перенаправляет все TCP-соединения через порт 80 на www.yourdomain.org порт 8080 TCP.
Есть крошечная, легкая программа ресурсов redir
который довольно настраивается.
apt-get install redir
в дистрибутивах на основе Debian.
Как насчет rinetd
?
Это демон, который перенаправляет TCP-соединения. Загляните на страницу справочника, чтобы узнать, соответствует ли она вашим потребностям: http://www.boutell.com/rinetd/
xinetd
поддерживает атрибут перенаправления, который будет делать то, что вы хотите. Как уже отмечалось, существует ряд программ, которые обрабатывают перенаправления.
С помощью xinetd
или другая программа, которая использует tcpwrappers
библиотека позволит вам применять ограничения доступа, если и когда это станет необходимым.
xinet/ Inetd. Например:
переадресовывать
Позволяет перенаправить службу tcp на другой хост. Когда xinetd получает tcp-соединение через этот порт, он порождает процесс, который устанавливает соединение с указанным хостом и номером порта, и пересылает все данные между двумя хостами.
SSH Переадресация портов, если вы можете туннелировать соединение SSL.
Хорошо, вот простой ответ, который должен сработать, это не ракетостроение, но большинство людей усложняют ответ и путают все новое с пользователями Linux.
UFW позволяют 2xxx
2xxx = любой номер вашего порта просто введите эту команду в ваш серверный терминал, и ваш нужный порт будет открыт.