четверг, 11 декабря 2008 г.

PPPoE сервер на cisco

Как сделать из циски клиента PPPoE я вкратце рассказывал в этом сообщении. Сегодня у нас задача создать PPPoE-концентратор на cisco, который будет терминировать сессии. Делать это будем через механизм bba-group по-новому, а не по-старому с использованием vpdn-group.
Разница состоит в том, что при новом механизме у нас есть возможность использовать несколько профилей PPPoE. Обычно хватает одного, но всё-же vpdn-group уже считается legacy. И в моем примере рассматривается простой случай. Поэтому профиль будет один для роутера (default).
Итак, пусть у нас есть некий роутер с, например, двумя интерфейсами:
FastEthernet0/0
ip address 72.14.205.100 255.255.255.252
!
FastEthernet0/1
ip address 10.10.10.1 255.255.255.0
!
Из них fa0/0 смотрит в одну сеть (например, внешнюю), а fa0/1 - в другую (внутреннюю). Мы хотим пускать клиентов, присоединившихся по PPPoE в первую сеть через NAT. Пусть у них будет сеть 10.10.100.0/24. Раздавать будем через механизм DHCP:
ip dhcp pool PPPoEpool
network 10.10.100.0 255.255.255.0
domain-name google.com
dns-server 216.239.32.10 216.239.34.10
default-router 10.10.100.1
!
Создаём для клиентов вот такой виртуальный интерфейс:
interface Virtual-Template1
ip address 10.10.100.1 255.255.255.0
ip nat inside
ip virtual-reassembly
peer default ip address dhcp-pool PPPoEpool
ppp authentication chap ms-chap # чтобы работало также с клиентами MS Windows
!

Включаем поддержку PPPoE на роутере (тут как раз пресловутое bba-group):
bba-group pppoe global
virtual-template 1 # (см.выше)
sessions max limit 100 # у меня в примере клиентов не больше сотни
sessions per-mac limit 1 # на всякий случай ;-)
sessions auto cleanup
!

Не забываем включить концентратор PPPoE на интерфейсе:
FastEthernet0/1
ip address 10.10.10.1 255.255.255.0
pppoe enable group global
!

А теперь лирическое отступление. Посмотрим, как аутентифицироваться и учитывать подключившихся. Вот пара вариантов для размышлений:

1) Локальная аутентификация. То есть пользователи хранятся в конфиге. Тут всё просто:
aaa new-model
!
aaa authentication ppp default local
aaa authorization network default local

...

username pppoeuser privilege 0 password 7 pppoepassword

2) Внешняя аутентификация. В данном случае циска не знает пользователей в логин всегда сверяется с внешним сервером по протоколу TACACS или RADIUS (более распространено). Минусы очевидны: есть необходимость в дополнительной органицации и поддержке RADIUS-сервера, а при его недоступности доступ в сеть будет запрещён. Однако при масштабировании системы, добавлении новых серверов доcтупа или резервных серверов RADIUS..
Как поднять и настроить сервер с пользователями и паролями поговорим в следующий раз, на циске это делается следующим образом (используется дефолтный профиль):
aaa new-model
!
aaa authentication ppp default group radius
aaa authorization exec default local # чтообы на exec заходили только локальные пользователи
aaa authorization network default group radius
aaa accounting network default start-stop group radius # если предполагается учет трафика средствами RADIUS
...

ip radius source-interface FastEthernet0/1 # У меня RADIUS-сервер внутри сети
!
radius-server host 10.10.10.2 auth-port 1812 acct-port 1813 key 7 radiussecret

Раздавать определённые IP-адреса клиентам по логину можно также через RADIUS.

Ну вот и всё! Мой пример осталось завершить NAT-ом для клиентов PPPoE:
ip nat inside source list 1 interface FastEthernet0/0 overload
access-list 1 permit 10.10.100.0 0.0.0.255

среда, 19 ноября 2008 г.

