Решено:Ubuntu: Раздача интернета

Для новичков как вообще в Linux, так и в конкретной теме, к которой относится вопрос.

Модератор: Bizdelnick

suhanov
Сообщения: 92
ОС: RedHat 9; Ubuntu 6.06.1 LTS

Решено:Ubuntu: Раздача интернета

Сообщение suhanov »

Здравствуйте!
Абсолютно чайниковый вопрос: есть ПК с установленной Ubuntu, в нём две сетевухи - одна смотрит в локалку, другая - в интернет. Каким образом через этот ПК можно раздавать интернет другим ПК из локальной сети?
Спасибо сказали:
Аватара пользователя
VisualN
Сообщения: 213
ОС: Gentoo Linux

Re: Решено:Ubuntu: Раздача интернета

Сообщение VisualN »

ip_или_подсть_кому_расшарить это например 10.0.0.2 или 10.0.0.0/24
echo 1 > /proc/sys/net/ipv4/ip_forward #разрешаем форвардинг
iptables -A FORWARD -s ip_или_подсть_кому_расшарить -j ACCEPT #разрешаем форвардить пакеты с определенного ip или подсети
iptables -A FORWARD -d ip_или_подсть_кому_расшарить -j ACCEPT #тоже самое только в другую сторону
iptables -t nat -A POSTROUTING -s ip_или_подсть_кому_расшарить -j MASQUERADE #собственно поднимаем сам NAT
Nothing ever changes...
Спасибо сказали:
suhanov
Сообщения: 92
ОС: RedHat 9; Ubuntu 6.06.1 LTS

Re: Решено:Ubuntu: Раздача интернета

Сообщение suhanov »

Ругается:
suhanov@server:~$ sudo echo 1 > /proc/sys/net/ipv4/ip_forward
bash: /proc/sys/net/ipv4/ip_forward: Permission denied
Спасибо сказали:
Аватара пользователя
Mind Freedom
Сообщения: 207

Re: Решено:Ubuntu: Раздача интернета

Сообщение Mind Freedom »

А) Не установлен пакет sudo
Б) Обычно sudo для запуска требует пароль суперпользователя (root).Возможно, он введен неправильно.

Вобщем, эту команду надо выполнять с правами root.
Как вариант, вместо sudo использовать su
Hey, what do you see? Something beautiful, something free?
--------------------
ArchLinux current/KDE 3.5/kernel 2.6.17
Спасибо сказали:
Аватара пользователя
stannum
Сообщения: 322
Статус: Свободолюбитель
ОС: Debian GNU/Linux unstable

Re: Решено:Ubuntu: Раздача интернета

Сообщение stannum »

suhanov писал(а):
11.10.2006 12:44
Ругается:
suhanov@server:~$ sudo echo 1 > /proc/sys/net/ipv4/ip_forward
bash: /proc/sys/net/ipv4/ip_forward: Permission denied

а тогда в поправь соотствующим образом одноименный параметр в /etc/sysctl.conf
А вместо этого:
iptables -A FORWARD -d ip_или_подсть_кому_расшарить -j ACCEPT #тоже самое только в другую сторону
делай
iptables-A FORWARD -d ip_или_подсть_кому_расшарить -m state --state ESTABLISHED,RELATED -j ACCEPT
так оно безопаснее будет.
Спасибо сказали:
suhanov
Сообщения: 92
ОС: RedHat 9; Ubuntu 6.06.1 LTS

Re: Решено:Ubuntu: Раздача интернета

Сообщение suhanov »

stannum писал(а):
11.10.2006 13:28
а тогда в поправь соотствующим образом одноименный параметр в /etc/sysctl.conf

Поправил.

stannum писал(а):
11.10.2006 13:28
А вместо этого:
iptables -A FORWARD -d ip_или_подсть_кому_расшарить -j ACCEPT #тоже самое только в другую сторону
делай
iptables-A FORWARD -d ip_или_подсть_кому_расшарить -m state --state ESTABLISHED,RELATED -j ACCEPT
так оно безопаснее будет.

Ни с первым, ни со вторым вариантом не помогает - на соседней бричке инета нету. Ставил squid - на соседней бричке, после длительного раздумья, выдаётся генерируемая squid'ом страничка, что таймаут и что-то о "determinate host IP". Что ещё можно поковырять? Заранее благодарен за любые советы!
Спасибо сказали:
Аватара пользователя
SHar
Сообщения: 182
Статус: Уйду я от вас...
ОС: Arch,FreeBSD,Mac 10.6.4

Re: Решено:Ubuntu: Раздача интернета

Сообщение SHar »

suhanov писал(а):
12.10.2006 09:00
stannum писал(а):
11.10.2006 13:28

а тогда в поправь соотствующим образом одноименный параметр в /etc/sysctl.conf

