Translate

настройка шлюза локальной сети, Ubuntu, Debian



Настройка подключения к интернету через pppoe







Запускаем в консоли от имени суперпользователя:


pppoeconf


Начнётся процедура настройки, в которой нам предстоит ответить на несколько вопросов. Процедура понятная и не очень сложная. Важнее то, что после настройки у нас появится новый сетевой интерфейс: ppp0.


Сетевой интерфейс ppp0 работает на интерфейсе eth0. Его можно включить и выключить следующими командами:


# включение интерфейса с заданными ранее настройками:

pon dsl-provider

# выключение интерфейса:

poff


При включении ppp0 все необходимые сетевые настройки передаёт нам провайдер, вернее, его сервер pppoe. Для того, чтобы в отсутствие интернета безболезненно пользоваться локальной сетью провайдера, надо сделать ещё несколько телодвижений.


Настраиваем интерфейс eth0.


Файл /etc/network/interfaces


auto eth0


iface eth0 inet static


# Настройки для подключения, выданные провайдером:


address ip_адрес


netmask маска_подсети


gateway ip_адрес_шлюза










Прописываем адреса DNS провайдера, чтобы иметь доступ к локальным ресурсам по именам.


Файл /etc/resolv.conf


# Снова настройки от провайдера:nameserver ip_адрес_DNS1

nameserver ip_адрес_DNS2




В моём случае для работы с провайдерской локалкой больше ничего и не надо.
Настройка подключения между домашними компьютерами











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


Выбираем подсеть для домашней локальной сети, желательно чтобы она не пересекалась с адресами провайдера. Допустим, такую: 10.0.0.0/24. Это означает, что адреса нашей сети будут иметь вид 10.0.0.х, где х - число от 1 до 255, с маской подсети255.255.255.0.


Задаём адреса из выбранной подсети клиенту и серверу. Когда связь между компьютерами появится - идём дальше.
Настройка трансляции пакетов между домашней локальной сетью и интернетом


Для этой задачи воспользуемся возможностями файрвола iptables.


Проверяем наличие iptables в системе (команда вернёт список пакетов, содержащих название iptables):


dpkg -l | grep iptables


И если его нет - устанавливаем (от имени суперпользователя).


apt-get install iptables


Настройка iptables требует достаточно специфичных навыков и знаний, так что нам очень повезло, что для дебианоподобных систем (а Ubuntu - как раз одна из них) есть пакет arno-iptables-firewall. Установим его, также от имени суперпользователя.


apt-get install arno-iptables-firewall

Ещё в процессе установки программа потребует ввода данных для настройки. Но эта настройка - предварительная и ответов на заданные вопросы будет недостаточно. Чтобы настроить iptables полностью, нужно будет запустить команду реконфигурирования:



dpkg-reconfigure arno-iptables-firewall




При реконфигурировании окна с запросами будут частично дублировать те, что возникали при установке. В любом случае ориентируйтесь на снимки экрана ниже.






Основная настройка файрвола, которая подходит для большинства задач, может быть создана ответом на несколько вопросов. Эта опция будет предпочтительнее для тех, кто не чувствует себя уверенно в настройках файрвола.


Если ответите отрицательно, файрвол не заработает до тех пор, пока вы вручную не поменяете настройки в его конфигурации.


Хотите настроить файрвол с помощью конфигуратора пакетов?


Да, конечно хотим.













Внешние сетевые интерфейсы соединяют локальную машину с небезопасными сетями (например, с интернетом). Файрвол будет разрешать только те соединения, которые явно заданы комбинациями портов источника/назначения на этих интерфейсах. Вы должны задать все внешние интерфейсы (например, eth0 и/или ppp0).


Для интерфейса ppp, который пока ещё не существует, вы можете использовать маску устройства под именем «ppp+», но использование ppp+ возможно только тогда, когда нет никаких других интерфейсов ppp!


Если не будет задано никаких интерфейсов, никакие настройки файрвола не будут изменены.


Несколько интерфейсов может быть задано с помощью разделителя - пробела.


Предупреждение о том, что в следующем окне надо будет указать все внешние интерфейсы через пробел.













Внешние сетевые интерфейсы:


В нашем случае это ppp0 и eth0. Интерфейс ppp0 существует и используется при включенном интернете, eth0 для провайдерской локалки.













Данный компьютер может использовать DHCP для получения адреса от интернет-провайдера (ИП). Это верно практически всегда в том случае, если вы пользуетесь непостоянным (например, модемным) подключением.


Если использование DHCP не указано явно, файрвол будет блокировать весь сетевой трафик, связанный с запросами DHCP.


Если вы не уверены - оставьте эту настройку включенной.


Внешние интерфейсы используют DHCP?


