Меню

Настройка asterisk с нуля freebsd



Media UniX

freebsd команды, настройка, установка сервера и не только

Asterisk на FreeBSD. Установка и минимальная настройка.

Asterisk – это программная АТС.
Основные возможности:

  • Звонки абонентов друг другу бесплатно, используя как программный телефон, так и хардварный ИП-телефон.
  • Бесплатные звонки клиентам Skype
  • Голосовая почта
  • Конференции
  • Музыка ожидания
  • Звонки на городские
  • Звонки на сотовые
  • Очередь вызовов

Установка Asterisk производилась на FreeBSD версии 7.1 . Она не находится за шлюзом, имеет свой белый IP.
Не устанавливаю из /usr/ports/net/asterisk , так как проинсталилась версия 1.8 и подружить её с веб-интерфейсом не удалось.

Ставлю asterisk 1.4 из портов:
cd /usr/ports/net/asterisk14/
make config

Options for asterisk14 1.4.37_1
[X] OGGVORBIS Enable Ogg Vorbis support
[X] ODBC Enable ODBC support
[ ] POSTGRES Enable PostgreSQL support
[ ] RADIUS Enable RADIUS accounting support
[X] SNMP Enable SNMP support
[ ] H323 Enable H.323 support
[X] FREETDS Enable FreeTDS support
[X] JABBER Enable Jabber and Gtalk support
[X] SQLITE Enable SQLITE support
[ ] CODEC_PATCH Apply codec negotiation patch
[ ] ILBC Enable iLBC codec
[ ] MISC_PATCHES Apply additional patches
[ ] DAHDI Enable DAHDI support

выполняю:
make install clean

установилось:
+—- Asterisk Installation Complete ——-+
+ +
+ YOU MUST READ THE SECURITY DOCUMENT +
+ +
+ Asterisk has successfully been installed. +
+ If you would like to install the sample +
+ configuration files (overwriting any +
+ existing config files), run: +
+ +
+ gmake samples +
+ +
+—————— or ———————+
+ +
+ You can go ahead and install the asterisk +
+ program documentation now or later run: +
+ +
+ gmake progdocs +
+ +
+ **Note** This requires that you have +
+ doxygen installed on your local system +
+——————————————-+
WARNING WARNING WARNING

Your Asterisk modules directory, located at
/usr/local/lib/asterisk/modules
contains modules that were not installed by this
version of Asterisk. Please ensure that these
modules are compatible with this version before
attempting to run Asterisk.

WARNING WARNING WARNING
===; Installing rc.d startup script(s)
===; Compressing manual pages for asterisk14-1.4.37_1
===; Registering installation for asterisk14-1.4.37_1
===; SECURITY REPORT:
This port has installed the following files which may act as network
servers and may therefore pose a remote security risk to the system.
/usr/local/lib/asterisk/modules/chan_skinny.so
/usr/local/lib/asterisk/modules/chan_iax2.so
/usr/local/lib/asterisk/modules/pbx_dundi.so
/usr/local/lib/asterisk/modules/chan_sip.so
/usr/local/sbin/asterisk
/usr/local/lib/asterisk/modules/chan_mgcp.so

This port has installed the following startup scripts which may cause
these network services to be started at boot time.
/usr/local/etc/rc.d/asterisk

If there are vulnerabilities in these programs there may be a security
risk to the system. FreeBSD makes no guarantee about the security of
ports included in the Ports Collection. Please type ‘make deinstall’
to deinstall the port if this is a concern.

For more information, and contact details about the security
status of this software, see the following webpage:
http://www.asteriskpbx.com
===; Cleaning for net-snmp-5.5_4
===; Cleaning for asterisk14-1.4.37_1

в /etc/rc.conf добавлям строку для автоматического старта asterisk после перезагрузки ОС:
asterisk_enable=»YES»

Устанавливаем веб-интерфейс:
cd /usr/ports/www/asterisk-gui/
make install clean

