antiCisco blogs


блоги по технологиям и оборудованию cisco от инструкторов

Опубликовано 5 Март , 2010

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

Поэтому активизировалось желание найти более-менее адекватную замену cisco ISR и научиться при помощи нее строить сети небольших контор.
На данный момент выбор пал на open-source решение vyatta (www.vyatta.com). По сути это специальная сборка линукса GNU и модулей, придуманных различными разработчиками для решения различных сетевых задач:
1. Маршрутизация статическая и динамическая (RIP, OSPF, BGP)
2. Межсетевое экранирование (статическое –списки доступа, и динамическое, с сохранением сессий)
3. Трансляция сетевых адресов (NAT, PAT, внутренний и внешний)
4. Анализ и поддержка сложных для МСЭ протоколов (FTP, PPTP, IPSec и т .д.)
5. Система предотвращения вторжений
6. URL-фильтрация
7. Прокси-сервер
8. Контентный фильтр
9. Вспомогательные сервисы (ssh, ntp, dns и др)

Весьма неплохой набор, надо признать!

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

Это позволяет задействовать ещё один скрытый резерв: часто у компаний лежат без дела несколько устаревшие или маломощные сервера, часто рэковые и брендовые, которые выбросить жалко, а использовать не получается. Тогда можно пристрелить сразу несколько зайцев и существенно сэкономить.

Итак, идём на сайт производителя, качаем (можно даже без регистрации) софт в виде LiveCD (iso). Берем первую попавшуюся машинку с 2 ethernet-катрочками на борту и вперед, к исследованию продукта!
Задача: настроить для начала на железке маршрутизацию, NAT, межсетевое экранирование, фильтрацию, IPS, web-прокси.

Качаем доки (почему-то не самые актуальные, кстати здесь требуется регистрация :)) в формате pdf, где подробно описаны все команды и нет описания технологий 🙂 закатываем рукава и идем собирать стенд. Кстати, во всех доках честно написано: для «прокачанных специалистов», которые и так понимают, как это работает и им надо лишь рассказать, как это настроить. Попробуем примерить шкуру такого специалиста 🙂

Схема простейшая: самый простой комп с 2 сетевухами будет выступать платформой, внешним портом втыкаем его в маршрутизатор (cisco ISR 2801), за внутренним – локалка в виде обычной виндузовой машины.

Вставляем диск с образом в cdrom, грузимся, наблюдая красивые буквы на черном фоне со стандартными шагами POST и другими проверками линукс.
К слову, этот же диск позволяет установить систему на сам компьютер, а не работать в виде LiveCD. Но для наших задач пока достаточно ничего не устанавливать. Сложность будет только с сохранением конфигов и перезагрузкой.

Когда наш будущий маршрутизатор загрузится, мы увидим приглашение на вход. Кстати, пока комп включен и загружен с CD, не работает кнопка eject на панели, дабы случайно не вынуть диск. Войти можно под одним из двух встроенных пользователей
1. Root/vyatta – этот пользователь может все, подсказка в командной строке выдает все команды, как специфичные для vyatta, так и стандартные для линукса
2. Vyatta/vyatta – этот пользователь тоже может все, но в подсказке видны только команды, специфичные для vyatta. Это удобно, т.к. список этих команд не очень велик и сразу понятно более-менее, что и какими командами настраивать.
Командная строка самая обычная, с дополнениями ключевых слов и однозначных продолжений команд по кнопке [tab]. Если же продолжение не однозначно, эта же кнопка выводит сначала сокращенные список возможных продолжений (только ключевые слова), а если 2 раза нажать [tab] , то подсказка будет более развернутой, с коротенькими описаниями.

Командная строка имеет 2 режима: просмотра (приглашение оканчивается значком $) и настройки (приглашение оканчивается значком #). Из первого режима можно вводить любые команды, как линуксовые, так и vyatta, но только для просмотра параметров, настроек и отладки. Из второго можно вводить команды настройки параметров системы, а также запускать произвольные команды, предварив их ключевым словом run

Пример:
vyatta@Ro:~$ show nat translations detail
vyatta@Ro# run show nat translations detail

Ключевые слова, увы, сокращать нельзя – интерпретатор командной строки этого не понимает. Цисковская привычка максимально сокращать и не пользоваться табуляцией мешает:)