Загрузить IOS через tftp из ROMMOM на cisco

Отформатировали флешку командой
format flash:
и перегрузились? Теперь не знаете что делать, видя rommon> ? При этом бэкап иоса лежит на TFTP-сервере? Ничего страшного, сейчас расскажу что необходимо сделать.

Способов несколько, я рассмотрю один из них, при котором мы скачаем образ IOS-а из ROMMON с tftp и положим его на флешку. Потом загрузимся в него.

Самое первое - это подключить циску к сети, если конечно ещё не подключили ;-).
Пусть для примера мы дадим ей IP 10.10.10.1/24, а tftp-сервер у нас будет 10.10.10.10/24.

Зададим IP следующими командами. Внимание, грабли! Все параметры необходимы (даже шлюз по умолчанию, который по логике не нужен)!

rommon 1 > set IP_ADDRESS=10.10.10.1
rommon 1 > set IP_SUBNET_MASK=255.255.255.0
rommon 1 > set DEFAULT_GATEWAY=10.10.10.10
rommon 1 > set TFTP_SERVER=10.10.10.10
rommon 1 > set TFTP_FILE=ios.bin
rommon 1 > sync

Дальше нужно собственно только скачать иос и положить его на флешку:

rommon 1 > tftpdnld

Загрузиться так:

rommon 1 > boot

У меня получилось ;-)

среда, 29 октября 2008 г.

PPPoE клиент на cisco

Рассмотрим как можно использовать cisco в качестве PPPoE клиента. Это бывает необходимо в некоторых случаях, самым распространённым на мой взгляд из которых является подключение к оператору связи по ADSL. Поэтому все это в большей степени относится к cisco 877, cisco 1801 (с ADSL портом) и других моделей с WIC-1ADSL (HWIC-1ADSL или других). Однако для других моделей с Ethernet-портами данное описание тоже подходит.
Первым делом нужно создать виртуальный Dialer-интерфейс, который собственно и будет поднимать PPPoE:
interface Dialer1
ip address negotiated
(ip выдаёт провайдер)
ip mtu 1492
(стандартныое значение MTU для PPPoE)
ip nat outside
(если используем NAT)
ip virtual-reassembly
encapsulation ppp
ip tcp adjust-mss 1432
(очень полезная строка в тех случаях, если пакеты большие 1492 отбразываются, вследствие чего многие популярные сайти типа odnoklassniki.ru или mail.ru не работают через cisco)
dialer pool 1
(этой строкой мы задаём номер pool для использования на физическом интерфейсе)
no cdp enable
ppp chap hostname логин
ppp chap password 7 пароль
(имя пользователя и пароль)

Теперь, чтобы использовать этот Dialer на интерфейсе нужно добавить только:

 pppoe-client dial-pool-number 1

подробнее как поднять ADSL с несколькими pvc на cisco я рассказываю тут..
С Ethernet-интерфейсами поступаем таким же образом:

interface FastEthernet4
no ip address
ip virtual-reassembly
duplex auto
speed auto
no cdp enable
pppoe-client dial-pool-number 1

Отметим кстати, что cisco не поддерживает опцию PPPoE-клиента с сабинтерфейсов Ethetnet, таким образом PPPoE-клиент с dot1q-интерфейсов на cisco поднять неудастся. Однако у меня получилось сделать несколько PPPoE-клиентов в разных dot1q VLAN-ах, используя cisco 870 серии, но об этом я расскажу в следующий раз.

суббота, 18 октября 2008 г.

Dynamips - эмулятор cisco

Dynamips - это программный эмулятор аппаратной части маршрутизаторов сisco. Проект разрабатывался начиная с 2005 года как эмулятор cisco 7200 на обычном компьютере.
Впоследствие появилась поддержка других платформ. Сейчас (2008) список такой: Cisco 3600 series (3620, 3640 и 3660), 3700 series (3725, 3745) и 2600 series (по 2610 по 2650XM, 2691).
Заглянем глубже и попытаемся понять как он работает и что с ним можно делать.


