Asterisk е едно от най-известните решения за компютърна телефония, активно инсталирано на различни сървъри. Той поддържа почти всички съвременни кодеци и протоколи, а също така показва добра стабилност, поради което е придобил такава популярност сред системните администратори. Въпреки това, начинаещите потребители, когато се опитват да интегрират Asterisk, могат да се сблъскат с различни трудности, свързани с операцията за директна инсталация. За да избегнете това, препоръчваме да изучите днешния ни материал, в който за пример е взета дистрибуцията CentOS 7.

Инсталиране на Asterisk на CentOS 7

Сложността на изпълнението на задачата се крие във факта, че Asterisk няма да работи без допълнителни компоненти, но те ще трябва да бъдат инсталирани ръчно чрез разопаковане на архивите и компилиране на получените файлове. Този процес ще отнеме много време, затова трябваше да разделя всички инструкции на стъпки, за да ги направя по-лесни за разбиране. Нека започнем с подготвителните стъпки.

Стъпка 1: Предварителни стъпки

Първо, трябва да подготвите сървъра, защото CentOS не винаги разполага с необходимите помощни програми, които ще трябва да използвате, когато изпълнявате следните стъпки, а защитната стена и времето не са конфигурирани. Тази стъпка е най-лесната, тъй като изисква само прецизно въвеждане на команда, но също така е разделена на няколко стъпки.

Инсталиране на необходимите помощни програми

Като цяло инсталирането на Asterisk и помощните компоненти ще изисква пет различни помощни програми, които първоначално може да не присъстват в операционната система. Предлагаме ви да следвате точно ръководството по-долу, за да инсталирате всякакви актуализации и липсващ софтуер.

  1. Всички по-нататъшни действия ще бъдат извършени през "Терминал", така че го стартирайте по начин, който е удобен за вас.
  2. Стартиране на терминала за извършване на подготвителни стъпки преди инсталирането на Asterisk на CentOS 7

  3. Тук, първо, въведете командата sudo yum актуализация... Той трябва да проверява за актуализации на вече инсталираните компоненти и да ги добавя към операционната система, за да осигури правилно взаимодействие с други помощни програми.
  4. Команда за проверка за актуализации, преди да инсталирате Asterisk на CentOS 7

  5. Тази команда, както и всички следващи, се изпълнява като суперпотребител, което означава, че трябва да бъде потвърдена чрез въвеждане на паролата в нов ред. Моля, обърнете внимание, че символите, написани по този начин, няма да се появят в низа.
  6. Потвърждение на командата за проверка за актуализации преди да инсталирате Asterisk на CentOS 7

  7. Ако бъдат намерени актуализации, потвърдете добавянето им към сървъра, като изберете опцията у.
  8. Потвърждаване на инсталирането на актуализации преди инсталиране на Asterisk на CentOS 7

  9. След това можете безопасно да инсталирате всички липсващи помощни програми. Това се прави само с една команда. sudo yum инсталиране на gcc wget ntpdate automake libtool... Няма да се спираме на всеки от тях, тъй като по-подробен анализ ще видите по-късно.
  10. Изтегляне на допълнителни помощни програми, преди да инсталирате Asterisk на CentOS 7

  11. Някои от помощните програми, изброени по-горе, може вече да са в системата, така че когато се появи реда "Инсталация" понякога се показват само една или две програми, а останалите са зависимости. Потвърдете тяхната инсталация, като изберете подходящата опция за отговор.
  12. Потвърждаване на изтеглянето на допълнителни помощни програми, преди да инсталирате Asterisk на CentOS 7

След приключване на операцията ще бъдете уведомени, че всичко е било успешно и остава да преминете към следващия етап от подготвителните действия.

Синхронизация на времето