Вход в режим настройки осуществляется командой (сюприз!)
configure

Выход
exit

В режиме настройки есть множество подрежимов, в которые можно перейти командой
edit {нужный режим}

Это удобно, когда надо настроить множество элементов в одном режиме, например, множество правил трансляции или множество правил правил межсетевого экранирования. При этом всякий раз при вводе команды vyatta подсказывает, в каком режиме вы находитесь (указывается в квадратных скобочках)

Пример:
[edit]
vyatta@Ro# edit firewall name TEST
[edit firewall name TEST]
vyatta@Ro#

Перейдя в подрежим вам не надо будет вводить всякий раз одинаковую часть команд, также удобно, что команда
show

покажет настройки именно этого подрежима.

Формат команд, построение дерева настроек и сам вид файла настроек мне сильно напомнил командную строку маршрутизаторов Juniper. Более-менее быстро настраивать железку у меня получилось примерно через час тренировки. Консоль вполне удобная.

Все изменения обязательно подтверждать командой
commit

перед тем, как они вступят в силу. Неподтвержденные команды отражаются в файле конфига значком «+», команды, которые мы собрались удалить командой
delete {команда}

помечаются значком «-» перед строкой

Выйти из режима настройки, не подтвердив изменения либо не отменив их командой
discard

нельзя. Можно одной командой exit discard сразу выйти, без сохранения сделанных изменений

Конфиг рекомендуется сохранять, дабы не при перезагрузке было с чего грузиться 🙂 Его можно просто сохранить в файл (по умолчанию config.boot) командой
save

Можно поменять путь и имя файла для сохранения конфига, а также можно сохранять на внешние сервера, например, ftp, tftp, http. Почему-то в документации написано, что при работе с LiveCD можно сохраниться либо в виртуальный файл, либо на дискету, предварительно ее заинициализировав. И на команду save не дается подсказки, однако конфиг вполне сохраняется на ftp вот таким немудрящим способом:
save ftp://{ip}/{file}

при этом вас спросят логин/пароль и файл сохранится. Работает и такой формат:
save ftp://{user}:{password}@{ip}/{file}

Этих знаний уже вполне достаточно, чтобы начинать настройки. (продолжение следует)

 

Метки: , ,
Опубликовано: Vyatta

 

4 комментария “Vyatta. С чем её едят. Статья 1”

comment rss - Trackback

  1. Ilya:

    а я вот думаю чекпоинт помучить, опенсадомазо меня не привлекает…

  2. Ты понимаешь, что с чекпоинтом таже засада: не везут. Хотя может софтовые решение пролазят.

    А насчет садо-мазо… Я тоже так подумал было… А потом понял, что консоль ну очень похожа на Жунипер… А Жунипер, как ты понимаешь, нифига не опен-сорс садомазо 🙂

    Так что 2 зайцев одной нунчакой 🙂

    ЗЫ Рекомендую пощупать. МОжет даже понравиться. Я сейчас освою step-by-step все, чего оно может, напишу. Может получиться интересное решение.

  3. veres:

    по непроверенным данным сей дистрибутив базируется на Debian. так что можно дополнительно чего-нибудь наставить 🙂 Дистрибутив неплохой. из негативного опыта могу вспомнить настройку cisco air-pci350 на машине с vyatta 6.0(alpha) (но тут виноваты наверное мои руки :))

    • Да, понаставить туда можно чего хочешь, было бы желание.
      Но я преследую другую цель: если уж говорить о замене именно маршрутизатору, хотелось бы, чтобы все пакеты уже были поставлены и оттестированы и все настраивалось единообразно из одной консоли.

      ЗЫ Сейчас есть 6.0 бета. Как 5 домучаю — пощупаю, что там нового 🙂

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

Вы должны войти чтобы прокомментировать.