Dynamips хорош в случаях, когда необходимо:
  • быстро проверить конфигурацию маршрутизатора для непосредственного её применения последствие на реальной железке;
  • получить лабораторный стенд малой кровью, однако достаточно мощный для обучения или демонстрации;
  • опробовать преимущества и возможности операционной системы Cisco IOS без необходимости покупки самого маршрутизатора.
Первая мысль которая может прийти в голову на этом месте: а не может ли эмулятор cisco заменить сам маршрутизатор? В какой то степени да, но лишь при очень малой нагрузке. Сам автор проекта указывает что производительность реального маршрутизатора выше приблизительно раз в 100 (производительность Dynamips около 1 килопакета в секунду в то время как даже самая ранняя модель NPE-100 даёт 100 килопакет/сек).
Помимо аппаратного обеспечения маршрутизаторов cisco существует возможность эмулировать сетевые устройства, такие как:
  • мост (используя который можно соединить эмулированный маршрутизатор с реальной сетью или другому виртуальному маршрутизатору);
  • Ethernet-коммутатор;
  • ATM-коммутатор;
  • ATM-мост (Ethernet <-> ATM);
  • коммутатор Frame-Relay.
Замечательной способностью Dynamips-а является то, что он может работать в режиме гипервизора. То есть одновременно есть возможность запускать не одну виртуальную циску, а целую сеть со всеми возможностями dynamips: коммутаторами, маршрутизаторами, мостами.. Таким образом появляется возможность выполнять лабы без реального оборудования. Или же демонстрационные стенды. Причём практически любой сложности. В таком управление гипервизором осуществляется по сети TCP/IP, а сам dynampis запускается примерно таким образом:

dynamips -H 7200

где 7200 - порт для связи с гипервизором.

Следует заметить, что запущенный по умолчанию, эмулятор сильно загружает компьютер. Даже на 100%. Чтобы снизить нагрузку создана опция "Idle PC". С её помощью можно снизить нагрузку на процессор и, таким образом, запустить второй, третий и более эмуляторов cisco одновременно без существенной нагрузки процессора. Значение IdlePC специфично для каждого образа IOS. Необходимое значение выбирается опытным путём. Непосредственно с Dynamips это делается следующим образом: после загрузки маршрутизатора желательно с пустой конфигурацией после приглашения Press RETURN to get started! Нужно секунд через 5 нажать "Ctrl-] + i". Начнёт собираться статистика загруженности процессора. По истечении этого процесса (порядка 10 секунд) будет выведено несколько значений, из которых потенциально лучшие будут помечены. Возможно, придётся попробовать несколько значений прежде чем нагрузка процессора спадёт со 100% до примерно 5% (на разных компьютерах по-разному).

Dynamips представляет из себя один исполняемый файл. Причём есть варианты под Linux, Mac OS и Windows. Но при запуске принимает множество аргументов, для задания особых параметров эмуляции. Подробнее об аргументах можно почитать тут на странице проекта xgu.ru.

Однако частенько требуется быстро развернуть виртуальную сеть, а использовать (изучать, набирать) dynamips со всеми необходимыми аргументами для запуска проблематично, если ещё и учесть необходимость создания конфигурационного файла, описывающего виртуальную сеть. Вот пример такого файла:

IF:E0:udp:10000:127.0.0.1:10001
IF:E1:udp:10002:127.0.0.1:10003
IF:E2:gen_eth:eth0

DOT1Q:E0:1
ACCESS:E1:4
DOT1Q:E2:1

..и это только конфиг, описывающий простой коммутатор. А если есть необходимость эмуляции магистралей Frame Relay или ATM?... В общем можете сами дорисовать картину и попробовать распланировать все свои необходимые действия для эмуляции сети cisco с использованием только голого dynamips.

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

