LINUX.ORG.RU
ФорумAdmin

Доступ к роутеру через сервер


0

0

У меня для выхода во внешний мир стоит ADSL-роутер Acorp W422G. А в локальной сети ftp-сервер на MopsLinux. Чтоб ftp был доступен снаружи, настроил port forwarding на роутере. Недавно на сервере запустил апач, и так же захотел открыть ему доступ наружу.

Проблема в том, что очень часто захожу в web-интерфейс роутера тоже через интернет, как и в тот момент, когда настраивал перенаправление 80-го порта. Осознал содеянное сразу после нажатия кнопки "Save All" :) web-интефейс, само собой, тут же оказался недоступен, а web-сервер без проблем выдавал странички... Короче связь с роутером потерял. У меня есть две мысли, как решить проблему:

0. Настроить web-интерфейс роутера на другой (нестандартный) порт. Гугл молчит. Техподдержка Акорпа (отписал вчера) пока тоже. Если кто подскажет - это будет самое удачное решение.

1. Тут нужен справочник юного гениколога. Короче мысль такая: на веб-странице сделать мееелкую ссылку, запускающую что-то (скрипт какой-нибудь), чтоб апач, со стороны сервера (т.е. изнутри локалки) выдавал веб-интерфейс роутера наружу, и передавал ему запросы обратно. Тут наверное можно было бы для формирования html использовать Links (напрямую через него зайти не удалось), но вот как запросы от пользователя передать не знаю...


ну да, только не скрипт, обычное проксирование - все современные http сервера умеют

hizel ★★★★★
()

А зайти на роутер через ssh и настроить все ручками не?

Morphine
()

это ж нафуя веб-морду роутера-то наружу выпихивать?
сделай проброс роутер:81 -> апач:80 и заходи на 81 порт, если на 80 сильно надо вебморда роутера извне.

Komintern ★★★★★
()
Ответ на: комментарий от Komintern

А я бы апачем путь к роутеру запроксировал...

q4x2
()
Ответ на: комментарий от hizel

>ну да, только не скрипт, обычное проксирование - все современные http сервера умеют

Ясно, а в какую сторону копать? В смысле, другой порт на сервере открыть, и на него проксирование сделать?

>А зайти на роутер через ssh и настроить все ручками не?

Не позволяет. На нём система какая-то хитрая (в факу техподдержки было сказано), что по ssh, что telnet - всё ридонли. С другой стороны - на ssh у меня тоже порт на сервер проброшен :))

ploop
() автор топика

Нет, что-то тут не так... Ща проверить не могу. Короче, мне получается доступ надо иметь так:

Первый вариант: рабочий комп -> прокси (рабочий) -> роутер с нестандартным портом интерфейса

Второй вариант: рабочий комп -> прокси (рабочий) -> роутер (перекидка порта) -> прокси (домашний) -> роутер (80 порт)

Со вторым вариантом не знаю как быть...

ploop
() автор топика

Разве нельзя просто назначить в настройках роутера порт веб-интерфейса, например, 81? Подавляющее большинство роутеров имеет такую функцию в веб-интерфейсе.

Или я что-то упустил?

edigaryev ★★★★★
()
Ответ на: комментарий от ploop

>Второй вариант

По-моему это бред.

Хотите "зашторить" роутер из вне -- запретите внешние коннекты на веб-интерфейс роутера, и если нужен будет доступ -- пробрасывайте порты через ваш сервер (mops) по ssh.

edigaryev ★★★★★
()
Ответ на: комментарий от edigaryev

>Разве нельзя просто назначить в настройках роутера порт веб-интерфейса, например, 81? Подавляющее большинство роутеров имеет такую функцию в веб-интерфейсе.

Ответ техподдержки пришел: "Спасибо за то, что обратились в техническую службу поддержки компании Acorp Int.

нет, настроить веб интерфейс на нестандартный порт не удасться."

>По-моему это бред.

Понимаю...

>Хотите "зашторить" роутер из вне -- запретите внешние коннекты на веб-интерфейс роутера, и если нужен будет доступ -- пробрасывайте порты через ваш сервер (mops) по ssh.

Думал об этом. Но как? Запрос идёт на 80 порт, идёт с ip роутера, КАК его отличить от запроса к апачу? Или пробросить на роутере, к примеру, 81 порт, а на сервере с 81 обратно, но на 80 роутера... Стоп. Это мысль!

ploop
() автор топика
Ответ на: комментарий от edigaryev

Хочу перебросить порт через сервер, запутался с iptables. Данные такие: адрес сервера 192.168.0.36, роутера - 192.168.0.201 Нужно запрос на сервер (на 81 порт) перебросить на роутер (80 порт) Поможете?

ploop
() автор топика
Ответ на: комментарий от ploop

sysctl -w net.ipv4.ip_forward=1
iptables -t nat -A PREROUTING -p tcp -d 192.168.0.36 --dport 81 -j DNAT --to-destination 192.168.0.201:80
iptables -t nat -A POSTROUTING -p tcp -d 192.168.0.201 --dport 80 -j SNAT --to-source 192.168.0.36
iptables -t nat -A POSTROUTING -p tcp -s 192.168.0.201 --sport 80 -j SNAT --to-source 192.168.0.36:81

edigaryev ★★★★★
()
Ответ на: комментарий от edigaryev

Примерно так и делал.. не выходит. Проверяю с помощью Links на адрес 192.168.0.36:81 На 80 порт соединяется, а 81 перекидывать не хочет...

ploop
() автор топика
Ответ на: комментарий от nnz

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

Но сначала хочу проверить очень простую идею - перебросить на роутере порт НА СЕБЯ же. Если получится, это будет самый правильный вариант.

ploop
() автор топика
Ответ на: комментарий от nnz

Как на других не знаю, на моём через веб-интерфейс, секундное дело. Только интересно, примет ли он себя в качестве адреса назначения... По идее пофигу, должен.

ploop
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.