Опыт создания домашнего Wi-Fi маршрутизатора. Часть 2. Установка и настройка ПО
И снова здравствуйте!
В первой части статьи я рассказывал о «железной» составляющей будущего роутера. Поскольку без софта даже самое расчудесное железо, естественно, работать не будет, следовательно требовалось снабдить аппарат соответствующей программной «начинкой».
Когда я затевал всё это движение, я предполагал, что будет непросто. Но не предполагал, что настолько. В одном из комментариев к предыдущей части статьи я клятвенно пообещал рассказать о нижеследующем «к выходным». Благоразумно умолчал к каким именно. 🙂 Тут ещё умудрился прихворнуть не вовремя, но всё-таки сдерживаю своё обещание.
- материнская плата Intel D2500CC с комплектным двухядерным 64-bit процессором Intel Atom D2500, двумя гигабитными сетевыми интерфейсами
- оперативная память SO-DIMM DDR-3 1066 4Gb Corsair
- SSD-накопитель Crucial M500 120 GB
- сетевая карта 1000 Mbit D-Link DGE-528T
- mini-PCI-E Wi-Fi карта Intel 7260.HMWWB 802.11 a/b/g/n/ac + Bluetooth 4.0
- всё это хозяйство упаковано в корпус Morex T-3460 60W
Первым делом я определил для себя круг задач, которые будет выполнять маршрутизатор, чтобы в дальнейшем мне было проще его админить.
Ещё раз уточню, что эти ваши интернеты приходят ко мне по 100 Мбитному каналу (тариф, естественно, даёт несколько меньшую скорость, но не суть). Получилось, собственно, вот что:
- Доступ в интернет со всех устройств, имеющихся дома в распоряжении +n устройств, появляющихся эпизодически или вообще однократно
- Домашняя локалка
- Соответственно, маршрутизация трафика из/в интернет/локальная сеть
- Файлохранилище (доступ по FTP или Samba)
- Торрентокачалка
- ed2k-сеть (ибо очень круто развита у провайдера)
- web-сервер
В перспективе:
- домен
- видеонаблюдение
- элементы «умного дома»
чёрт в ступемного чего интересного
Естественным в этой ситуации было выбирать из *nix-based систем. Некоторое время пришлось потратить на изучение матчасти, рыская по сети. В итоге я проделал следующий путь…
1. FreeBSD 10.1-RELEASE
Всё было замечательно, система встала, но меня ждал неприятный сюрприз, о котором я, откровенно говоря, знал, но решил-таки проверить на практике: FreeBSD напроч отказывалась видеть Wi-Fi карточку. Вернее видеть-то она её видела, но только адрес и название вендора, а что это и с чем её едят, фряха понимать не желала (драйвер устройства значился как none1). Кроме того, дальнейшее чтение мануала выявило, что в режиме точки доступа во FreeBSD работают только Wi-Fi карты на основе набора микросхем Prism. Печальбеда. Да, нашёл я также и информацию, что моя карточка в настоящий момент вообще не имеет драйвера под фряху. Даже портированного.
10. Debian 7.7.0
Расстраивался я недолго: не состоялась фряха — возьму старый добрый Debian. Установил с netinstall-образа базовую систему без графического окружения. Долго пытался понять, что не так. Стабильный релиз Debian в данный момент 7.7.0, имеет ядро версии 3.2. В этом ядре опять же нет поддержки моей многострадальной Wi-Fi сетевушки. Полез на ЛОР искать ответ, в итоге получил неутешительные выводы: надо ставить ядро посвежее (в случае Debian — тот ещё геморрой), пляски с бубном ядрами, по мнению гуру, не труъ Debian-way (так прямо и сказали: хочешь перекомпилять ядра — выбери другой дистрибутив).
11. Ubuntu Server 14.04 LTS
Плюнув на попытки круто провести время покрасноглазить, я взял знакомый и уважаемый мной дистрибутив. Уже более года он (правда версии 12.04 LTS ) вертится у меня на сервере, раздающем плюшки в сети провайдера.
Из плюсов: стабильность, простота установки, настройки и администрирования, куча документации.
Из минусов: необходимость дорабатывать напильником, поскольку «искаропки» получается толстоват и несколько неповоротлив.
Установка
По сути не представляет ничего сложного и аналогична таковой в Debian. Производится в диалоговом режиме text-mode. Описывать детально не вижу смысла, т.к. всё это уже десятки раз пережёвано и валяется на множестве ресурсов (начиная с официальных сайтов на разных языках и заканчивая местечковыми форумами).
Перед началом любых манипуляций с накопителем рекомендуется обновить прошивку, но на моём оказалась самая свежая, поэтому данный шаг я пропустил.
Первой необходимой манипуляцией при разметке накопителя является выравнивание разделов диска. Если кратко, то каждый раздел должен начинаться с сектора кратного 8. Первый раздел рекомендовано начинать с 2048 сектора (это связано с расположением в начале накопителя MBR или GPT , а «отступ» в 1 Мб берётся с запасом.
При разметке я создал 3 раздела:
Как видно, все разделы начинаются с секторов, кратных 8. Таким образом доступ будет осуществляться с обращением по правильному сектору, что поможет сберечь нежный ресурс накопителя.
Далее в опциях монтирования разделов в /etc/fstab следует добавить discard — для включения TRIM и noatime — для отключения записи в метаданные времени последнего доступа к файлу.
Все остальные советы, нагугленные на просторах сети, как то увеличение времени между сбросами буферов на диск (опция commit=[time, sec.]), отключение «шлагбаума» (опция barrier=0) и прочее не внушили мне доверия в плане приобретаемой полезности в ущерб сохранности данных и безопасности.
Кроме того, я не стал выделять отдельный раздел для swap, решив, что оперативной памяти мне должно хватить для поставленных задач. Если же всё-таки возникнет необходимость в подкачке, ничто не мешает сделать swap в виде файла и смонтировать его как раздел.
Также было принято волевое решение вынести временные файлы (/tmp) в tmpfs.
В процессе установки задаются общие параметры, как то: локаль, параметры времени/геопозиции, имя системы, а также создаётся новый юзер и пароль к нему. Далее следует выбор устанавливаемого программного обеспечения, в котором я пометил для установки следующее:
- OpenSSH server
- DNS server
- LAMP server
- Print server
- Samba file server
После загрузки в свежеустановленную систему проявилась одна крайне неприятная особенность (кстати, в Debian было то же самое): после инициализации драйверов вырубалось видео, монитор переходил в режим ожидания, и становилось непонятно система зависла или просто что-то не так с выводом. Обнаружилось, что доступ по ssh есть, и можно было бы на этом остановиться, но всегда может возникнуть ситуация, когда необходимо получить физический доступ к маршрутизатору (например, шаловливые ручонки админа поковырялись в настройках сети, и доступ через консоль категорически пропал %) ). Посёрфиф по форумам я наткнулся на решение (оказывается баг известен и проявляется именно на этой материнской плате):
add to /etc/modprobe.d/blacklist.conf:
blacklist gma500_gfx
run
sudo update-initramfs -u
sudo reboot
Пруф.
В случае с Debian — /etc/modprobe.d/fbdev-blacklist.conf.
После перезагрузки всё заработало.
Настройка сети
no talloc stackframe at ../source3/param/loadparm.c:4864, leaking memory
Проблема связана с библиотекой авторизации libpam-smbpass, можно просто её снести, а можно поступить более изящно:
снять пометку с SMB password synchronization, что отключает синхронизацию паролей системных пользователей и пользователей Samba.
Устанавливаем все доступные обновления:
И приступаем к настройке сетевых интерфейсов. В маршрутизаторе 4 физических интерфейса и loopback:
- eth0 — «смотрит» в интернет, получает настройки по DHCP
- eth1 и em0 — интегрированные в материнку сетевые адаптеры
- wlan0 — как нетрудно догадаться, беспроводной интерфейс Wi-Fi
Устанавливаем hostapd и переводим беспроводной интерфейс в режим Master:
К моему величайшему сожалению такой способ не сработал, и команда вывалилась с ошибкой, поэтому я прибегнул к альтернативному способу:
Теперь необходимо сконфигурировать все сетевые интерфейсы, чтобы было удобнее с ними работать. Я решил объединить встроенные сетевушки и Wi-Fi в мост, чтобы управлять этим хозяйством как единым целым при раздаче IP-адресов по DHCP, маршрутизации и пр. Приводим к следующему виду /etc/network/interfaces:
Включаем автоматический запуск hostapd при загрузке системы, для этого в /etc/default/hostapd раскомментируем и редактируем строки:
Далее, не мудрствуя лукаво, я настроил общий доступ. Скрипт для настройки iptables и ip-форвардинга я взял отсюда, привёл его в соответствие своим реалиям и настроил автозапуск. В результате iptables наполняются необходимым содержимым при загрузке системы.
Логично, что нужно текже настроить DHCP-сервер. Решив упростить задачу до минимума, я установил dnsmasq и снёс имеющийся в наличии и конфликтующий с ним bind9. Конфиг прост:
На самом деле в конфиге ещё куча закомментированных опций, которые позволяют производить очень fine tuning, но такого набора вполне хватает для корректной работы. В принципе, с этого момента аппарат уже работает как домашний маршрутизатор.
После окончания основной настройки я установил и настроил transmission-daemon, aMuled и vsftpd. Собственно говоря, настройка данных сервисов достаточно тривиальна, останавливаться детально на ней не буду. Естественно, доступ к данным ресурсам имеется только из локальной сети, если хочется получить доступ извне, необходимо будет открыть соответствующие порты в iptables.
Вёб-сервер представляет из себя связку Apache 2.4.7 + MySQL Ver 14.14 Distrib 5.5.40. Пока не придумал, чем буду его заполнять: накатить готовый движок и баловаться с дизайном или же просто попрактиковаться в html и php. В любом случае сие имеет для меня прикладное значение. Возможно, в перспективе получится настроить вёб-интерфейс для мониторинга и управления маршрутизатором.
После всех манипуляций остаётся настроить ведение логов: по возможности привести настройки всех процессов, ведущих логи, выводить в них только критически важные уведомления и предупреждения. Идея заключается в снижении количества операций записи, а, соответственно, и негативного влияния на SSD.
Кроме того, следует настоятельно рекомендуется включить запуск по cron раз в сутки fstrim (для каждого раздела отдельно). Говорят, хуже не будет точно.
Ффух… Получилось несколько сумбурное описание моих мытарств с собственноручно собранным устройством, но удовлетворение от того, что всё работает просто неописуемо.
В комментарии к предыдущей части статьи многоуважаемый dmitrmax интересовался уровнем энергопотребления сборки. Ну что же, привожу примерные данные, которые мне удалось почерпнуть из открытых источников:
- процессор Intel Atom D2500 — до 10 Вт
- SSD-накопитель Crucial M500 — 3,6 Вт
По остальным крмплектующим данных сходу не нашлось, но практически везде в характеристиках сетевой карты и Wi-Fi модуля пишут «низкое энергопотребление». Если грубо накинуть на всё про всё 10 Вт (прочее железо, интегрированные сетевушки, etc), то итого получается около 25 Вт — не так уж и много, полагаю…
Вроде бы ничего не забыл, упомянул все ключевые моменты. За подробностями прошу в комментарии. Спасибо за внимание! (-;
UPD: Господин Revertis справедливо заметил, и я с ним соглашусь, что изначально при установке системы не следовало отмечать DNS-сервер, чтобы потом его сносить (речь о bind9), но в статье я описывал именно путь, который проделал — со всеми его ошибками и закоулками. И да, соглашусь, что nginx лучше, чем Apache, более того — я его даже заменю. Спасибо за совет.
Источник
Linuxoid
OpenSource forever
Обзор популярных Linux дистрибутивов-роутеров
Среди великого разнообразия Linux систем особо популярны специализированные дистрибутивы-роутеры. Такие решения, как правило, имеют небольшой размер, просты и понятны в установке и настройке, а имеющиеся функции позволяют подключить к Интернет домашнюю/корпоративную сеть, защитив ее от сетевых атак и вирусов. Дополнительно многие из них имеют функции контроля трафика, блокировки протоколов, антиспам фильтр, шейпер и много другое. Поэтому выбрать «своего защитника» достаточно не просто. Эта статья поможет тебе быстрее сориентироваться.
Untangle Gateway 7.0.1
ОС: Untangle Gateway 7.0.1
Сайт проекта: www.untangle.com
Дата выхода: 20 октября 2009 года
Лицензия: GPL
Аппаратные платформы: x86_32
Системные требования: CPU 800 МГц, 512 Mб RAM, 20 Гб диск, 2+ NIC
Дистрибутив Untangle, выпускаемый одноименной компанией, способен заменить коммерческие решения вроде ISA Server (Forefront TMG), обеспечивая безопасный доступ в Интернет. Рассчитан Untangle на небольшие и средние организации, имеющие 50-300 и более компьютеров (системные требования приведены для 50). Основой Untangle послужил Debian, все настройки производятся при помощи понятного, хотя и нелокализованного интерфейса. Для управления достаточно понимать суть, глубоких знаний Unix систем в обычной ситуации не потребуется. В отличие от других решений, использующих веб-технологии, интерфейс Untangle написан на Java, поэтому все изменения в консоли управления, статистика работы и так далее выводятся в реальном времени, что очень удобно. Хотя за использование Java пришлось заплатить повышенными системными требованиями.
Untangle выполнен в виде конструктора. После установки базовой системы в нем отсутствуют модули защиты, администратор самостоятельно выбирает то, что действительно необходимо, ориентируясь по задачам и имеющемуся оборудованию. В Untangle можно добавить 94 пакета (19 приложений), которые обеспечат: маршрутизацию, антивирусную/антифишинг/spyware защиту, обнаружение атак, анализ протоколов (7 уровень), контентную фильтрацию веб-трафика, VPN-подключения и многие другие функции. В их основе лежат популярные OpenSource приложения — Snort, ClamAV, SpamAssassin, Squid и т.д. От DoS’а и некоторых низкоуровневых сетевых атак защищает модуль собственной разработки «Attack Blocker», который предлагается бесплатно. Антиспам фильтр распознает спам в изображениях, для чего он подключается к OCR. Модуль анализа протоколов при необходимости способен ограничить работу любых протоколов прикладного уровня (P2P, IM и т.п., всего
100 протоколов), даже если они используют нестандартные порты.
По подписке распространяются некоторые проприетарные разработки — антивирус Касперского, eSoft Web Filter, модуль для работы с Active Directory, резервирование настроек и т.д. Для удобства имеются и готовые «сборки» модулей, предназначенные для различных сетей — Educations, Small Business, Professional, Government (в разных вариантах поставки, распространяются также по подписке). Бесплатный модуль Reports позволяет админу получать отчеты по всем возможным ситуациям — сетевой активности, протоколам, обнаруженному спаму и вирусам, активности пользователей. Результат можно сохранить в файлы форматов PDF, HTML, XLS, CSV и XML и отправить по e-mail.
Установка дистрибутива достаточно проста и занимает минимум времени: традиционно следуем по подсказкам мастера (во время установки можно выбрать русский язык), отвечая на вопросы. По ходу будут проверены системные требования, во всех позициях должно стоять ОК. Далее форматируем жесткий диск, процесс автоматизирован, для чего достаточно нажать кнопку «Продолжить«.
После перезагрузки активируется мастер, задача которого — помочь в настройке шлюза. В списке предложенных языков понятен только англицкий, русского здесь уже нет. Далее последовательно набираем пароль для учетной записи admin, выбираем часовой пояс, вводим регистрационную информацию (обязательны e-mail и количество компов). После этого система распознает сетевые карты и назначает их — External/Internal (при наличии третьего сетевого интерфейса можно без особых проблем организовать демилитаризованную зону). Используя мышку, назначение можно поправить, только вот определить, где какая из карт при имеющейся информации невозможно. Указываем тип интернет-подключения (DHCP, PPPoE, Static), для проверки нажимаем «Testing Connectivity«. На шаге «Internal Network» потребуется выбрать один из двух вариантов применения Untangle: Transparent Bridge или Router. При выборе второго варианта нужно указать IP-адрес интерфейса внутренней сети и опционально активировать встроенный DHCP сервер. И последний этап — отправка тестового сообщения по e-mail, по умолчанию используется внутренний SMTP, но можно указать и любой внешний. По окончании загружается консоль управления. Слева две вкладки. В Apps выбираем и устанавливаем пакеты, в Config — производим настройки. Все разбито по пунктам, поэтому найти нужные установки и разобраться весьма просто. Например, для настройки Firewall переходим в одноименную вкладку. Система сразу же предложит скачать требуемый пакет. Нажимаем «Free Download», по окончании загрузки в центре окна появится ярлык для настройки компонента.
Аналогичным образом ставим все необходимое — Attack Blocker, Protocol Control, OpenVPN, Reports и т.д. Для настройки модуля выбираем его и щелкаем по кнопке Setting. Например, в Firewall уже имеются 3 подготовленных правила (блокировка входящих соединений на 21 порт, блокирующий и разрешающий рулесеты для входящего трафика с сети 1.2.3.0). Их можно взять за основу, отредактировав или создав свое правило по аналогии. Правило создается очень просто, нажимаем Add и заполняем соответствующие поля. Здесь же в подвкладке «Event Log» можно просмотреть связанные события.
Если закрыть окно веб-клиента, перед нами появится рабочий стол. В панели несколько ярлыков, назначение которых носит больше вспомогательный характер — запуск и останов скринсейвера, восстановление, изменение разрешения и т.п.
Endian Firewall Community 2.3
ОС: Endian Firewall Community 2.3
Сайт проекта: www.endian.com/en/community/overview/
Дата выхода: 27 октября 2009 года
Лицензия: GPL
Аппаратные платформы: x86_32
Системные требования: CPU 166 МГц, 64 Mб RAM, 2 Гб
Основой Endian Firewall (EFW) изначально служил IPCop Firewall, в котором разработчики решили усилить функции безопасности и юзабилити интерфейса. Сегодня от родства уже мало чего осталось, а EFW строится на базе CentOS и включает полный набор средств защиты от внешних угроз, что позволяет относить его к UTM системам (Unified Threat Management). Это stateful пакетный фильтр (netfilter), IDS/IPS (Snort), фильтр контента, антивирусная проверка HTTP/FTP/POP3/SMTP трафика, защита от спама, антиспуфинг и антифишинг модули. Политики фильтрации и маршрутизации позволяют указать практически всю актуальную информацию — протокол, порт, сетевой интерфейс, IP- и МАС-адреса. Предусмотрена возможность настройки ACL к сайтам через HTTP Proxy (прозрачный или непрозрачный) с привязкой к пользователю, группе, по адресу, useragent, времени. Контентный фильтр содержит готовые настройки для более чем 20 категорий и подкатегорий.
Подключение к Интернет реализовано посредством Ethernet, PPPoE, ADSL (USB, PCI), ISDN, модема, в том числе и 3G. Внешнему интерфейсу можно назначить несколько IP-адресов (IP-алиасинг). Кроме локальной (NCSA) аутентификации пользователей, предусмотрена поддержка Active Directory, LDAP и RADIUS. Добавим к этому списку создание и управление VLAN, полноценное управление QoS, поддержку SNMP. В составе EFW находим два приложения для организации защищенного VPN соединения — OpenVPN и Openswan/Pluto (реализация IPsec для Linux).
Ведется статистика по соединениям, трафику, работе пользователей. При наступлении определенных событий на e-mail админа отправляется сообщение.
Зашифрованный архив с настройками бэкапится на USB флэшку или засылается на e-mail, так что при необходимости восстановить работу шлюза можно буквально за пару щелчков мышки.
Управление системой предусмотрено из командной строки или через локализованный веб-интерфейс.
Установка производится при помощи мастера с псевдографическим интерфейсом и достаточно проста для неискушенного пользователя. Загружаемся и подтверждаем форматирование диска, после чего начнется копирование системы, по запросу указываем IP-адрес GREEN (внутреннего) интерфейса. Вот и вся установка. После перезагрузки в консоль будут выведены данные для регистрации через веб (http://ip-адрес/ или https://ip-адрес:10443). Предлагаемое консольное меню позволяет выйти в shell, установить пароль учетных записей root (для SSH) и admin (веб). Набрав в браузере предоставленный адрес и пройдя несколько шагов, завершаем установку — выбираем язык (есть русский), часовой пояс, соглашаемся с условиями лицензии GNU GPL. Далее мастер предлагает импортировать настройки из бэкапа, говорим «Нет» и указываем пароли для root и admin.
Теперь настал черед «Мастера настройки сети«, упрощающего процесс подключения к сети. С ним необходимо пройти 8 шагов, например, выбрать тип подключения RED (внешнего) интерфейса и отметить, есть ли в наличии WiFi (BLUE) и DMZ (ORANGE). При необходимости изменяем настройки GREEN, присутствует возможность «переназначить» карту и указать алиасы, задать имя хоста. Аналогично повторяем эту операцию для других интерфейсов, вводим адреса основного и резервного DNS серверов, e-mail админа. Все. После регистрации с учетными данными admin попадаем на главную страницу консоли управления, где выводятся обновляемые в реальном времени графики по трафику, данные по состоянию служб и загрузке системы. Настроек достаточно много, но все они удачно распределены по группам, названия которых говорят сами за себя — Система, Статус, Компьютерная сеть, Службы, Межсетевой экран, Прокси, VPN и События. Поэтому справиться с дальнейшими настройками EFW достаточно просто.
IPCop Firewall 1.9.8
ОС: IPCop Firewall 1.9.8
Сайт проекта: www.ipcop.org
Дата выхода: 29 октября 2009 года
Лицензия: GPL
Аппаратные платформы: x86_32
Системные требования: Intel Pentium II 233 МГц, 64 Mб RAM, 2 Гб
Версия IPCop 0.1.1 (2002 год) базировалась на SmoothWall 0.9.9, затем проект полностью перешел на LFS и сегодня о родстве уже мало, что говорит. Дистрибутив ориентирован на рынок SOHO (Small Office, Home Office), поэтому основная задача разработчиков — сделать интерфейс удобным и простым. В поставке имеется все необходимое для организации защищенного шлюза — фильтр пакетов, IDS/IPS, веб и DNS прокси, DHCP сервер/клиент, Openswan, OpenVPN, ограничение трафика, NTP сервер. Реализован контроль соединений через веб-прокси по IP-адресам и имени системы.
Все, чего не хватает в базовой поставке, доступно в аддонах (sf.net/apps/trac/ipcop/wiki/Addons), которые разрабатываются и поддерживаются, как правило, сторонними программистами. Здесь уже находим фильтр URL, продвинутые настройки firewall, проверку веб и SMTP трафика на вирусы и многое другое. Как и в EFW, интерфейсы имеют цвета — GREEN, RED, ORANGE (DMZ) и т.д. Внешний интерфейс поддерживает подключение по Ethernet (статический, DHCP), PPTP, PPPoE, ISDN, а также посредством модемного соединения. Некоторые операции (подключение, отключение, обновление и т.п.) можно выполнять по расписанию.
До недавнего времени стабильной версией считалась 1.4.20 (с обновлением до 1.4.21), сегодня активно разрабатывается версия IPCop v2, с релизом 1.9.8 мы и познакомимся.
Для загрузки доступны не только традиционные ISO (размер 50 Мб), но и образы для сетевой загрузки, установки на USB флэшку/хард и некоторые другие.
Процесс установки производится в псевдографической консоли и весьма тривиален. По окончании набираем в браузере адрес https://айпишник_шлюза:8443/. Для локализации интерфейса следует перейти в System — GUI Setting и выбрать в списке русский язык.
Консоль управления достаточно проста. Вверху 7 вкладок (Система, Состояние, Сеть, Сервисы, Файервол, ВЧС, Логи), при наведении мышки на любой появляются подпункты. Например, чтобы настроить OpenVPN, переходим в нужную вкладку, где установив флажок «OpenVPN on RED«, активируем сервер.
Теперь указываем дополнительные параметры (IP-адрес внешней и внутренней сети, протокол, алгоритм шифрования, сжатие передаваемых данных с помощью библиотеки LZO и т.п.) Переход по «Advanced Server Options» позволит более тонко настроить работу OpenVPN сервера. Также просто в «Файервол — Firewall Rules» настраиваются правила пакетного фильтра. Выбираем тип правила (Outgouing Traffic, Перенаправление портов, IPCop Access, External IPCop Access) и заполняем предложенные поля.
SmoothWall Express 3.0 SP1 «Polar»
ОС: SmoothWall Express 3.0 SP1
Сайт проекта: smoothwall.org
Дата выхода: 8 января 2009 года
Лицензия: GPL
Аппаратные платформы: x86_32, x86_64
Системные требования: Intel Pentium 166 МГц, 32 Mб RAM, 2Гб HDD
Проект, возникший в середине 2000 года, ставил перед собой цель превратить устаревший компьютер в полноценный шлюз с функциями защиты, с настройками которого мог бы справиться обычный пользователь. Начинание имело успех. За первые месяцы с SourceForge было скачано несколько десятков тысяч копий. Хотя удобным веб-интерфейсом, IDS/IPS и некоторыми другими полезными функциями SmoothWall обзавелся чуть позже (с версии 0.9.9). А так в составе SmoothWall имеется все необходимое — firewall, форвардинг портов, поддержка VPN, Web/DNS/SIP/POP3 прокси, IM прокси (MSN/AIM/ICQ/Yahoo) с готовыми фильтрами и журналированием трафика (на базе IMSpector), DHCP сервер, NTP, поддержка QoS. Возможна установка доступа выхода в Интернет для определенных адресов в зависимости от времени суток. При необходимости трафик проверяется при помощи антивируса Clamav.
Как и в двух предыдущих дистрибутивах, поддерживается до 4 сетевых подключений: WAN, LAN, DMZ, WiFi. «Красный» интерфейс можно закрепить за: Ethernet (static, DHCP), PPPoE, ISDN, ADSL или модемным соединением.
Сам релиз 3.0 вышел в конце 2007 года, сегодня доступна свежая версия с SP1. Кроме ISO (x86, x86_64), на отдельной странице доступен образ VMWare.
Установка достаточно проста, несколько раз нажимаем ОК и все, процедура завершена. Далее идут первичные настройки — раскладка, hostname и выбор политики исходящего трафика:
— Open — весь исходящий трафик разрешен;
— Half-Open — разрешено подключение только по основным портам, потенциально опасные соединения блокированы;
— Closed — все исходящие соединения блокированы.
Затем настраиваем тип сети. Предлагается несколько комбинаций интерфейсов и типов соединений (GREEN + RED, GREEN + RED + ORANGE и т.п.) После чего распределяем сетевые устройства по назначению, указываем адреса интерфейсам (где нужно) и адреса шлюза и DNS сервера. Указываем пароль для пользователей root и admin. После перезагрузки для дальнейших установок вызываем браузер и набираем http://ip-адрес:81/ или https://ip-адрес:441.
Веб-интерфейс не локализован, но достаточно прост. Выбираем одну из основных вкладок (Control, About, Services, Networking, VPN, Logs, Tools, Maintenance) и получаем доступ к настройкам. По умолчанию Snort не активирован, необходимо перейти в Services — IDS, установить флажок «Snort» и ввести «Oink code«. Настройки правил брандмауэра производятся в Networking, выбираем нужное направление (например, outgoing) и заполняем предложенные поля. Использование AJAX позволяет админу просматривать графики загрузки каналов в реальном времени (вкладка About). Доступна статистика трафика по любому IP-адресу, за любой период времени. Обновление дистрибутива производится нажатием одной кнопки в Maintenance — Updates.
Vyatta CE 5
ОС: Vyatta Community Edition 5.0.2
Сайт проекта: www.vyatta.org
Дата выхода: 9 марта 2009 года
Лицензия: GPL
Аппаратные платформы: x86_32
Системные требования: Intel Pentium III 450 МГц, 128 Мб ОЗУ и 2 Гб, 2+ NIC
Разработчики дистрибутива Vyatta решили составить конкуренцию не кому-нибудь, а самой Cisco Systems. Взяв за основу Debian, они интегрировали его со свободно распространяемой платформой маршрутизации XORP (eXtensible Open Router Platform, xorp.org), разработкой которой занимается группа в ICSI (International Computer Science Institute) Беркли при финансировании такими гигантами, как Intel и Microsoft. Установив Vyatta на x86 компьютер, получаем маршрутизатор с функциями IDS/IPS (на базе Snort), кэширующий прокси и фильтр URL (Squid + SquidGuard), сетевые политики (Network Access Policies), OpenVPN, DNS Forwarding, Ethernet Bonding и Bridget Ethernet over ADSL (RFC 2684). Поддерживаются мультипортовые карты (T1/E1, T3 и др.) и беспроводные 3G модемы.
Первые версии Vyatta настраивались исключительно посредством командной строки (как маршрутизаторы Cisco). Затем с версии 4 стал доступен веб-интерфейс (для этих целей в состав включен lighttpd). Особо подчеркивается поддержка популярных сегодня виртуальных машин — VMware, Xen, Hyper-V и некоторых других гипервизоров. Дистрибутив может работать с LiveCD с сохранением настроек на флэшку или другой носитель (файл config.boot). Возможна установка на хард, USB-брелок или карту Compact Flash. При наличии двух дисков установщик позволяет их автоматически связать в RAID 1.
Проект предлагает коммерческую поддержку и продает роутеры с предустановленным ПО. Для свободной загрузки и использования доступна версия Vyatta Community Edition (ISO, образы Citrix XenServer и VMWare).
Процесс установки достаточно прост, хотя и производится при помощи командной строки. Регистрируемся как root с паролем vyatta и запускаем инсталлятор:
Далее подтверждаем установку и приступаем к созданию разделов. По умолчанию стоит Auto. Введя «Yes», подтверждаем уничтожение данных на диске, указываем размер корневого раздела (по умолчанию весь диск) и ждем, пока скопируются данные. Затем устанавливаем пароли пользователей root и vyatta, водружаем GRUB, после чего перезагружаемся и переходим в режим конфигурирования:
Настраиваем сетевой интерфейс:
Аналогично включаются и остальные сервисы — nat, dns, dhcp-relay, dhcp-server, webproxy, ssh. В консоли доступно автодополнение: нажимая , получаем список возможных значений. Подтверждаем все установки.
Смотрим, что получилось:
Все настройки можно вывести, набрав show-all. Выходим из режима редактирования по команде exit. Теперь вызываем браузер и настраиваем параметры при помощи веб-интерфейса. Выбираем нужную категорию и нажимаем кнопку Create, после чего заполняем предложенные поля. Кнопка Show в самом верху покажет конфигурационный файл, в котором знаком «+» будут подсвечены добавленные, но еще неактивированные параметры. Чтобы привести их в действие, нажимаем кнопку Commit (отмена — Discard).
На мой взгляд, проще ввести в командной строке:
Чем настраивать аналогичное разрешающее правило при помощи предлагаемого веб-интерфейса. Нужно только немного привыкнуть к новому синтаксису.
Заключение
Победителя каждый выберет себе сам, исходя из конкретных задач. Мне лично нравится Vyatta за гибкость и Cisco-подобные команды, Endian Firewall и Untangle — за оснащенность. Тем, кому нужны простота в настройках, присмотритесь к SmoothWall и IPCop.
16 комментариев
IPCop Firewall 1.9.8 это бета версия
последний стабильный релиз 1.4.21
Источник