Большой Воронежский Форум
» Техническая поддержка>Проброс портов ubuntu server 10.04.3 x64
ВиталийЕ 12:48 31.08.2011
Воронеж! Нужно придти, пробросить порты (1 порт и диапозон) на ubuntu server 10.04.3 x64.

Расчитаюсь пивом (или 100 р)

89050503165. Александр.

Нужно сегодня / завтра [Ответ]
VitohA 15:52 31.08.2011
ВиталийЕ, пробросить с чего? Прокся/роутер/т.п? Желательно схему, хоть примитивную: что есть и что нужно. Если керька, то могу по удалёнке за спасибо)) [Ответ]
ВиталийЕ 16:05 31.08.2011
не прокся и не роутер. ubuntu server 10.04.3

iptables)

ssh не дам. [Ответ]
VitohA 17:30 31.08.2011
определитесь - пробросить с или пробросить на. а то 2 поста и в обоих задачи разные)) [Ответ]
ВиталийЕ 19:21 31.08.2011
пробросить и НА и С.
т.е и INPUT и OUTPUT правила. для одного и того же порта. [Ответ]
VitohA 07:30 01.09.2011
ВиталийЕ, большинство людей понимают выражение "пробросить на" не как input/output в iptables, а как "у меня веб/впн сервер за прокси стоит, надо прокинуть порт НА него только с определённой подсети, чтоб лишним неповадно было". Из второго поста моё шестое чувство подсказывает, что бубунта как раз и работает проксёй, что у меня не вяжется с первым постом. Объясните задачу яснее, можно с мини-схемой. [Ответ]
Hip-Hop 09:40 01.09.2011

Сообщение от VitohA:
ВиталийЕ, большинство людей понимают выражение "пробросить на" не как input/output в iptables, а как "у меня веб/впн сервер за прокси стоит, надо прокинуть порт НА него только с определённой подсети, чтоб лишним неповадно было".

Большинство людей под 'пробросить' понимают пробросить через что-то

В частности через nat.
http://ru.wikibooks.org/wiki/%D0%9F%...%82/Forwarding о_О [Ответ]
VitohA 10:00 01.09.2011
Hip-Hop, это и имел в виду, пробросить С интернета ЧЕРЕЗ проксю/роутер (нат) НА бубунту, из моего 3-го поста это понятно, просто упрощёнка. Из данной темы непонятно вцелом нифига: откуда, куда и через-что (через iptables) - не дано условие и цель до конца, так, отрывки задания. [Ответ]
Hip-Hop 10:08 01.09.2011

Сообщение от VitohA:
Hip-Hop, это и имел в виду, пробросить С интернета ЧЕРЕЗ проксю/роутер (нат) НА бубунту, из моего 3-го поста это понятно, просто упрощёнка.

А можно ещё делать так:

#!/bin/bash
IPTABLES="/sbin/iptables"
INET_IP="80.81.82.83"
SERVER_IP="192.168.0.107"
PORT=25
OUR_NET=192.168.0.0/24
$IPTABLES -t nat -A POSTROUTING -p tcp -s $SERVER_IP --dst ! $OUR_NET --dport $PORT -j SNAT --to-source $INET_IP

'В данном случаи мы разрешаем машине SERVER_IP доступ на PORT, находящийся за пределами OUR_NET от имени INET_IP. В конкретном примере сервер 192.168.0.107 не имеет доступа в интернет, но мы ему открываем 25 порт (smtp) если обращения идут не в подсеть 192.168.0.0/24, то его IP будет подменен на внешний 80.81.82.83. То есть он сможет напрямую отправлять почту (к примеру он у нас почтовый шлюз).'

Или так:

#!/bin/bash
IPTABLES="/sbin/iptables"
GW_IP="192.168.0.91"
SERVER_IP="192.168.0.107"
PORT=7777
$IPTABLES -t nat -A PREROUTING -p tcp --dst $GW_IP --dport $PORT -j DNAT --to-destination $SERVER_IP:$PORT
$IPTABLES -t nat -I POSTROUTING -p tcp --dst $SERVER_IP --dport $PORT -j SNAT --to $GW_IP
echo 1 > /proc/sys/net/ipv4/ip_forward
/etc/init.d/iptables save
/etc/init.d/iptables start

'В данном случаи мы делаем проброс порта с обычной машины (не шлюза) GW_IP на машину SERVER_IP'
[Ответ]
AlexanderUlyanov 11:44 01.09.2011
Вот мини схема:

Есть ПК. 222.222.222.222 (Ubuntu)

На нём висит веб-приложение на порту 5225 (тобишь 222.222.222.222:5225)

мне нужно, чтобы это веб-приложение могло ДОСТУЧАТЬСЯ на 222.222.222.222:5226 [Ответ]
VitohA 12:09 01.09.2011

Сообщение от AlexanderUlyanov:
Вот мини схема:

Есть ПК. 222.222.222.222 (Ubuntu)

На нём висит веб-приложение на порту 5225 (тобишь 222.222.222.222:5225)

мне нужно, чтобы это веб-приложение могло ДОСТУЧАТЬСЯ на 222.222.222.222:5226

