Я только что установил сервер Ubuntu 10.04 LTS на старом настольном ПК с двухпортовой сетевой картой, которую я хотел бы использовать в качестве маршрутизатора для моей домашней сети. Как мне настроить интерфейсы, чтобы интернет-соединение передавалось через сервер?
2 ответа
Первым шагом при настройке Linux в качестве маршрутизатора является включение переадресации IP:
$ echo "1" > /proc/sys/net/ipv4/ip_forward
Теперь ОС может маршрутизировать пакеты между интерфейсами.
Затем используйте iptables
и netfilter для создания правил дорожного движения.
Я бы предложил использовать интерфейс iptables
и Netfilter для настройки маршрутизатора и управления правилами и политиками интерфейса.
Если вы предпочитаете графический интерфейс, посмотрите другие полезные ответы на этой странице.
Если вы хотите взломать командную строку и ощутить истинную мощь Силы, попробуйте отличный интерфейс Shorewall для iptables
и netfilter, который позволит вам легко настроить маршрутизатор прямо сейчас. Тем не менее, по мере того, как вы узнаете больше о маршрутизации, Shorewall позволит все более детализировать конфигурации и управлять сетевым потоком на уровне пакетов.
Пакет shorewall доступен в репозиториях Ubuntu (выберите пакет shell или Perl). На сайте Shorewall есть отличная документация и полезные руководства для множества сценариев. Основные 2- или 3-интерфейсные примеры должны помочь вам.
Самый простой способ - использовать iptables. Ознакомьтесь с iptables на сайте сообщества Ubuntu. Вы также можете использовать что-то вроде firestarter для более приятного интерфейса.
Лично я бы порекомендовал использовать выделенный межсетевой дистрибутив, такой как ipcop, m0n0wall или систему «все в одном», такую как ClearOS или Untangle. Это упростит управление брандмауэром, а также предложит вам немало других функций (также со встроенной простотой).