встало:
+—- Asterisk GUI Installation Complete —+
+ +
+ YOU MUST READ THE SECURITY DOCUMENT +
+ +
+ Asterisk-GUI has successfully been +
+ installed. +
+ +
+——————————————-+
+ +
+ BEFORE THE GUI WILL WORK +
+ +
+ Before the GUI will run, you must perform +
+ some modifications to the Asterisk +
+ configuration files in accordance with +
+ the README file. When done, you can +
+ check your changes by doing: +
+ +
+ gmake checkconfig +
+ +
+——————————————-+

=============== Asterisk GUI FreeBSD Instalation =============

You just installed asterisk-gui into /usr/local.

Make sure to check out the following items:
* Configure you PBX enrivonment
* Check the configs: make checkconfig
* Asterisk is running
* manager.conf has ‘write’ uncommented

You should be able to access the web gui in:
http://localhost:8088/asterisk/static/config/index.html

правим:
ee /usr/local/etc/asterisk/http.conf

до след состояния:

[general]
enabled = yes
bindaddr = 0.0.0.0
bindport = 8088
prefix = asterisk
enablestatic = yes

а теперь правим:
ee /usr/local/etc/asterisk/manager.conf

до состояния:
[general]
enabled = yes
webenabled = yes

port = 5038
bindaddr = 0.0.0.0

debug = on ; enable some debugging info in AMI messages (default off).
; Also accessible through the «manager debug» CLI command.

Читайте также:  Tenda w316r настройка репитер

[admin]
secret = pass
write = system,call,log,verbose,command,agent,user,config
; здесь
; admin – логин для веб-интерфейса
; pass – пароль для administrator
; write = system,call,log,verbose,command,agent,user,config – права на запись пользователю administrator

стартуем asterisk:
/usr/local/etc/rc.d/asterisk start

пере стартовать его можно asterisk можно следующим образом:
запускаем консоль asterisk:
asterisk -r

Видим приветствие консоли:
Asterisk 1.4.37, Copyright (C) 1999 — 2010 Digium, Inc. and others.
Created by Mark Spencer
Asterisk comes with ABSOLUTELY NO WARRANTY; type ‘core show warranty’ for details.
This is free software, with components licensed under the GNU General Public
License version 2 and other licenses; you are welcome to redistribute it under
certain conditions. Type ‘core show license’ for details.
=========================================================================
Connected to Asterisk 1.4.37 currently running on bsd (pid = 999)

Далее выполняем поочерёдно:
reload
exit

после того как стартанули, заходим на веб-интерфейс:
http://ip_сервера:8088/asterisk/static/config/index.html
вписываем логин и пасс, которые указывали в /usr/local/etc/asterisk/manager.conf . В примере это:
admin
pass

что то там произошло в момент первого входа. Попадаем на первую страницу.
Перешёл на страницу с Outgoing Calling Rules, она была пуста, нажал «Restore Default Calling Rules», после чего появились:
Longdistance _91XXXXXXXXXX! None Assigned None Selected EditDelete
IAXTEL _91700XXXXXXX! None Assigned None Selected EditDelete
Local_AreaCode _9256XXXXXXX! None Assigned None Selected EditDelete
International _9011XXXXX. None Assigned None Selected EditDelete
Local_7_digits _9XXXXXXX! None Assigned None Selected EditDelete
Emergency _911! None Assigned None Selected EditDelete

Далее идём Options — во вкладку Advanced Options — жмём кнопку «Show Advanced Options»

В столбце слева появится пункт «File Editor», который позволяет редактировать конфигурационные файлы, как если бы вы правили из консольки. В File Editor’e в раскрывающемся списке выбираем файл users.conf и нажав на «+» напротив [general] , раскрываем его содержимое.

Здесь видим стандартного пользователя, созданного при инсталяции автоматически:
fullname=New User
userbase=6000
hasvoicemail=yes
vmsecret=1234
hassip=yes
hasiax=yes
hasmanager=no
callwaiting=yes
threewaycalling=yes
callwaitingcallerid=yes
transfer=yes
canpark=yes
cancallforward=yes
callreturn=yes
callgroup=1
pickupgroup=1