Dynagen (сайт проекта dynagen.org). Использует CLI-like (интерфейс командной строки) для управления dynamips, который запускается в режиме гипервизора. Необходимо всё-таки создать конфигурационный файл типа INI и dynagen через сеть (см. запуск гипервизора) будет управлять dynamips. Это говорит о том, что сам гипервизор может быть запущен за удалённом компьютере. Пример такого конфига:
[localhost]

[[7200]]
image = \Program Files\Dynamips\images\c7200-jk9o3s-mz.124-7a.image
# On Linux / Unix use forward slashes:
#image = /opt/7200-images/c7200-jk9o3s-mz.124-7a.image
npe = npe-400
ram = 160

[[ROUTER R1]]
s1/0 = F1 1

[[ROUTER R2]]
s1/0 = F1 2

[[ROUTER R3]]
s1/0 = F1 3

[[FRSW F1]]
1:102 = 2:201
1:103 = 3:301
2:203 = 3:302

Подсчитать значение Idle PC и уменьшить загрузку процессора в dynamips в можно с помощью команды idlepc. Список команд - ?.
Dynagen и dynamips можно скачать с сайта проекта dynagen.

Dynagui (dynagui.sourceforge.net). Продолжение развития dynagen. Использует библиотеку dyna-gen для взаимодействия с гипервизором dynamips.


Последняя версия вышла в 13.12.07. Многие вещи до сих пор находятся в TODO-листе. Можно поэтому сделать вывод, что проект развивается довольно медленно.

GNS3(gns3.net). Является графическим симулятором сетей cisco. На сегодняшний день на мой взгляд является наиболее удобным инструментом для эмуляции cisco. Работает под Windows, Linux и Mac OS. Её уже включают в репозитарии дистрибутивов Linux. Версия под Windows включает в себя и dinamips, так что дополнительно скачать придётся только образ IOS. Имеет интуитивно понятный интерфейс (к примеру подсчёт значения IdlePC можно запустить, нажав правой кнопкой на виртуальном маршрутизаторе и выбрав соответствующий пункт меню). Подробнее о GNS3 я рассказываю здесь. Скачать gns3 для любой ОС можно непосредственно с сайта.



Xenomips и Xentaur. Эти проекты пошли ещё дальше.
Xenomips
объединяет эмуляцию cisco и виртуализацию Xen. Таким образом, список виртуальных устройств dynamips расширяется возможностями Xen. И на одном физическом компьютере как хост-системе можно создать лабораторный стенд из виртуальных маршрутизаторов cisco, коммутаторов, Ethernet-мостов, магистралей Frame Relay и ATM, межсетевых экранов Cisco PIX (используя параллельный проект Pemu), серверов и рабочих станций Linux, FreeBSD, Windows, MacOS и так далее.
Цель проекта Xentaur — разработка инструментов и методов быстрого построения виртуальных сетей и исследования их работы. Сети могут быть не только чисто виртуальными, но и смешанными: наряду с виртуальными узлами в них могут работать и обычные компьютеры и сетевые устройства.
Подробнее про эти проекты можно почитать на сайте проекта xgu.ru: Xenomips, Xentaur.

Таким образом для эмуляции сетей cisco нам нужно выбрать, для каких целей нам это нужно. Для многих случаев достаточно GNS3. Если необходимо создать крупный проект и рассмотреть (или демонстрировать) взаимосвязи между виртуальными серверами, рабочими станциями и сетевыми устройствами, то стоит обратить внимание на Xenomips.

Удачи в изучении!

P.S. Остаётся порой задаться вот каким вопросом. Все описанные инструментальные средства распространяются по лицензии GPL и/или бесплатны и свободны для загрузки. Однако не сам образ ОС IOS. Так что вопрос, где скачать Cisco IOS остаётся открытым. Это ПО распространяется Сisco на коммерческой основе. Однако если задаться целью, то скачать IOS для учебных целей можно со поискать тут - можно найти легко. ;-)

