Как установить Asterisk на Almalinux 10
Дата публикации: 2025-09-03T09:21:59
Теги: ["Asterisk", "Almalinux"]
Asterisk - это open-source для создания приложений связи. Кроме того, Asterisk превращает обычный компьютер в сервер связи, и он запускает системы IP PBX и VoIP-шлюзы и серверы конференций и другие пользовательские приложения. Малые и крупные бизнес-компании, колл-центры, перевозчики и правительственные учреждения по всему миру используют его. В этом посте мы шаг за шагом объясним, как установить Asterisk на AlmaLinux 10.
Предпосылки
- Сервер под управлением AlmaLinux 10 или любой другой ОС Linux.
- Привилегии пользователя: пользователь root или не root с привилегиями sudo.
Конвенции
# — данные команды должны выполняться с правами root либо непосредственно от имени пользователя root, либо с помощью команды sudo. $ – данные команды должны выполняться от имени обычного пользователя.
Шаг 1. Обновите систему
Мы предполагаем, что у вас установлена новая версия AlmaLinux 10. Нам необходимо обновить системные пакеты до последних доступных версий. Для этого выполните следующие команды:
sudo dnf update -y && sudo dnf upgrade -y
Шаг 2. Настройте SELinux и Firewall
Я собираюсь отключить SElinux, чтобы не предотвращать любые установки.
sudo sed -i -e "s/^SELINUX=.*/SELINUX=disabled/" /etc/selinux/config
После этого перезагрузите свой сервер.
Шаг 3. Установите EPEL и необходимые пакеты
Существует ряд пакетов, которые Asterisk требует установки. Запустите следующие команды для их установки:
sudo dnf config-manager --set-enabled crb sudo dnf install epel-release ##OR sudo dnf install \ https://dl.fedoraproject.org/pub/epel/epel-release-latest-10.noarch.rpm
Установите другие требуемые пакеты следующим образом:
sudo dnf -y install git wget vim net-tools sqlite-devel psmisc ncurses-devel newt-devel libxml2-devel libtiff-devel gtk2-devel libtool libuuid-devel subversion kernel-devel crontabs cronie-anacron libedit libedit-devel
Также установите пакеты групповых инструментов разработки со следующей командой:
sudo dnf group -y install "Development Tools"
Шаг 4. Установите Jansson
Jansson - это C библиотека для кодирования, декодирования и манипулирования данными JSON.
cd /usr/src/ sudo git clone https://github.com/akheron/jansson.git cd jansson sudo autoreconf -i sudo ./configure --prefix=/usr/ sudo make sudo make install
Шаг 5. Установите PJSIP
PJSIP - это свободная и открытая мультимедийная коммуникационная библиотека. Он реализует стандартные протоколы, такие как SIP, SDP, RTP, STUN, TURN и ICE. Скачать последнюю версию с официального веб-сайта с использованием виджета, экстракта и установки следующим образом:
cd ~ git clone https://github.com/pjsip/pjproject.git cd pjproject ./configure CFLAGS="-DNDEBUG -DPJ_HAS_IPV6=1" --prefix=/usr --libdir=/usr/lib64 --enable-shared --disable-video --disable-sound --disable-opencore-amr make dep make sudo make install sudo ldconfig
Шаг 6. Установите Asterisk 22 LTS
Посетите официальный сайт Asterisk и загрузите последнюю версию или используйте виджет, чтобы добраться до вашего терминала и экстракта.
cd /usr/src sudo wget https://downloads.asterisk.org/pub/telephony/asterisk/asterisk-22-current.tar.gz sudo tar xvf asterisk-22-current.tar.gz cd asterisk-22*/
Установка зависимостей Asterisk с помощью скрипта `install_prereq`:
sudo ./contrib/scripts/install_prereq install
Чтобы включить MP3-музыку во время ожидания, выполните следующие команды для установки необходимых зависимостей.
sudo dnf install svn sudo ./contrib/scripts/get_mp3_source.sh
Затем настройте Asterisk следующим образом:
sudo ./configure --libdir=/usr/lib64 --with-jansson-bundled
Настройка Asterisk Меню опций, используя следующую команду:
sudo make menuselect
Вы должны получить список функций для включения. Используйте клавиши со стрелками для навигации и ключа `ENTER` для выбора добавить `chan_ooh323` и `format_mp3`, как показано ниже:
На Core Sound Packages выберите форматы пакетов Audio, как показано ниже.
Для Music on Hold выберите показанные пакеты.
На дополнительные звуковые пакеты выберите как показано ниже.
После этого нажмите на `Save & Exit`.
Затем запустите команду ниже, чтобы построить Asterisk.
sudo make
Затем установите Asterisk со следующей командой.
sudo make install
Asterisk был успешно установлен. Вы можете запустить следующие команды для общей справочной документации, и образец базового PBX.
sudo make samples sudo make config
Теперь создайте отдельного пользователя для запуска услуг Asterisk и обновите право собственности на каталоги.
sudo groupadd asterisk
sudo useradd -r -d /var/lib/asterisk -g asterisk asterisk
sudo usermod -aG audio,dialout asterisk
sudo chown -R asterisk.asterisk /etc/asterisk /var/{lib,log,spool}/asterisk /usr/lib64/asterisk
sudo restorecon -vr {/etc/asterisk,/var/lib/asterisk,/var/log/asterisk,/var/spool/asterisk}
Установить пользователя по умолчанию Asterisk для asterisk:
$ sudo vim /etc/sysconfig/asterisk ###Uncomment these lines AST_USER="asterisk" AST_GROUP="asterisk" $ sudo vim /etc/asterisk/asterisk.conf ###Uncomment these lines runuser = asterisk ; The user to run as. rungroup = asterisk ; The group to run as.
Шаг 7. Создайте служебный файл для автоматического запуска Asterisk
Создайте файл службы Linux.
sudo tee /etc/systemd/system/asterisk.service > /dev/null <<'EOF'
[Unit]
Description=Asterisk PBX and telephony daemon.
After=network.target
[Service]
Type=simple
Environment=HOME=/var/lib/asterisk
#if systemd do not provide hostname and you need to use ${ENV(HOSTNAME)}
#Environment=HOSTNAME=%H
WorkingDirectory=/var/lib/asterisk
User=asterisk
Group=asterisk
ExecStart=/usr/sbin/asterisk -f -C /etc/asterisk/asterisk.conf
ExecStop=/usr/sbin/asterisk -rx 'core stop now'
ExecReload=/usr/sbin/asterisk -rx 'core reload'
#if /var/run is a tmpfs, this will create /var/run/asterisk on start
RuntimeDirectory=asterisk
#Nice=0
#UMask=0002
LimitCORE=infinity
#LimitNOFILE=
Restart=always
RestartSec=4
# Prevent duplication of logs with color codes to /var/log/messages
StandardOutput=null
PrivateTmp=false
[Install]
WantedBy=multi-user.target
EOF
Включите и запустите Asterisk при загрузке.
sudo systemctl daemon-reload sudo systemctl enable --now asterisk
Используйте следующую команду для тестирования, если вы желаете подключиться к Asterisk CLI.
sudo asterisk -rvvv
Завершение
Мы завершили наше руководство по установке Asterisk на системах AlmaLinux 10. Мы начали с подготовки сервера с необходимыми зависимостями, а затем приступили к установке и настройке Asterisk.
Если вам понравился этот пост по установке Asterisk на системах AlmaLinux 10, пожалуйста, поделитесь им со своими друзьями в социальных сетях, которым может быть интересна эта статья или оставьте комментарий ниже.