Получает ли наш сервер внешний адрес по DHCP или он статический? В нашем конкретном случае это не имеет значения, но выберем динамику.













Политика файрвола по умолчанию - блокировать все входящие соединения на внешние интерфейсы. Если данный компьютер предоставляет службы внешнему миру (например, является веб-сервером интернета), они должны быть заданы явно.


Укажите пожалуйста номера портов TCP служб, которые должны быть доступны из внешнего мира. Часто используемые номера портов: 80 (http), 443 (https) или 22 (ssh).


Вы можете указать не только один порт, но и диапазон (например, 10000:11000). Несколько записей должны быть разделены пробелом.


Если сомневаетесь - не вводите ничего.















Открыть внешние порты TCP:


Какие TCP порты открываем для интернета? В подавляющем большинстве случаев, особенно в нашем - никакие, оставляем поле пустым.













Политика файрвола по умолчанию - блокировать все входящие соединения на внешние интерфейсы. Если данный компьютер предоставляет службы внешнему миру (например, является веб-сервером интернета), они должны быть заданы явно.


Укажите пожалуйста номера портов UDP служб, которые должны быть доступны из внешнего мира.


Вы можете указать не только один порт, но и диапазон (например, 10000:11000). Несколько записей должны быть разделены пробелом.


Если сомневаетесь - не вводите ничего.


Открыть внешние порты UDP:


Короче, то же самое для портов UDP.













В целях увеличения безопасности файрвол может быть настроен так, чтобы игнорировать широковещательные ICMP запросы (пинги). Иногда это может быть полезно (на первый взгляд хост кажется выключенным), иногда наоборот (затрудняет диагностику, по той же причине).


Если сомневаетесь - оставьте настройку выключенной.


Компьютер должен пинговаться из внешнего мира?


Выбираем можно ли пинговать сервер из интернета.













Внутренние сетевые интерфейсы соединяют данный компьютер с доверенными сетями (например, с офисной или домашней). Файрвол разрешит все попытки входящих соединений на эти интерфейсы. Если вы зададите эти интерфейсы, можно будет обеспечить доступ внутренним сетям к интернету через эту машину. Если таких интерфейсов нет оставьте поле пустым.


Несколько интерфейсов может быть задано с помощью разделителя - пробела.


Внутренние интерфейсы:


Выбираем внутренний сетевой интерфейс, у нас это eth1, как мы и договаривались раньше.













Вы должны задать подсети, которые подключены к внутренним сетевым интерфейсам. Узлы внутренних сетей могут подключаться ко всем службам данного компьютера.


Задайте подсети по правилам CIDR (например, 192.168.1.0/24). Если у вас несколько внутренних сетей, задайте каждую через пробел.


Внутренние сети:


Задаём подсеть нашей домашней локалки.













Если подключённые внутренние сети должны иметь доступ к внешнему миру (например, к интернету) через файрвол, должен быть включен маскарадинг (NAT).


При любых сомнениях оставьте эту настройку выключенной ради безопасности.


Вы хотите включить NAT?


Самое главное. Межсетевая трансляция пакетов, ради чего всё это и затевалось. Включаем обязательно.













Если вы хотите ограничить доступ ко внешним сетям, можно определить разрешённые внутренние подсети по правилам CIDR (например, 192.168.1.0/24). Также можно задать отдельные узлы по их IP-адресам. Если у вас много внутренних сетей и/или узлов, их можно задать через пробелы.


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


Если сомневаетесь - ничего не вводите.


Предупреждение о том, что сейчас мы должны будем ввести адреса локальной сети, которым будет разрешён выход в интернет.













Внутренние сети с доступом во внешние сети:


Задаём разрешённые адреса, в нашем случае это вся подсеть.













Из соображений безопасности новые настройки файрвола не применяются автоматически. Возможно, вы захотите проверить конфигурацию файрвола в/etc/arno-iptables-firewall/firewall.conf, особенно после обновления версии, так как переменные при этом могут измениться.


В случае, когда понадобится применить новые настройки файрвола вручную до следующей перезагрузки, введите: 'invoke-rc.d arno-iptables-firewall start'.


Если вам не нужна ручная проверка, настройки файрвола могут быть применены сейчас.


Должен ли файрвол быть (пере)запущен прямо сейчас?


Да, конечно. Почему бы и нет.
Что теперь


Теперь у нас есть практически полноценный шлюз на убунте и доступ к интернету из домашней локальной сети.













Если нужно подключить к инету не две, а больше машин - используем вместо кроссовера свич и назначаем адреса в диапазоне от 10.0.0.3 до 10.0.0.255.


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


http://sudouser.org.ua/index.php?newsid=28

Комментариев нет:

Отправить комментарий

Постоянные читатели