понедельник, 29 сентября 2008 г.

Подружим Cisco IP Phone и Asterisk

Самый попурярный канал Asterisk, используемый в качестве канала подключения для клиентов это, конечно, SIP. Существует масса недорогих программных и аппаратных SIP-телефонов, легко интегрируемых в Asterisk. Но что делать, если нам в наследство (или в подарок!) достался один из замечательных VoIP-телефонов производства Cisco Systems, который в большинстве своём работают по собственному протоколу SCCP?


У меня так в руках оказался Cisco 7902, но без CallManager-а. Вот и решил проверить работоспособность аппарата с помощью Asterisk.

В Asterisk изначально есть канал skinny, однако рекомендуется всё-таки использовать более совершенный chan-sccp-b. Сообщается, что поддерживаются также устройства:

  • 12 — Cisco IP Phone 12SP+
  • 30 — Cisco IP Phone 30VIP
  • 7902 — Cisco IP Phone 7902G
  • 7905 — Cisco IP Phone 7905G - Fully supported
  • 7910 — Cisco IP Phone 7910
  • 7912 — Cisco IP Phone 7912G
  • 7920 — Cisco IP Wireless Phone 7920 - All basic features
  • 7935 — Cisco IP Conference Station 7935
  • 7936 — Cisco IP Conference Station 7936 - Fully supported
  • 7940 — Cisco IP Phone 7940 - Fully supported
  • 7941 — Cisco IP Phone 7941 - Initial Support
  • 7960 — Cisco IP Phone 7960 - Fully supported
  • 7961 — Cisco IP Phone 7961 - Initial Support / Reported to work
  • 7970 — Cisco IP Phone 7970 - Fully supported
  • 7971 — Cisco IP Phone 7971 - Fully supported
  • 7961GE
  • 7941GE
  • 7911
  • 7980 — Cisco IP Communicator
  • 7985
  • 7914 — Cisco IP Phone 7960 with 1 or 2 7914 addons
  • ata — Cisco ATA
  • KIRK — Kirk is a wireless phone that uses sccp

Его и поставим.
Сходим на страницу проекта, скачаем последнюю версию (в моём случае это chan_sccp_20071213.tar.gz).
# wget "http://downloads.sourceforge.net/chan-sccp-b/chan_sccp_20071213.tar.gz?modtime=1197572506&big_mirror=0"
# tar xf chan_sccp_20071213.tar.gz


Соберём модуль:

# cd chan_sccp_20071213/
# make
sh ./create_config.sh "/usr/include"
Creating config file
====================
Checking Asterisk version...
* found asterisk 1.4
Build PARK functions (y/n)[n]?y
Build PICKUP functions (y/n)[n]?y
Use realtime functionality (y/n)[n]?y
* found 'struct ast_channel_tech'
* found 'ast_bridged_channel'
* found 'struct ast_callerid'

<...>
Now compiling .... sccp_softkeys.c 558 lines
Now compiling .... sccp_socket.c 394 lines
Now compiling .... sccp_indicate.c 329 lines
Linking chan_sccp.so

Последняя строка говорит нам о том, что модуль собрался и готов к использованию. а нам это и надо, устанавливаем его простым копированием (туда, где модули Астериска, у меня в примере - по умолчанию).

cp chan_sccp.so /usr/lib/asterisk/modules/

Установили, теперь нужно убедить Asterisk в использовании его вместо стандартного. Для этого в /etc/asterisk/modules.conf пишем:

noload => chan_skinny.so
load => chan_sccp.so
Теперь необходимо создать конфиг модуля по образу и подобию со страницы описания. Добпвляем телефоны (аппараты - по MAC-адресу) и линии (номера - по екстеншену). В extensions.conf корректируем диалплан чтобы приходили входящие вызовы.