Я исправил эти строки до состояния:
fullname=root
userbase=6000
hasvoicemail=yes
vmsecret=0000
hassip=yes
hasiax=yes
hasmanager=no
callwaiting=yes
threewaycalling=yes
callwaitingcallerid=yes
transfer=yes
canpark=yes
cancallforward=yes
callreturn=yes
callgroup=1
pickupgroup=1
host=dynamic
context=
cid_number=6000
email=адрес_электронной_почты
hasdirectory=no
hasagent=no
secret=пароль_для_пользователя_с_номером_6000
nat=yes
canreinvite=no
dtmfmode=rfc2833
insecure=no
call-limit=100
autoprov=no
label=
macaddress=
linenumber=
LINEKEYS=1
disallow=all
allow=gsm,speex,alaw,ulaw

здесь вам надо исправить:
fullname – на имя вашего пользователя
cid_number и userbase – его номер (дабы избавиться от путаницы, тоже советую сделать одинаковыми)
email – электронная почта этого пользователя

Без строки host=dynamic при попытке позвонить через свой сип-сервер из другой подсети, в CLI вывалится:
[Apr 13 10:15:40] ERROR[999]: chan_sip.c:9661 register_verify: Peer ‘6000’ is trying to register, but not configured as host=dynamic
[Apr 13 10:15:40] NOTICE[999]: chan_sip.c:16721 handle_request_register: Registration from » failed for ‘ip_servera’ — Peer is not supposed to register

Эти данные (логин и пароль) уже можно использовать, вписав в софтварном телефоне, например в Express Talk (в m$ w!nd0w$) где при установке можно выбрать:

вписать данные для авторизации:

и позвонив на номер 500, мы услышим голос робота-девушки, впечатляющей нас на англ. языке, а позвонив на номер 600, можно услышать себя (микрофон не забудьте включить). Если всё так и происходит, значит всё пока в порядке. Если нет, то запускаем консоль asterisk’а:
asterisk –r
и смотрим, что туда вываливается (варнинги, эрроры…предупреждения были у меня, но ошибок не было)

Примечание 1:
Дабы сразу не наводить путаницу и неудобства, содержимое раздела [general] я стёр, перенёс все строки оттуда в созданный мною подпункт, нажав «Add context», вписав название подраздела (я назвал его «6000») и вставив вырезанные из [general] строки.
Таким образом, создаём кучу пользователей, выделив каждого из низ в отдельный подпункт, однако они по-прежнему хранятся в одном файле /usr/local/etc/asterisk/users.conf

Примечание 2:
не забываем про правила для фаервола (я использую ipfw):
#asterisk
/sbin/ipfw -q add 00830 allow all from any to any 8088
/sbin/ipfw -q add 00831 allow all from any 8088 to any
/sbin/ipfw -q add 00832 allow all from any to any 5038
/sbin/ipfw -q add 00833 allow all from any 5038 to any
/sbin/ipfw -q add 00834 allow all from any to any 5060
/sbin/ipfw -q add 00835 allow all from any 5060 to any

Читайте также:  Настройка таргетинговой рекламы для группы

Примечание 3:
Для того, чтобы на почту приходили голосовые сообщения, вероятно вам надо будет поставить и настроить ssmtp на freebsd.

В принципе, пользователи, созданные аналогично примеру выше в файле /usr/local/etc/asterisk/users.conf уже могут звонить друг другу, а, не дозвонившись до абонента, можно оставить ему голосовое сообщение, которое придёт ему на электронный ящик.
Как всегда, буду рад видеть людей, желающих поделиться знаниями в области FreeBSD+Asterisk ибо опИсанное выше — это лишь «вершина айсберга».

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

Для отправки комментария вам необходимо авторизоваться.

Источник

Freepbx: настройка с нуля

Настройка Asterisk с нуля не займет очень много времени даже у непрофессионала. Asterisk – программное обеспечение телефонии, которое превосходит по всем функциям другие серверы для осуществления ATC.

Лицензия Asterisk свободная, что позволяет пользоваться этой программой многим людям.

С каждым годом Астериск все больше и больше развивается, благодаря увеличению ресурсов.

Программа необходима с целью формирования АТС и серверов телефонии. У нее много различных функций, Asterisk может поддерживать VoIP-протоколы и имеет возможность распределения звонков, работы автоответчиков, отправки текстовых сообщений, видео, есть голосовое меню и почта. В статье будет рассмотрена установка с нуля.

