User Tools

Site Tools


freepbx

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
freepbx [2019/09/24 08:54]
val [Подготовка VM]
freepbx [2025/07/26 06:07] (current)
val [sangoma-freepbx-12]
Line 1: Line 1:
 ====== FreePBX ====== ====== FreePBX ======
  
-  * [[http://www.voxlink.ru/knowledge-base/curriculum/​manual-po-freepbx/|FreePBX руководство]] +  * [[http://val.bmstu.ru/unix/voip/Rukovodstvo_Administratora_FreePBX_na_russkom_yazyke.pdf|FreePBX ​13 руководство]] 
-  * [[http://​wiki.merionet.ru/​ip-telephoniya/​45/​krakozyabry-kodirovka-v-cdr-freepbx-14/​|КРАКОЗЯБРЫ:​ КОДИРОВКА В CDR FREEPBX 14]]+
 ===== Установка ===== ===== Установка =====
  
 +  * [[https://​www.asterisk.org/​downloads/​]]
 +  * [[https://​www.freepbx.org/​get-started/​]]
 +  * [[https://​www.freepbx.org/​downloads/​]]
 +  * [[https://​downloads.freepbxdistro.org/​ISO/​]] Новый образ FreePBX
 + 
 ==== Подготовка VM ==== ==== Подготовка VM ====
  
   * Память от 2Gb   * Память от 2Gb
  
-==== Подготовка voip1.un ​====+==== Настройка сети ​====
  
-  * Учетки 00000X на voip1.un настроить на nat +  * Настройка сети в Linux [[Настройка сети в Linux#Файлы конфигурации ​CentOS/​SL/​RHEL]] или
-  * Старые ​сервера остановить,  +
-  * отрегистрировать на voip1 и  +
-  * перезапустить voip1 +
- +
-==== Процесс начальной конфигурации ==== +
- +
-  * В визарде все ответы по умолчанию (Skip или Yes) +
-  * Большая пауза в конфигурационном визарде после выбора временной зоны ​+
  
 <​code>​ <​code>​
-Username: admin +# ifconfig eth0 inet 172.16.1.100+X/24
-Password: Pa$$w0rd +
-Admin Email address: userX@isp.un +
-</code> +
-===== SNG7-FPBX-64bit-1805-2 =====+
  
-!!! Для работы PJSIP необходимо обновить модули (лучше все, занимает,​ примерно ​час, некоторые модули обновляются после нескольких итераций,​ необходимо,​ минимум три)+# route add default gw 172.16.1.254
  
-<code> +# echo "​nameserver 172.16.1.254" ​/​etc/​resolv.conf
-Admin->​Updates->​Module Updates +
-  Check Online, Download all, Upgrade all, Process +
-   +
-  Confirm+
 </​code>​ </​code>​
  
-<​code>​ +  ​После изменения сетевых настроек нужно произвести рестарт asterisk (так ​же помогает ​при проблемах со звуком)
-# systemctl disable fail2ban +
- +
-# systemctl mask fail2ban +
- +
-# init 6   ​Перезагружается долго +
- +
- +
-# service asterisk start +
-</​code>​+
  
 <​code>​ <​code>​
-Application-Extensions+[root@freepbx ~]# rasterisk ​-vvv
  
-  Add Extensions -PJSIP +freepbx*CLIcore restart now
-  User Extension: 402 +
-  Display Name: Petr Petrov +
-  Secret: tpassword402 +
-  Link to a Default User: Create New User +
-  Username: user2   Use Custom Username +
-  Password For New User: password2+
  
 +ИЛИ
  
-Connectivity -> Trunks +[root@freepbx ~]# ps ax | grep ast 
-Add Trunk -> Add...pjsip... +... asterisk ​...
-  Trunk Name: PSTN +
-  Outbound CallerID: 8495NNNNNNN +
-  Username: 00000X +
-  Secret: spasswordX +
-  SIP Server: voip1.un +
-  Contact User: 8495NNNNNNN +
-  From Domain: voip1.un +
-  From User: 00000X+
  
-Connectivity -> Outbound Routes +[root@freepbx ~]# kill NNNN
-  Route Name: ToPSTN +
-  Trunk Sequence for Matched Routes: PSTN +
-  Dial Patterns (match pattern): 8XXXXXXXXXX+
  
-Connectivity -> Inbound Routes +[root@freepbx ~]# service asterisk start
-  Description:​ FromPSTN +
-  DID Number: 8495NNNNNNN +
-  Set Destination:​ Ext 403+
 </​code>​ </​code>​
 +==== Процесс начальной конфигурации ====
  
-===== AsteriskNOW-612 ===== +  * В визарде все ответы по умолчанию (Skip или Yes) 
- +  * [[https://​wiki.freepbx.org/​pages/​viewpage.action?​pageId=37912685#​fwconsolecommands(13+)-Unlock|unlock the GUI login of FreePBX to let you into the FreePBX GUI without the username and password]]
-==== Setup ====+
  
-Please provide the core credentials that will be used to administer your system+  * !!! Большая пауза в конфигурационном визарде для загрузки русских семплов (в настоящее время не доступны)
  
 <​code>​ <​code>​
Line 94: Line 55:
 </​code>​ </​code>​
  
-==== Восстановление ​забытого пароля ​====+==== Отключение ​Firewall ​====
  
-<​code>​ +  * Можно оставить
-UPDATE `ampusers` SET `password_sha1` = SHA1('​12345678'​) WHERE `username`='​admin';​ +
-</​code>​ +
- +
-Не активировать, ​отказаться ​от SIPStation +
- +
-==== Настройки безопасности ==== +
- +
-Желательно отключить f2ban для локальной сети+
  
 <​code>​ <​code>​
-Admin->System Admin->​Intrusion Detection->​Whitelist->​172.16.1.0/​24+Connectivity ​Firewall ​Disable Firewall
 </​code>​ </​code>​
  
-==== Общие настройки SIP ==== +  * !!! в методических целях - обязательно
- +
-  * Опционально!!!+
  
 <​code>​ <​code>​
-Settings->​Asterisk SIP Settings +# systemctl stop fail2ban
- +
-или +
-NAT: no +
-IP Configuration:​ Public IP +
- +
-или +
-External IP: 172.16.1.X +
-Local Networks: 192.168.1.0/​255.255.255.0 +
- +
- +
-Allow SIP Guests: no+
 </​code>​ </​code>​
  
-==== Настройка SIP канала ​==== +==== sangoma-freepbx-12 ​====
- +
-В версии 1013 не получается менять имя пользователя при создании канала +
  
 <​code>​ <​code>​
-Applications->Extensions->Generic CHAN SIP devices +# cat /​etc/​network/​interfaces 
-  ​Submit +</code><​code>​ 
-    User Extension: 401 +... 
-    ​Display Name: Ivanov Ivan Ivanovitch +allow-hotplug enp0s3 
-  ​Device Options +iface enp0s3 inet static 
-    ​secret:​ tpassword401+        address 172.16.1.100+X 
 +        netmask 255.255.255.0 
 +        gateway 172.16.1.254 
 +</​code><​code
 +# /​etc/​resolv.conf 
 +</​code><​code>​ 
 +nameserver 172.16.1.254 ​ 
 +</​code><​code>​ 
 +# init 6
 </​code>​ </​code>​
  
-==== Отладка ====+  * На шаге "​Sangoma Smart Firewall..."​ выбираем Abort, включим после настройки через Connectivity->​Firewall 
 +  * В случае блокировки использовать команды:​
 <​code>​ <​code>​
-Admin->​Asterisk CLI+# fwconsole firewall disable
  
-Reports->​Asterisk Log Files+# systemctl disable fail2ban
 </​code>​ </​code>​
  
-==== Делегирование прав регистрации абонентов ​====+===== Базовая конфигурация =====
  
-Удерживая клавишу CTRL +Может не понадобиться
- +
-<​code>​ +
-Admin -> Administrator +
-  Username: admin2 +
-  Password: password2 +
-  Admin Access +
-    Application->​Extensions +
-    Apply Changes Bar +
-    Add Extensions +
-</​code>​ +
-==== Настройка подключения к VoIP ====+
  
 <​code>​ <​code>​
-Connectivity->​Trunks->​Add ​SIP Trunk+Settings ​Asterisk ​SIP Settings 
 +  External Address: 172.16.1.100+X 
 +  Local Networks: 172.16.0.0 / 16 
 +  Local Networks: 10.0.0.0 / 8
 </​code>​ </​code>​
 +===== Управление телефонными номерами и пользователями =====
  
-=== Обработка исходящих вызовов ===+  * [[https://​wiki.freepbx.org/​display/​FPG/​Bulk+Handler+User+Guide|Bulk Handler User Guide]]
  
-== Настройка канала для исходящих вызовов == 
 <​code>​ <​code>​
-Connectivity->​Trunks->​Add SIP Trunk+Application-Extensions
  
-General Settings +  Add Extensions -> PJSIP 
-  ​Trunk Name: Voip1 00000X +  ​User Extension: 402 
-  ​Outbound CallerID89166071103+  Display ​Name: Petr Petrov 
 +  ​Secret: tpassword402 
 +  Link to a Default User: Create New User 
 +  Username: user2   Use Custom Username 
 +  Password For New User: password2 
 +</​code><​code>​ 
 +C:\> cd Documents
  
-Outgoing Settings +C:\> notepad extensions.csv 
-  Trunk Namevoip1_00000X +</​code><​code>​ 
- +extension,​name,​secret 
-  PEER Details: +401,Ivan Ivanov,​tpassword401 
- +403,Sidor Sidorov,​tpassword403
-host=voip1.un +
-defaultuser=00000X +
-fromuser=00000X +
-fromdomain=voip1.un +
-secret=spasswordX +
-type=peer+
 </​code>​ </​code>​
  
-== Добавление маршрута для совершения исходящих вызовов == +Можно после, когда понадобиться UCP 
-<​code>​ +
-Connectivity->​Outbound Routes->​Add Route +
-Route Name: Call_To_PSTN +
-Dial Patterns that will use this Route  +
-  match pattern 89XXXXXXXXX +
-  match pattern 8495XXXXXXX +
-  match pattern 8499XXXXXXX +
- +
-Trunk Sequence for Matched Routes +
-  0: voip1 00000X  +
-</​code>​ +
- +
-=== Обработка входящих вызовов === +
- +
-  * [[http://​wiki.merionet.ru/​ip-telephoniya/​35/​nastrojka-modulya-custom-context-v-freepbx/​]]+
  
-== Настройка канала для входящих звонков == 
 <​code>​ <​code>​
-Connectivity->Trunks->Edit SIP Trunk +C:\notepad users.csv 
- +</​code><​code
-  PEER Details: +username,​password,​default_extension 
- +user1,​password1,​401 
-nat=no +user3,​password3,​403 
-directmedia=no +</​code><​code>​ 
-insecure=invite +Admin -> Bulk Handler 
-callbackextension=voip1_00000X+!!! Не включает в группу All Users, приходится "​вручную"​ для доступа к UCP 
 </​code>​ </​code>​
  
-== Объединение телефонов в группу вызова == +===== Звонки в "город" =====
-<​code>​ +
-Application->​Ring Groups->​Add Ring Group +
-Group Description:​ All Phones +
-Ring Strategy: ringall +
-Extension List: 401 +
-                403 +
-Destination if no answer: Terminate Call Hangup +
-</​code>​+
  
-== Добавление маршрута для обработки входящих вызовов == +  * !!! Могут быть проблемы с голосом,​ помогает потребуется перезагрузка всей системы (попробовать перезагрузить сервис asterisk) ​
-<​code>​ +
-Connectivity->​Inbound Routes->​Add Incoming Route+
  
-Description:​ From voip1 00000X 
-DID Number: voip1_00000X ​ 
-Set Destination:​ Ring Groups: All Phones 
-</​code>​ 
- 
-можно использовать цепочки групп используя атрибут групп "​Destination if no answer"​ 
- 
-==== Управление кодами ДВО ==== 
- 
-  * !!! Для LinkSys может понадобиться отключить Voice->​Regional->​Vertical Service Activation Codes 
  
 <​code>​ <​code>​
-Admin->Feature Codes +Connectivity ​-> Trunks 
-</code>+Add Trunk -Add...pjsip... 
 +  Trunk Name: PSTN 
 +  Outbound CallerID: 8495NNNNNNN 
 +  Username: 00000X 
 +  Secret: spasswordX 
 +  SIP Server: voip1.un 
 +  Contact User: 8495NNNNNNN 
 +  From Domain: voip1.un 
 +  From User: 00000X
  
-=== Управление переводом вызова === +Connectivity ​-> Outbound Routes 
-<​code>​ +  Route Name: ToPSTN 
-Admin->Feature Codes+  Trunk Sequence for Matched Routes: PSTN 
 +  Dial Patterns (match pattern): 8XXXXXXXXXX
  
-In-Call Asterisk Attended Transfer*2 +Connectivity ​-> Inbound Routes 
-In-Call Asterisk Blind Transfer ​    ## +  DescriptionFromPSTN 
- +  DID Number: 8495NNNNNNN 
-Setting->​General Setting->​Asterisk Dial command optionsTt...+  Set DestinationExt 403
 </​code>​ </​code>​
  
-=== Перехват вызовов ===+===== Звонки ​в оседний офис"​ =====
 <​code>​ <​code>​
-Application->Extension->4XX +Connectivity ​-> Trunks 
-callgroup1 +Add Trunk -> Add...iax2... 
-pickupgroup1 +  Trunk NameCORP 
-</​code>​ +  ​Outbound CallerID013401 
-==== Follow Me ====+  iax Settings 
 +    ​Outgoing 
 +      Trunk Name: corp_out 
 +      PEER Details 
 +host=corp.un 
 +username=corp13 
 +secret=apassword13 
 +type=peer 
 +auth=md5 
 +    Incoming 
 +      USER Context: corp 
 +      USER Details: 
 +secret=apassword 
 +type=user 
 +host=dynamic 
 +auth=md5 
 +   
 +Connectivity -> Outbound Routes 
 +  Route Name: ToCORP 
 +  Trunk Sequence for Matched Routes: CORP 
 +  Dial Patterns  
 +    prefix: 000 
 +    match pattern: XXX
  
-<​code>​ +Connectivity ​-> Inbound Routes 
-Admin->​User Management->Ivanov Ivan Ivanovitch +  ​DescriptionFromCORP 
-  ​Login Nameuser1 +  ​DID Number_XXX 
-  ​Passwordpassword1 +  ​Set DestinationExt 401 
-  ​Linked Extension: 401 +</​code> ​ 
-</​code>​+
  
-==== Локализация ==== +===== Интерфейс пользователя =====
- +
-  * [[Сервис Asterisk#​Локализация сообщений Asterisk]]+
  
 +  * Unconditional Call Forwarding
 <​code>​ <​code>​
-Settings->​Asterisk SIP Settings->​Chan SIP +http://​172.16.1.100+X/​ucp/​
-  Languageru+
 </​code>​ </​code>​
  
Line 286: Line 217:
  
   * [[https://​asterisk-pbx.ru/​wiki/​freepbx/​custom_context|Во FreePBX предусмотрено использование пользовательских (custom) файлов]]   * [[https://​asterisk-pbx.ru/​wiki/​freepbx/​custom_context|Во FreePBX предусмотрено использование пользовательских (custom) файлов]]
 +
 +  * Admin -> Config Edit
 <​code>​ <​code>​
-# cat /​etc/​asterisk/​sip_general_additional.conf 
-</​code><​code>​ 
-... 
-</​code><​code>​ 
-# cat /​etc/​asterisk/​sip_additional.conf 
-</​code><​code>​ 
-... 
-</​code><​code>​ 
-# cat /​etc/​asterisk/​extensions_additional.conf 
-</​code><​code>​ 
-... 
-</​code><​code>​ 
-# cat /​etc/​asterisk/​sip_custom.conf 
-</​code><​code>​ 
-language=ru 
-</​code><​code>​ 
 # cat /​etc/​asterisk/​extensions_custom.conf # cat /​etc/​asterisk/​extensions_custom.conf
 </​code><​code>​ </​code><​code>​
Line 315: Line 232:
 </​code>​ </​code>​
  
 +===== Дополнительные задания =====
  
 +  * Настроить IVR
 +  * Добавить учетную запись помошника администратора с ограниченными правами (только на регистрацию телефонов и пользователей)
 +  * Разобраться,​ как сделать импорт пользователей с автоматическим включение в группу "All Users"
freepbx.1569304470.txt.gz · Last modified: 2019/09/24 08:54 by val