На localhost? [Ответ]
AlexanderUlyanov 12:15 01.09.2011
Да. На localhost [Ответ]
VitohA 12:47 01.09.2011

Сообщение от AlexanderUlyanov:
Да. На localhost

Кхм... А в чём проблема?
Не верю, что недоступен по локалхосту, скорее всего веб-приложение не работает. [Ответ]
AlexanderUlyanov 14:03 01.09.2011
2ip.ru

Берём сканим: 222.222.222.222

22 открыт
80 открыт
5225 открыт
5226 закрыт

в iptables создавал INPUT и OUTPUT правила.


VitohA, прочитай ЛС. [Ответ]
VitohA 14:32 01.09.2011
iptables -t nat -A PREROUTING -p tcp -d ppp0 --dport 5226 -j DNAT --to-destination 127.0.0.1:5225

Попробуй.

Вкратце: есть машина напрямую подключённая к интернету, сетевуха одна, поднято ppp соединение. Нужно все входящие на порт 5226 соединения перенаправлять на порт 5225. [Ответ]
Hip-Hop 17:41 01.09.2011

Сообщение от AlexanderUlyanov:
Вот мини схема:

Есть ПК. 222.222.222.222 (Ubuntu)

На нём висит веб-приложение на порту 5225 (тобишь 222.222.222.222:5225)

мне нужно, чтобы это веб-приложение могло ДОСТУЧАТЬСЯ на 222.222.222.222:5226

Что за 222.222.222.222 ?

У тебя web-сервер слушает порт 5225 на публичном ip адресе сети internet? Тебе нужно чтобы оно слушало и порт 5226? То-есть, оба порта? Так?

222.222.222.222. Это публичный или приватный ip адрес? [Ответ]
AlexanderUlyanov 18:03 01.09.2011

Сообщение от VitohA:
iptables -t nat -A PREROUTING -p tcp -d ppp0 --dport 5226 -j DNAT --to-destination 127.0.0.1:5225.


Ошибка =)

iptables -t nat -I PREROUTING 1 -d внешний_ip -p tcp --dport порт -j DNAT --to внутренний_ip:порт [Ответ]
Hip-Hop 18:09 01.09.2011

Сообщение от AlexanderUlyanov:
Ошибка =)

Ды, не нужен dnat snat в этом случаи.

Делать надо так:

iptables -A PREROUTING -t nat -i интерфейс -p tcp --dport 5226 -j REDIRECT --to-port 5225 [Ответ]
AlexanderUlyanov 18:18 01.09.2011

Сообщение от Hip-Hop:
Ды, не нужен dnat snat в этом случаи.

Делать надо так:

--iptables -A PREROUTING -t nat -i интерфейс -p tcp --dport 5226 -j REDIRECT --to-port 5225



это проброс порта? ) [Ответ]
Hip-Hop 18:27 01.09.2011

Сообщение от AlexanderUlyanov:
это проброс порта? )

Это редирект - перенаправление порта. А тебе чё нужно то? о_О [Ответ]
Hip-Hop 18:30 01.09.2011

Сообщение от AlexanderUlyanov:
Есть ПК. 222.222.222.222 (Ubuntu)

На нём висит веб-приложение на порту 5225 (тобишь 222.222.222.222:5225)

мне нужно, чтобы это веб-приложение могло ДОСТУЧАТЬСЯ на 222.222.222.222:5226

Извините, но вы определитесь, чё у вас слушает - сервер, а кто должен достучаться - клиент.

Если программа слушает порт, то она сервер, но достучаться она уже не может. До неё достукиваются.

Или изъясняйтесь ясней
[Ответ]
Hip-Hop 18:46 01.09.2011
AlexanderUlyanov, вот так это будет:

iptables -A PREROUTING -t nat -i интерфейс -p tcp --dport 5226 -j REDIRECT --to-port 5225

чёрточки (--) не нужны. Откуда-то взялись

А для публичного ip это возможно будет так:

iptables -A PREROUTING -t nat -i ppp0 -p tcp --dport 5226 -j REDIRECT --to-port 5225

Или чё у тебя заместо vpn? Ну, online port scaner'ы распознают открытый порт 5226


Открытый порт - его что-то слушает - в него идут пакеты и получают ответ.
[Ответ]
Hip-Hop 19:38 01.09.2011
AlexanderUlyanov, лучше укажи так - iptables -A PREROUTING -t nat -p tcp --dport 5226 -j REDIRECT --to-port 5225 Без указания интерфейса - для всего для чего подходит. Короче, будет работать 100%. С указанием интерфейса нужно смотреть в каждом конкретном случаи. Смотря как организованна работа сети и самой машины (в ip-плане, LOL)


Лично всё проверил (ещё раз
) - все работает. [Ответ]
AlexanderUlyanov 13:41 03.09.2011
Разобрался я с открытием портов. =)

sudo ufw allow 5226

sudo iptables -A INPUT -p tcp –dport 5226 - j ACCEPT [Ответ]
AlexanderUlyanov 13:45 03.09.2011
Думаю, тему можно закрыть. [Ответ]
Вверх