Freepbx: настройка с нуля

Интерфейс Freepbhx нужен для более простой настройки Asterisk и управления VoIP-телефонией. Главное преимущество – человеку не надо исправлять самому все текстовые файлы. Эта программа помогает переводить язык программы в виде текста, который поймет пользователь. Для настройки Freepbhx надо установить программу на компьютер.

Для того чтобы установить интерфейс, требуется:

  1. Скачать FreePBX 13 Distro. Выбирать версию, опираясь на программное обеспечение компьютера.
  2. Записать образ системы на диск, используя утилиты.
  3. Изменить параметры загрузки системы.
  4. С этого диска загрузить машину.
  5. Выбрать версию PBX.
  6. Выбрать режим Full install
  7. Нажать ВК.
  8. Придумать и установить пароль.
  9. Перезагрузить компьютер и заходить в аккаунт как пользователь с root-правами.

Установка Asterisk

Установка и настройка окажется простой, если соблюдать пошагово инструкцию.

Если нужна только VoIP-сеть, то можно установить только asterisk. Но лучшим вариантом станет установка трех пакетов.

Драйвер dahdi используется при цифровом оборудовании. Для обмена данными с периферийным оборудованием нужен драйвер. Принцип настройкиAsterisk заключается в следующем:

сервер Asterisk chan_dahdi Драйвер dahdi Карта Телефон/Коммутатор/Телефонная сеть

Библиотека libpri необходима для использования TDM-интерфейсов ISDN: PRI (PrimaryRateInterface) и BRI (BasicRateInterface). Libri делится на каналы по времени – Time Division Multiplexing.

Можно рассмотреть установку Asterisk из исходников. Такой способ установки дает возможность установить Asterisk с нуля.

  • Версия ядра системы должна быть не ниже 2.6.
  • Обязательное наличие файлов заголовков в системе.
  • Присутствие компилятора gccctermcap и openssl.

Проверив все эти моменты, можно приступать к установке. Для этого надо перейти на сайте в Download и загрузить такие архивы:

После этого скопировать файлы на сервер и разместить их в папке «/usr/src/.».

Далее надо запустить терминал в сервере.

Затем распаковать каждый архив командой «tar-xzf tar.gz» .

Потом перейти в каждую папку при помощи команды «cd » .

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

  • «./configure» (это подготовит программу к сборке)
  • «make» (команда для сборки)
  • «makeinstall» (установка программы)

Для установки необходимых пакетов не нужно прилагать особых усилий. Астериск обладает автоматизацией пакетов, поэтому для этого нужен скрипт install_prereq, который можно найти в подкаталоге contrib/scripts, где есть исходные коды.

Нужно зайти в этот подкаталог и запустить скрипт. С помощью него необходимые пакеты будут установлены.

Таким образом, при соблюдении всех действий Asterisk для чайников будет готов.

Читайте также:  Сохранение табличной части в настройках управляемых форм

Как настроить Asterisk на Ubuntu