Ну и осталось дело за малым. Но немаловажным! TFTP-сервер.
У меня дистрибутив Gentoo, поэтому установка свелась к следующему:
# emerge net-ftp/tftp-hpa
# mkdir /tftproot
# /etc/init.d/in.tftpd start
# rc-update add in.tftpd default

В /tftproot должен находиться хотя бы XmlDefault.cnf.xml содержанием:

<callManager>
<ports>
<ethernetPhonePort>2000</ethernetPhonePort>
</ports>
<processNodeName>IP Астериска</processNodeName>
</callManager>
</member>
</members>
</callManagerGroup>
</Default>

Также для каждого аппарата можно положить свой конфиг с именем типа SEP.cnf.xml. Необходимость - только если особое время/язык прошивки. Пример тут.

MAC-адрес написан на каждом телефоне на обратной стороне. Cisco IP Communicator использует MAC используемой сетевой карты.

среда, 24 сентября 2008 г.

Ad-hoc сеть средствами Windows

Многие частенько задумываются, как быстро связать два устройства на базе Windows (типичный пример - два ноутбука) по Wi-Fi. Бывает, что сходу и не вспомнишь/не угадаешь в галочках в настройках и свойствах.
Делаю шпаргалку..

Итак.. Вся разница только в том, что Ad-hoc в отличие от инфраструктуры - не клиент-серверная архитектура (клиент-сервер, конечно, немного не из этой оперы, однако суть та же). Это точка-точка. Соответственно нужно настроить на обоих концах wifi-адаптеры и должно заработать. Microsoft нас обрадовала тем, что можно сделать ad-hoc соединение проще, а именно:
- настроить на одном устройстве подключение;
- найти его другим устройством (если конечно включено вещание SSID);
- вбить необходимые настройка на втором адаптере.
То есть та же схема, что и при работе с точками доступа.

Сейчас настроим первое устройство. Для этого по большому счёту нужно просто добавить беспроводную сеть на первом устройстве, указать, что это точка-точка. Адаптер заработает сразу.

Для этого перейдём в сетевые подключения (обычно Пуск-Настройка-Сетевые подключения).


Там на беспроводном подключении - правой кнопкой - в контекстное меню Свойства.
В появившемся окне перейдём на вкладку Беспроводные сети.


Нужно Добавить новую сеть.


Появляется окно для настройки новой беспроводной сети, где нам следует придумать имя для сети (SSID - идентификатор), не забыть поставить галочку "это прямое подключение компьютер-компьютер", и выбрать ключ шифрования. Рекомендую использовать WPA.. Так, на всякий случай. Там только один нюанс - ключ может быть 5 или 13 символов.


Жмём ОК.
После этого наша сеть появится в беспроводных соединениях.


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

Небольшое замечание - Wi-Fi устанавливает соединение 1 и 2го уровня, IP-адреса следует настроить вручную, чтобы увидеть другое устройство в сети ping-ом (и остальными программами).

понедельник, 25 августа 2008 г.

Asterisk - бесплатное VoIP-ядро для IP-телефонии

Есть прекрасные сайты, работающие по принципу википедии, например http://voip-info.org, рассказывающие о том, что такое Asterisk и с чем его есть. Я хочу остановиться на паре подводных камней которые ждут тех, кто хочет поставить Asterisk впервые.

Итак, что мы имеем? Компьютер под управлением GNU/Linux, желание обзавестись своим мощным, да и ещё бесплатным софтсвичом, некривые руки и немного терпения.

Что нужно ещё? Ах да, немного знаний и инструментов. Инструменты будут простыми - исходные тексты Астериска с http://www.asterisk.org, пара библиотек (об этом подробнее ниже) и консолька нашего сервера.

Но сначала пару слов теории в качестве лирического отступления.