Поправил.

stannum писал(а):
11.10.2006 13:28
А вместо этого:
iptables -A FORWARD -d ip_или_подсть_кому_расшарить -j ACCEPT #тоже самое только в другую сторону
делай
iptables-A FORWARD -d ip_или_подсть_кому_расшарить -m state --state ESTABLISHED,RELATED -j ACCEPT
так оно безопаснее будет.

Ни с первым, ни со вторым вариантом не помогает - на соседней бричке инета нету. Ставил squid - на соседней бричке, после длительного раздумья, выдаётся генерируемая squid'ом страничка, что таймаут и что-то о "determinate host IP". Что ещё можно поковырять? Заранее благодарен за любые советы!

посмотри /etc/resolv.conf/ .Там должны быть строчки вида

Код: Выделить всё

domain твой домен
nameserver 127.0.0.1
nameserver основной DNS сервер
nameserver вторичный DNS

Если после этого не получится то дело в squid-> на opennet.ru
Спасибо сказали:
suhanov
Сообщения: 92
ОС: RedHat 9; Ubuntu 6.06.1 LTS

Re: Решено:Ubuntu: Раздача интернета

Сообщение suhanov »

SHar писал(а):
12.10.2006 09:22
посмотри /etc/resolv.conf/ .Там должны быть строчки вида

Код: Выделить всё

domain твой домен
nameserver 127.0.0.1
nameserver основной DNS сервер
nameserver вторичный DNS

Если после этого не получится то дело в squid-> на opennet.ru

squid снёс - пробую без него - такая же фигня. В /etc/resolv.conf всё прописано как надо. Заметил такую ещё ерунду - после перезагрузки сбрасываются настройки iptables, приходится прописывать снова. =(
И где в ubuntu хранятся настройки iptables? Вот в RH они в /etc/sysconfig/... А тут?
Спасибо сказали:
Аватара пользователя
SHar
Сообщения: 182
Статус: Уйду я от вас...
ОС: Arch,FreeBSD,Mac 10.6.4

Re: Решено:Ubuntu: Раздача интернета

Сообщение SHar »

suhanov писал(а):
12.10.2006 09:38
SHar писал(а):
12.10.2006 09:22

посмотри /etc/resolv.conf/ .Там должны быть строчки вида

Код: Выделить всё

domain твой домен
nameserver 127.0.0.1
nameserver основной DNS сервер
nameserver вторичный DNS

Если после этого не получится то дело в squid-> на opennet.ru

squid снёс - пробую без него - такая же фигня. В /etc/resolv.conf всё прописано как надо. Заметил такую ещё ерунду - после перезагрузки сбрасываются настройки iptables, приходится прописывать снова. =(
И где в ubuntu хранятся настройки iptables? Вот в RH они в /etc/sysconfig/... А тут?

Зря снес =).Пользователями как рулить?
Попробуй iptables-save.После перезагрузки должно сохраниться.
Спасибо сказали:
suhanov
Сообщения: 92
ОС: RedHat 9; Ubuntu 6.06.1 LTS

Re: Решено:Ubuntu: Раздача интернета

Сообщение suhanov »

SHar писал(а):
12.10.2006 09:42
Зря снес =).Пользователями как рулить?
Попробуй iptables-save.После перезагрузки должно сохраниться.

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

По iptables-save - сейчас попробую, спасибо.
Спасибо сказали:
Аватара пользователя
stannum
Сообщения: 322
Статус: Свободолюбитель
ОС: Debian GNU/Linux unstable

Re: Решено:Ubuntu: Раздача интернета

Сообщение stannum »

suhanov писал(а):
12.10.2006 09:47
По iptables-save - сейчас попробую, спасибо.

Сделай так: настрой все правила iptables, сделай iptables-save > /etc/ifup.rules
Открой /etc/network/interfaces:
iface eth0 inet static
[.. ... ..]
pre-up iptables-restore < /etc/ifup.rules <= добавь вот это

После чего при каждом поднятии интерфейса eth0 у тебя буду загружаться из файла правила фаера

Еще: для того чтобы другие машины могли ходить наружу т.е. в нет, тебе надо прописать у клиентов, то что сказали выше про /etc/resolv.conf и ip-адрес роутера как шлюз по-умолчанию, например, для линукс-box:
route add default gw внутренний_адрес_машины_смотрящей_в_нет
для венды смотри настройки протокола tcp/ip в свойствах подключения
Спасибо сказали:
Аватара пользователя
stannum
Сообщения: 322
Статус: Свободолюбитель
ОС: Debian GNU/Linux unstable

Re: Решено:Ubuntu: Раздача интернета

Сообщение stannum »

