3 сетевые карточки на шлюзе

Аватар пользователя o3one

Добрый день!

Я в Линуксе человек новый, поэтому заранее прошу прощения, если вопросы глупые. Но помощь нужна.

Машина 1:

ASPLinux 11.2

Сетевуха1: IP 192.168.205.239 MASK 255.255.252.0 GATEWAY 192.168.204.1 DNS 192.168.248.21
Провайдер типа "домашняя сеть". Инет выдаётся путём авторизации по MAC сетевухи.

Сетевуха2: IP 10.0.2.134 MASK 255.255.252.0 GATEWAY 10.0.0.1 DNS 10.0.0.1
Провайдер типа "домашняя сеть". Инета нет, используется только для доступа к локальным ресурсам.

Сетевуха3: IP 172.20.0.1 MASK 255.255.255.0 GATEWAY self DNS self
Локальное соединение на вторую машину.

Машина 2:

WinXP SP2

Сетевуха 1: IP 172.20.0.2 MASK 255.255.255.0 GATEWAY 172.20.0.1 DNS 172.20.0.1

Необходимо настроить это всё так, чтобы:

1. Обе машины без проблем видели друг друга
2. Обе машины видели инет (не через сквид, а втупую как расшаренное соединение под виндой)
3. Обе машины видели локалки 1 и 2

4. В локалках кроме IP существуют сетевые имена типа soft.local или soft.zet. Хотелось бы, чтоб по ним было всё доступно.

Сейчас удалось добиться, что под ASP работает инет, вторая локалка (но только по IP) и Винда видит шары ASP (samba). Сделано так: первая сетевая настроена полностью (включая привязку MAC), на второй прописано всё, кроме шлюза, не третьей аналогично. В ДНСах прописан только ДНС первой сетки (с инетом).

Читал ман по iptables, даже поставил gtk-iptables... Честно говоря, мало что понял. Основная проблема - что инет на второй машине сейчас только через squid, и ASP не видит сеть по третьей сетевой.

Уффф, сумбурно написал. Сам уже мало понимаю, ночь не спал, разбирался. Наверное уже просто туплю от усталости. Буду благодарен за помощь.

PS Обнаглею окончательно: ещё б шлюз сделать побезопаснее как-нить... В смысле, что посоветуете в виде антивиря и FW?

Аватар пользователя Meloman

Re: 3 сетевые карточки на шлюзе

2. http://www.opennet.ru/docs/RUS/iptables/ . Обратите внимание на MASQUERADE. У меня была похожая задача. А если учесть, что в сетевых вопросах я плаваю, то признаюсь- понял, как сделать то, что мне нужно спустя 5го или 7го прочтения :-? Но статья очень-оченть полезная, поверьте.

А я так понял, что с первым пунктом разобрались? Потому что читаю описание и не понимаю: в чем вопрос?

Насчет по-безопаснее... Там же, на статье обратите внимание- написано, как сделать шлюз на кнкретную сетевую карту (что бы другие не сделали из Вас провайдера). Вот и все, что пока пришло в голову.
Пы.Сы.
А, ну да- банальный вопрос: машины пингуются?

Аватар пользователя o3one

Re: 3 сетевые карточки на шлюзе

Машины пингуются без вопросов.

Вопрос по пункту 1 такой: у меня поднята Самба. Так вот винда все шары ASP прекрасно видит. А ASP не видит даже сеть (есть там такая ссылочка - навроде Сетевого окружения в Win). Подключить шару вручную тоже не получается. Отключаю первые 2 карты - всё видно. То есть как я понимаю, дело в маршрутах. Но вот в более конкретно - пока не додумал. Если в статье это есть, тогда вопрос снят. Дальнейшие вопросы уже скорее по WinXP - почему-то ASP не может ничего менять в расшаренной виндовой папке, хотя доступ в винде стоит полный. Но это не принципиально, главное - чтоб сеть видел при поднятых 3 интерфейсах.

За ссылку спасибо, сейчас буду читать. Поражён

Аватар пользователя Meloman

Re: 3 сетевые карточки на шлюзе

o3one писал(а):
А ASP не видит даже сеть (есть там такая ссылочка - навроде Сетевого окружения в Win).