Asterisk является модульной системой, причём эта модульность во многом определяет его функциональность и работоспособность. Как и такие же модульные программы (MirandaIM, Foobar2000, Far...), при добавлении/удалении модулей с соответствующей настройкой, можно добиться совершенства. Своего совершенства, конечно.

Он поддерживает работу с различными протоколами VoIP, как широко распространёнными (H.323, SIP), так и менее используемые и специфические (собственные: IAX, IAX2; проприетарные, как SCCP (Cisco Skinny Client Control Protocol); ТФОП-основанные: Zap, VPB; специфические: MGCP, Agent, Local). В мире Asterisk соединения по какому-либо из протоколов называется каналом. Существует (я это особо подчеркну) коммутация вызовов из одного канала в другой, при этом конвертируя звуковой поток из одного кодека в другой. При переводе звонка (или объединения в конференции) можно без проблем подключить третий канал/кодек и так далее.

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

Астериск немного своеобразный продукт и многое что связано с его происхождением дало отпечаток на дальнейшую судьбу. Проект создавался и ведётся под крылом коммерческой компании Digium. Digium живёт за счёт разработки оборудования в качестве аппаратной платформы для Asterisk, в частности плат PSTN для возможности "приземлять" звонки из IP или наоборот, перенаправлять вызовы с обычных телефонов на VoIP. Однако из-за этого проект Asterisk распространяется по двойной лицензии, так что в нём могут присутствовать закрытые модули. Самый яркий пример - патентованный кодек G.729.


Итак, самый первый подводный камень - использование стандартного менеждера пакетов для установки Asterisk. Получаем версию двухлетней (а в gentoo на состояние 2008 года и того более) версию. С теми ещё косяками. Даже если и версия будет новая, все настройки будут по умолчанию, со всеми ненужными модулями. А самое страшное - с отсутствием нужных. Выход - скачать исходники (цылка), либо изменить дерево пакетов/портов для поддержки актуальной версии asterisk.

Так что качаем исходники, распаковываем.. Перед make есть возможность сделать одну нужную вещь, а именно: make menuitems. Обязательно заходим в менюшку, шаримся по пунктам. Смело удаляем ненужное (мы же уже почитали хоть немного http://voip-info.org и представляем в общих чертах, что нам нужно). Переходим к make.

Сделали ./configure, make, make install и, как нам посоветовали, make samples. В итоге посмотрели в /etc/asterisk и от изобилия новых конфигов плюнули на всю IP-телефонию и решили, что разбираться со всем этим проще всего будет как нибудь в другой раз.

Мой совет: стоит новые конфиги перенести в другое место, обратно вернуть только основное по одному, жестоко удаляя после копирования всё-всё лишнее (ибо будет мешать восприятию). У меня для начала было это:
asterisk.conf
extensions.conf
modules.conf
cdr.conf
sip.conf
h323.conf
[добавить]

Забыли про поддержку H.323! Ведь он частенько необходим. Оказалось, что в исходниках есть отличное README (channels/h323/README). Оно говорит о том, что перед процессом сборки Астериска нужно заюзать дополнительные библиотеки: PwLib и OpenH323. Причём только определённых версий, ибо можем получить кучу проблем на голову в виде ошибок компиляции. Там же расписан правильный порядок сборки Asterisk если необходимо использовать H323.

cd /path/to/pwlib./configure
make clean opt
cd /path/to/openh323
./configuremake clean opt
cd /path/to/asterisk/channels/h323
make opt
cd /path/to/asterisk
make install


Вот собственно самые основные грабли при установке Asterisk.

От себя добавлю что в идеале сделать пользователя, скажем asterisk и от него выполнять сборку, чтобы впоследствие иметь изолированный сервис от непривилегированного пользователя. А если выделить ему отдельную папку, например /asterisk, то будет удобно удалять/добавлять руками нужные модули (при небоходимости, конечно), и писать дополнительные приложения самостоятельно для интеграции с чем-либо.. но это уже совсем другая история.