Тут на досуге случайно вычитал, можно оказывается в Debian просто положить скрипт, настраивающий iptables, в /etc/network/if-pre-ip.d/ - только нужно чтобы разрешения на скрипт были: -rwxr-xr-x - иначе не выполнится (если право на запись будет у кого-то друго, кроме root). Но и способ выше не плох. Но если применяется динамический ip-адрес, и нужно его использовать в правилах, лучше воспользоваться вторым способом, он для этого и придуман. :)
А поскольку Ubuntu is Debian based - этот способ катит, ИМХО, и в нем.
Спасибо сказали:
suhanov
Сообщения: 92
ОС: RedHat 9; Ubuntu 6.06.1 LTS

Re: Решено:Ubuntu: Раздача интернета

Сообщение suhanov »

Спасибо вам всем - доковырялся - инет на соседних бричках есть! Поставил squid - через него тоже соседние брички ходят. А вот как теперь сделать так, чтобы напрямую соединяться клиенты не смогли, а ходили бы только через squid?

Ну и так - пара вопросов:
1. Чем лучше всего анализировать логи squid'а? Пока порадовал Calamaris, но, может быть, есть что-нибудь лучше? Надо, чтобы было видно, сколько на каждый ip пришло/ушло объёма, и кто куда ходил? Результат - текстом.
2. Нужно ли что-либо править в конфигах bind'а для большей безопасности. Прописал только форвардинг.
3. Какие правила следует назначить iptables'у для пущей безопасности?

Заранее благодарен за любые ответы!
Спасибо сказали:
Аватара пользователя
VisualN
Сообщения: 213
ОС: Gentoo Linux

Re: Решено:Ubuntu: Раздача интернета

Сообщение VisualN »

Для анализа логов squid советую sarg
Nothing ever changes...
Спасибо сказали:
Аватара пользователя
SHar
Сообщения: 182
Статус: Уйду я от вас...
ОС: Arch,FreeBSD,Mac 10.6.4

Re: Решено:Ubuntu: Раздача интернета

Сообщение SHar »

suhanov писал(а):
13.10.2006 05:26
Спасибо вам всем - доковырялся - инет на соседних бричках есть! Поставил squid - через него тоже соседние брички ходят. А вот как теперь сделать так, чтобы напрямую соединяться клиенты не смогли, а ходили бы только через squid?

Код: Выделить всё

 iptables -t nat -A PREROUTING -s 192.168.0.0/24 -p tcp --destination-port 80 -j REDIRECT --to-port 8080
 iptables -t nat -A POSTROUTING -s 192.168.0.0/24 -j MASQUERADE

где 192.168.0.0/24 -внутренняя сеть
--destination-port 80 -запросы поступающие на сервак
8080 -входящий порт squid
Спасибо сказали:
IgorG
Сообщения: 9
ОС: FC 5

Re: Решено:Ubuntu: Раздача интернета

Сообщение IgorG »

Думаю не стоит открывать новую тему, поэтому напишу здесь.
Мне нужно раздать интернет не 5-й федоре. 2 интерфейса, один подключен к провайдеру, другой к хабу. Для начала вопрос по компиляции ядра, во всех руководствах по настройке шлюза начинают именно с этого, но нигде не обьясняют зачем это делать. Для обновления системы? Для перестройки системы с целью добавления новых функций? Или еще для чего. Ядро у меня 2.6.15-1.2054_FC5 (uname -r), нужно ли мне перекомпилировать ядро? И насколько советы для Ubuntu, данные выше подойдут для федоры? Шлюзы до этого я даже на винде не делал, так что хочется что бы объясняли популярнее. :)
Спасибо сказали:
MIX@
Сообщения: 111
ОС: Deepstyle current (Slackware)

Re: Решено:Ubuntu: Раздача интернета

Сообщение MIX@ »

Ядро пересобирают для пущей безопасности и производительности, а так же для добавления определённых функций
Подойдёт любой фак по iptables
Добро должно быть с кулаками
Спасибо сказали:
IgorG
Сообщения: 9
ОС: FC 5

Re: Решено:Ubuntu: Раздача интернета

Сообщение IgorG »

1. То есть мне перекомпиляция ядра не нужна?
2. iptables будет достаточно, или будут нужны другие программные пакеты?
Спасибо сказали:
MIX@
Сообщения: 111
ОС: Deepstyle current (Slackware)

Re: Решено:Ubuntu: Раздача интернета

Сообщение MIX@ »

1. То есть мне перекомпиляция ядра не нужна?

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

2. iptables будет достаточно, или будут нужны другие программные пакеты?

iptables - это в основном firewall + NAT, ещё, вероятно, понадобится прокся - squid
Добро должно быть с кулаками
Спасибо сказали:
suhanov
Сообщения: 92
ОС: RedHat 9; Ubuntu 6.06.1 LTS

Re: Решено:Ubuntu: Раздача интернета

Сообщение suhanov »

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