Ако сте сигурни, че времето на сървъра вече е синхронизирано, не се колебайте да пропуснете тази стъпка, като преминете към конфигуриране на защитната стена. В противен случай ще трябва да зададете ръчно часовата зона и да редактирате конфигурационния файл, който изглежда така:

  1. Използвайте командата sudo cp / usr / share / zoneinfo / Europe / Moscow / etc / localtime , за да изберете часова зона. В тази версия е установен московският пояс. Ако имате нужда от друг, трябва да промените посочената връзка, като промените пътя към файла.
  2. Команда за избор на часова зона, преди да инсталирате Asterisk на CentOS 7

  3. Екип sudo ntpdate ru.pool.ntp.org синхронизирайте времето с мрежата.
  4. Команда за автоматична синхронизация на времето през Интернет, преди да инсталирате Asterisk на CentOS 7

  5. Въведете sudo crontab -e за да отидете на файла за конфигуриране на времето.
  6. Команда за отваряне на конфигурационния файл на времето, преди да инсталирате Asterisk на CentOS 7

  7. Тук настройте скрипта да се синхронизира автоматично, като вмъкнете реда 0 0 * * * / sbin / ntpdate ru.pool.ntp.org... След това запазете промените и затворете редактора.
  8. Добавяне на задача за автоматична проверка на времето, преди да инсталирате Asterisk на CentOS 7

Сега не е нужно да се притеснявате от факта, че някой ден ще трябва да синхронизирате времето сами, защото благодарение на създадената задача за автоматично конфигуриране ние постигнахме желания резултат. Остава само последната подготвителна стъпка преди инсталирането на Asterisk.

Конфигурация на защитната стена

Конфигурирането на защитната стена е един от най-важните процеси преди инсталирането на каквато и да е помощна програма, която ще функционира в локална или глобална мрежа. Звездичката не прави изключение в това отношение, затова следвайте следните стъпки:

  1. IN "Терминал" посочете firewall-cmd --permanent --new-service = звездичка за да създадете нова услуга.
  2. Създаване на нова услуга на защитна стена, преди да инсталирате Asterisk на CentOS 7

  3. Потвърдете създаването с парола за суперпотребител.
  4. Потвърждаване за създаване на нова услуга на защитна стена, преди да инсталирате Asterisk на CentOS 7

  5. Ще бъдете уведомени за успешното завършване на операцията чрез съобщение "Успех".
  6. Успешно създаване на нова услуга, преди да инсталирате Asterisk на CentOS 7

  7. След това можете да въведете командите под една по една, за да отворите всички портове, които искате.

    firewall-cmd --permanent --service = звездичка --add-port = 5060 / tcp
    firewall-cmd --permanent --service = звездичка --add-port = 5060 / udp
    firewall-cmd --permanent --service = звездичка --add-port = 5061 / tcp
    firewall-cmd --permanent --service = звездичка --add-port = 5061 / udp
    firewall-cmd --permanent --service = звездичка --add-port = 4569 / udp
    firewall-cmd --permanent --service = звездичка --add-port = 5038 / tcp
    firewall-cmd --permanent --service = звездичка --add-port = 10000-20000 / udp

    В края пишете firewall-cmd --permanent --add-service = звездичка за да създадете разрешена услуга.

  8. Създаване на нова разрешена услуга на защитна стена, преди да инсталирате Asterisk на CentOS 7

  9. Всички тези команди също се потвърждават задължително чрез въвеждане на парола за суперпотребител.
  10. Потвърждаване за създаване на нова разрешена услуга, преди да инсталирате Asterisk на CentOS 7

  11. След като направите промените, трябва да рестартирате защитната стена, за да приложите настройките: firewall-cmd --reload.
  12. Рестартирайте защитната стена след промяна на Asterisk в CentOS 7

Това завършва всички подготвителни стъпки - можете да продължите с инсталирането на допълнителни компоненти за правилното функциониране на Asterisk и да сте сигурни, че няма да възникнат грешки при добавяне на файлове.

Стъпка 2: добавете допълнителни компоненти