Соблюдая пошаговую инструкцию, можно просто установить Asterisk на Ubuntu:

  1. Надо скачать на Ubuntu.
  2. Установить пакеты для корректной сборки DAHDI и LibPRI.
  3. Загрузить исходник (необходимо ввести «wget…» вместе со ссылкой на загрузку.
  4. Распаковать программу при помощи команды «tarzxvf».
  5. Зайти в директорию с Asterisk.
  6. Ввести «contrib/scripts/install_prereqinstall», чтобы загрузить утилиты из Asterisk.
  7. Для запуска программы надо написать эту команду, добавив «-unpackaged».
  8. Повторно зайти в каталог с программой.
  9. Заставка появится при вводе «. /configure».
  10. Повторить все то же самое, что делают при запуске Asterisk.

  1. Открыть конфигурационный файл: vi /etc/asterisk/asterisk.conf.
  2. Создать учетную запись asterisk в системе: useraddasterisk–m.
  3. Задать права: chown -R asterisk:asterisk /var/log/asterisk.
  4. Проверить конфигурацию: asterisk –c.

Запуск Астериск из скриптов загрузки:

[asterisk@new asterisk-1.0.1]$ cd channels/h323

[asterisk@new h323]$ make

g++ -g -c -fno-rtti -o ast_h323.o -march=i686 -DPBYTE_ORDER=PLITTLE_ENDIAN -DN

DDEBUG_THREADS -pipe -Wall -fPIC -DP_LINUX -D_REENTRANT -D_GNU_SOURCE -DP_HAS_S

DP_PTHREADS -DPHAS_TEMPLATES -DPTRACING -DP_USE_PRAGMA -I../../include

-I/home/asterisk/openh323/include -Wno-missing-prototypes -Wno-missing-declarations ast_h323.cpp

chan_h323.h:31: warning: `sockaddr_inbindaddr’ defined but not used arcr libchanh323.a ast_h323.o

Как установить Asterisk на Windows

  1. Скачать VirtualBox.
  2. Скачать Asterisk для VirtualBox.
  3. Установить VirtualBox.
  4. Нажать везде «Согласен».
  5. Нажать «Файл», а потом «Импорт конфигураций».
  6. Запустить машину и провести остальные настройки.

Чтобы скачать пакеты голосовых сообщений, надо:

  1. Перейти в папку «contrib/scripts/» с помощью команды «cd».
  2. Открыть «get_mp3_source.sh».
  3. Ввести «makeinstall».
  4. Открыть консоль Asterisk.
  5. Сделать файлы при помощи «makesamples».
  6. Запустить функцию «service asterisk start».

Основным конфигурационным файлом является asterisk.conf. Отсюда берется информация о местоположении файлов в системе.

Файл конфигурации, который пригодится для набора некоторых команд:

  • conf (голосовые почтовые ящики при команде VoiceMail).
  • conf (конфедерация, применяемая установкой Festival).
  • conf (структура, необходимая для указания AlarmReceiver).
  • conf (настройка тонов с указанием Playtones).
  • conf (конфигурация, которая используется командой DUNDiLookup).
  • conf (конфигурация для того, чтобы установить очередь звонков и их параметров для команды Queue).

Файлы конфигурации каналов Asterisk:

  • conf (канал IАX2).
  • conf (канал SIP).
  • conf (канал DАHDi).

Частые ошибки в установке и настройке Asterisk

  • Не отключены анонимные звонки и использован контекст для плана нумерации.

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

  • Отсутствие библиотеки sqlite или ее компонентов для разработчиков для сборки программ.

Чтобы решить эту проблему, надо использовать CentOS с пакетом sqlite-devel: yum -y install sqlite-devel

  • Не получается зарегистрировать Asterisk на сервере ru.

Для решения этой проблемы надо проверить правильность ввода пароля, SIP ID. Также необходимо проверить, как сотрудник создан в «Личном кабинете»: правильно или нет.

  • Отклонение входящего вызова Астериксом.

Надо проверить, находится ли пользователь в регистрации. Необходимо ввести команду sipshowregistry в консоле Астериск.

  • Прохождение звука через одну сторону.

Нужно выбрать либо поддержку nat в Asterisk, либо поддержку SIP. Второй вариант решения проблемы – установка directmedia=nonat. Еще одним способом станет установка debug в Asterisk, с помощью которого можно будет отслеживать все запросы и аудио-трафик.

  • Не получается исходящему вызову пройти.

Для этого надо написать: exten => _XXXXXX,1,Dial(DAHDI/g1/$)

Изменив номер, можно решить проблему.

Заключение

Настройка Asterisk с нуля не окажется трудной как специалисту, так и новичку. Asterisk является отличным решением компьютерной телефонии.

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

Астериск доступен в Ubuntu, но его также можно установить и на Windows.

Для удобства можно использовать Freepbx, так как это функциональный интерфейс для настройки Астериска. Он переводит текст программы на понятный язык, что облегчает задачу. С помощью данной программы можно легко менять количество абонентов, так как платформа очень гибкая и многое позволяет.

Не надо ставить лишние пробелы и ошибаться в написании команд. Совсем незаметные ошибки могут не допустить работу программы.

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

Источник

Adblock
detector