Почти такая же проблема была: ASP не видел расшаренные диски/папки. Причем имена этих "шар" были написаны так красиво: \\192.168.0.5\Programms (SHARE). Т.е.- пробеолы буквы.
В общем, как делал: Представил себе, что я за виндой (ну да... вот такая больная фантазия) и в броузере Opera написал \\192.168.0.5\ - Opera зашла/зашел на эту машину и показал расшаренные диски/папки. Ну, хорошо, думаю, опера рулез, а остальные ...того, но должен быть еще и другой способ. Так вот. В Gnome меню "Подключить сетевые ресурсы". Или как там ее. Сейчас не могу сказать, посмотрите, пожалуйста. Так вот там и есть выбор сетевого ресурса винды. После того, как зашел 1 раз, Nautilus оставил себе на память на них ссылки. Вот такой "тупой способ".

Насчет того, почему связь появляется, когда отключаете 2 других карты могу точно сказать: В настройках "намудрили". Что именно- не знаю. Настраивал домашнюю сеть так: одна карта была 192.168.0.3, другая 192.168.1.1 и была "шлюзом" для другой.

Аватар пользователя o3one

Re: 3 сетевые карточки на шлюзе

Да, есть там такая штука - подключить сервер (или сетевой ресурс). Вот она почему-то ничего не даёт. ASP тихо начинает думать и в итоге ни к чему не приходит. Что интересно - в винде показывает в эти моменты, что к шаре подключён 1 пользователь. Но я думаю, это всё-таки проблема настроек моих.

Аватар пользователя o3one

Re: 3 сетевые карточки на шлюзе

Ещё вопрос по статье. Есть SNAT, есть MASQUERADE. Насколько я понимаю, второе немного больше грузит систему. Если у меня постоянное соединение и один внешний IP, мне достаточно SNAT?

Аватар пользователя Meloman

3 сетевые карточки на шлюзе

o3one писал(а):
Вот она почему-то ничего не даёт. ASP тихо начинает думать и в итоге ни к чему не приходит.

А сам iptables (файрвол) включен?
А с другой винды видны ресрсы той винды? - есть вероятность, что проблемы в винде. или в smb-браузере в линаксе.

Аватар пользователя Meloman

3 сетевые карточки на шлюзе

o3one писал(а):
Ещё вопрос по статье. Есть SNAT, есть MASQUERADE. Насколько я понимаю, второе немного больше грузит систему. Если у меня постоянное соединение и один внешний IP, мне достаточно SNAT?

Вот этого я сказать не могу (может, в студии есть знатоки?Улыбка ): Делал через MASQUERADE, чего и Вам желаю ;-)

Аватар пользователя o3one

Re: 3 сетевые карточки на шлюзе

С другой винды всё видно. Iptables включён.

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

Аватар пользователя Meloman

Re: 3 сетевые карточки на шлюзе

Букварь читали? (и часть 3 в особенности)

Аватар пользователя o3one

Re: 3 сетевые карточки на шлюзе

Как понял из статьи, в моём случае будет

iptables -A FORWARD -s 172.20.0.0/24 -j ACCEPT
iptables -A FORWARD -d 172.20.0.0/24 -j ACCEPT

Тогда как функции скрытия

iptables -t nat -A POSTROUTING -s 172.20.0.0/24 -j SNAT --to-source 172.20.0.1

Спс за "букварь". Вечером буду ковыряться дальше. Надеюсь, теперь всё получится.

Аватар пользователя Meloman

Re: 3 сетевые карточки на шлюзе

У меня было по-другому:

Цитата:
[root@meloman log]# iptables -t nat -A POSTROUTING -o ppp0 -j MASQUERADE
[root@meloman log]# iptables -P FORWARD DROP
[root@meloman log]# iptables -A FORWARD -m state --state ESTABLISHED,RELATED,NEW -j ACCEPT
[root@meloman log]# iptables -A FORWARD -p tcp --dport 110 -i eth0 -j ACCEPT
[root@meloman log]# iptables -A FORWARD -p tcp --dport 25 -i eth0 -j ACCEPT
[root@meloman log]# iptables -A FORWARD -p tcp --dport 80 -i eth0 -j ACCEPT

Открыл почту и 80й порт пользователю/машине, которая подключена к моему компу через eth0. Если Вам нужна безопасность, то лучше тоже - настроить шлюз на сетевую карту. Если не критично, то можно сделать так:
iptables -P FORWARD ACCEPT
iptables -P INPUT ACCEPT
iptables -P OUTPUT ACCEPT
iptables -F
iptables -F -t nat
Правда, это убьет все Ваши правила для iptables.
Пы.Сы.
Статью еще раз прочитайте. Правила на eth0 взяты оттуда.

Аватар пользователя o3one

Re: 3 сетевые карточки на шлюзе

Meloman писал(а):
У меня было по-другому:
Цитата:

[root@meloman log]# iptables -t nat -A POSTROUTING -o ppp0 -j MASQUERADE
[root@meloman log]# iptables -P FORWARD DROP
[root@meloman log]# iptables -A FORWARD -m state --state ESTABLISHED,RELATED,NEW -j ACCEPT
[root@meloman log]# iptables -A FORWARD -p tcp --dport 110 -i eth0 -j ACCEPT
[root@meloman log]# iptables -A FORWARD -p tcp --dport 25 -i eth0 -j ACCEPT
[root@meloman log]# iptables -A FORWARD -p tcp --dport 80 -i eth0 -j ACCEPT
Открыл почту и 80й порт пользователю/машине, которая подключена к моему компу через eth0. Если Вам нужна безопасность, то лучше тоже - настроить шлюз на сетевую карту. Если не критично, то можно сделать так:

То есть, насколько я понимаю, тут 3 порта открываются только для конкретного интерфейса, остальное по умолчанию отбрасывается?

А iptables -A FORWARD -m state --state ESTABLISHED,RELATED,NEW -j ACCEPT - это разрешение уже открытых соединений? Упс... понятно, это разрешение любых установленных или новых...

Аватар пользователя DRVTiny

3 сетевые карточки на шлюзе

Цитата:
iptables -P FORWARD DROP
iptables -A FORWARD -m state --state ESTABLISHED,RELATED,NEW -j ACCEPT

Вторым правилом Вы разрешили прохождение фактически всего (за исключением XMAS, INVALID и прочих явно нелегальных пакетов) FORWARD-трафика. Зачем в таком случае нужны остальные правила (следующие после второго) - для меня полная загадка...

Аватар пользователя o3one

Re: 3 сетевые карточки на шлюзе

То есть первую строку в виде запрета всего по умолчанию, а все после второй - конкретные правила на разрешения, я верно понимаю?

Аватар пользователя DRVTiny

3 сетевые карточки на шлюзе

>а все после второй - конкретные правила?
Там вторая строка составлена некорректно, как минимум не должно быть "NEW", иначе получается, что второе правило просто отменяет дефолтную политику, а всё, что идёт после второго правила - не влияет уже ни на что.

Аватар пользователя Meloman

Re: 3 сетевые карточки на шлюзе

DRVTiny писал(а):
Зачем в таком случае нужны остальные правила (следующие после второго) - для меня полная загадка...

Meloman писал(а):
А если учесть, что в сетевых вопросах я плаваю, то признаюсь- понял, как сделать то, что мне нужно спустя 5го или 7го прочтения

Ну, видимо, мало читал =) Остальными строками я задавал разрешение для интерфейса eth0 на порты 110... . Видимо, этого было не нужно делать. Хотя, нет: Вспомнил, что когда их убирал, то удаленная машина не могла получить почту.

Аватар пользователя o3one

Re: 3 сетевые карточки на шлюзе

DRVTiny писал(а):
Там вторая строка составлена некорректно, как минимум не должно быть "NEW", иначе получается, что второе правило просто отменяет дефолтную политику, а всё, что идёт после второго правила - не влияет уже ни на что.

Да, я понимаю. Но фактически эта строка вообще не нужна, если по дефолту всё закрыто. А так, эти настройки касаются любого трафика, запрашиваемого с локальной машины? Не нужно ли по умолчанию (если чистые iptables) открывать, к примеру, 80 на шлюзе, если он используется в качестве веб-сервера?

И ещё одно: в локалке на одном из интерфейсов многим IP выданы псеводнимы вида nnn.local. Можно ли их как-нибудь сделать доступными именно через псевдонимы? Основной ДНС прописан из другой сетки, которая тянет инет.

Аватар пользователя Meloman

Re: 3 сетевые карточки на шлюзе

o3one писал(а):
То есть первую строку в виде запрета всего по умолчанию, а все после второй - конкретные правила на разрешения, я верно понимаю?

Первая строка(iptables -t nat -A POSTROUTING -o ppp0 -j MASQUERADE) оглашает, что началась первая часть марлезонского балета: макарад на интерфейс ppp0, который смотрит в локалку. А уже после этого, начиная с `iptables -P FORWARD DROP` читать:

Цитата:
То есть первую строку в виде запрета всего по умолчанию, а все после второй - конкретные правила на разрешения, я верно понимаю?

Аватар пользователя o3one

Re: 3 сетевые карточки на шлюзе

Я писал "первую" по предыдущему посту. А про маскарад я понял. Хотя ещё поиграюсь с SNAT, наверное.

RSS-материал