Както знаете, Asterisk няма да работи на сървъра, освен ако първо не инсталирате важни помощни програми, отговорни за нормализиране на взаимодействието с драйвери и TDM интерфейси. Драйверите на платката са внедрени чрез DAHDI и е необходим LibPRI, за да работят интерфейсите. Изтеглянето и сглобяването на тези компоненти ще отнеме много време и ще изисква активна интернет връзка, така че имайте това предвид, преди да започнете.

  1. Нека започнем с DAHDI. Изтеглете архива с файлове, като въведете командата wget https://downloads.asterisk.org/pub/telephony/dahdi-linux-complete/dahdi-linux-complete-current.tar.gz.
  2. Команда за получаване на DAHDI архив в CentOS 7 от официалния сайт

  3. Изтеглянето му ще отнеме около минута, тъй като хранилищата не прехвърлят данни толкова бързо, колкото бихме искали. След това вмъкнете tar -xvf dahdi-linux-complete-current.tar.gz за разопаковане на получените обекти.
  4. Команда за разопаковане на получения DAHDI архив в CentOS 7 от официалния сайт

  5. Това действие се извършва чрез аргумента судозатова го потвърдете, като въведете паролата на суперпотребителя.
  6. Потвърждение за разопаковане на DAHDI в CentOS 7 чрез въвеждане на парола

  7. След като разопаковането приключи, отидете до получената папка чрез cd dahdi-linux-complete- *.
  8. Отидете в папката DAHDI в CentOS 7, за да я компилирате допълнително

  9. Започнете да компилирате тук, като напишете sudo make.
  10. Команда за компилиране на DAHDI компонент на CentOS 7

  11. След това остава само да се извърши инсталацията: sudo make install.
  12. Команда за инсталиране на DAHDI компонент на CentOS 7 след компилирането му

  13. Освен това можете да наберете sudo make configза да проверите текущите настройки.
  14. Команда за конфигуриране на DAHDI в CentOS 7 след успешна инсталация

  15. Оставете директорията на източника чрез cd ..за да започнете да инсталирате следващата помощна програма.
  16. Излезте от папката DAHDI в CentOS 7, след като инсталацията приключи

  17. Принципът на инсталиране на LibPRI е почти същият като този, който току-що беше обсъден, и единствените разлики са в връзките и имената на директориите. Всичко започва с получаването на архива:

    wget https://downloads.asterisk.org/pub/telephony/libpri/libpri-current.tar.gz.

  18. Команда за изтегляне на LibPRI архив в CentOS 7 от официалния сайт

  19. След това се разопакова: sudo tar -xvf libpri-current.tar.gz.
  20. Разархивиране на архива на LibPRI в CentOS 7 след изтегляне от официалния сайт

  21. След успешно извличане трябва да отидете в получената директория чрез cd libpri- *.
  22. Отидете в папката с LibPRI в CentOS 7, за да компилирате компонента

  23. Започнете да изграждате помощната програма тук sudo make.
  24. Компилиране на компонент LibPRI на CentOS 7 след навигация до неговата папка

  25. Когато приключите, инсталирайте библиотеката, като напишете sudo make install.
  26. Инсталиране на LibPRI компонент на CentOS 7 след компилирането му

  27. Оставете текущата папка (cd ..), тъй като вече няма да имаме нужда от него.
  28. Излезте от папката LibPRI на CentOS 7 след завършване на компилацията

Целият процес на изтегляне и компилиране на тези програми ще отнеме около половин час, което е свързано с огромния обем архиви и дългото им разопаковане. Ако сте направили всичко правилно, по време на това не трябва да възникват грешки.

Стъпка 3: Инсталиране на звездичка

Време е да инсталирате инструмента за компютърна телефония Asterisk, тъй като всички необходими помощни компоненти вече са добавени към сървъра. Софтуерът се разпространява под формата на архив TAR.GZ на официалния уебсайт, а инсталирането му е както следва:

  1. IN "Терминал" въведете wget http://downloads.asterisk.org/pub/telephony/asterisk/asterisk-13-current.tar.gz за да изтеглите най-новата стабилна версия на инструмента. Можете да замените връзката, ако искате да получите друга сглобка, като първо я копирате от официалния сайт.
  2. Команда за изтегляне на най-новата версия на Asterisk на CentOS 7 от официалния уебсайт

  3. По същия начин разопаковайте файловете, като напишете sudo tar -xvf звездичка - *. tar.gz.
  4. Команда за разопаковане на изтегления архив Asterisk на CentOS 7

  5. През cd звездичка- * преминете към получената директория.
  6. Отидете в получената директория на помощната програма Asterisk в CentOS 7

  7. Вграденият скрипт се използва за инсталиране на зависимостите ./contrib/scripts/install_prereq инсталиране.
  8. Първа команда за инсталиране на зависимости на помощната програма Asterisk на CentOS 7

  9. След това вмъкнете втора, приблизително същата команда ./contrib/scripts/install_prereq install-unpackaged.
  10. Втора команда за инсталиране на зависимости Asterisk на CentOS 7

  11. Когато приключите, изтрийте ненужните остатъчни файлове sudo направи distclean.
  12. Команда за премахване на остатъчни файлове при инсталиране на зависимости Asterisk на CentOS 7

  13. Ако предварително знаете, че ще трябва да работите с MP3 файлове, трябва да добавите подходящата библиотека, като напишете ./contrib/scripts/get_mp3_source.sh.
  14. Инсталиране на библиотека за работа със звук в Asterisk на CentOS 7

  15. Остава само да се създаде конфигурацията на изходните файлове ./configure --prefix = / usr --sysconfdir = / etc --localstatedir = / var --libdir = / usr / lib64 --with-dahdi --with-pri --with-iconv --with-libcurl - -with-speex --with-mysqlclient.
  16. Команда за основна конфигурация на Asterisk на CentOS 7 преди инсталация

  17. Стартирайте прозореца за конфигуриране на самата помощна програма чрез sudo make menuselect и задайте параметрите там според вашите нужди.
  18. Команда за стартиране на прозореца за конфигуриране на Asterisk на CentOS 7 преди инсталация

  19. Вече знаете, че след разопаковане и конфигуриране на източниците те се компилират. Повторете командите по-долу една по една, за да завършите тази операция.

    sudo make
    направи инсталиране
    направи конфиг
    направете проби

  20. Команди за инсталиране на Asterisk на CentOS 7 след успешна конфигурация

Стъпка 4: Основна настройка и стартиране

Днес няма да се спираме на общата настройка на Asterisk, тъй като това не е включено в темата на материала и се извършва от всеки системен администратор поотделно, започвайки от самия сървър и нуждите за използване на компютърна телефония. Има обаче основни параметри, които трябва да посочите, за да стартирате Asterisk, за да тествате неговата функционалност. Нека ги разгледаме по-отблизо.

  1. Стартирайте конфигурационния файл /etc/asterisk/asterisk.conf чрез всеки удобен текстов редактор.
  2. Стартиране на конфигурационен файл Asterisk на CentOS 7 за основна настройка

  3. Поставете следните редове в него.

    runuser = звездичка
    rungroup = звездичка
    defaultlanguage = ru
    документация_език = ru_RU

  4. Инсталиране на основна настройка на Asterisk на CentOS 7 чрез конфигурационен файл

  5. Запазете промените и излезте от обекта.
  6. Запазване на промените в конфигурационния файл на Asterisk на CentOS 7

  7. Току-що посочихме основния потребител на помощната програма във файла, така че ще трябва да го добавим към системата. Това става чрез sudo useradd звездичка -m.
  8. Създаване на нов потребител за работа с Asterisk на CentOS 7

  9. След това задайте разрешенията за папките, като вмъкнете командите по-долу една по една.

    chown -R звездичка: звездичка / вар / бягане / звездичка
    chown -R звездичка: звездичка / и т.н. / звездичка
    chown -R звездичка: звездичка / var / {lib, log, spool} / звездичка
    chown -R звездичка: звездичка / usr / lib64 / звездичка
    chown -R звездичка: звездичка / вар / дневник / звездичка

  10. Задаване на настройки за достъп до папката Asterisk в CentOS 7 при конфигуриране на помощната програма

  11. Когато приключите, проверете настройките sudo звездичка -cза да сте сигурни, че помощната програма работи.
  12. Проверка на текущото състояние на Asterisk на CentOS 7 след конфигуриране

  13. Остава само да стартирате Asterisk като услуга чрез systemctl разреши звездичка и systemctl старт звездичка.
  14. Команда за стартиране на помощната програма Asterisk на CentOS 7 след успешна конфигурация

Днес завършихте ръководство стъпка по стъпка, чиято основна цел е да покаже на начинаещите потребители как да инсталират Asterisk и необходимите спомагателни компоненти. Просто трябва внимателно да следвате всяко действие и да се обърнете към официалната документация на помощната програма, за да получите информация за неизвестните функции на програмата.