IT

[IP-PBX] Rocky 9 OS, Asterisk 22 install 설치

IT꿈나무 2026. 3. 17. 23:17
반응형
dnf install -y subversion
contrib/scripts/get_mp3_source.sh

1.Asterisk 설치 및 기본 설정

dnf -y update
dnf -y groupinstall "Development Tools"
dnf -y install epel-release

dnf -y install wget curl git \
ncurses-devel libxml2-devel sqlite-devel \
jansson-devel libuuid-devel openssl-devel \
newt-devel libedit-devel

jansson-devel 오류 발생.

원인 정리

Error: Unable to find a match: jansson-devel

👉 의미

패키지가 없는 게 아니라

현재 활성화된 repo에서 못 찾는 상태

해결 순서 (그대로 따라가면 해결됨)
1. AppStream/BaseOS repo 확인
dnf repolist

👉 여기서 최소 있어야 함:

baseos

appstream

❌ 없으면 → repo 깨진 상태

2. 캐시 초기화 (이걸로 대부분 해결됨)
dnf clean all
dnf makecache

다시 시도:

dnf install jansson-devel
3. 그래도 안되면 (거의 이 케이스)

👉 CRB repo 활성화 필요

dnf config-manager --set-enabled crb

그리고 다시:

dnf install jansson-devel
왜 CRB가 필요한가

Rocky 9 구조가 바뀌면서:

BaseOS → 기본

AppStream → 일반 패키지

CRB (CodeReady Builder) → 개발용(devel) 패키지

👉 *-devel 대부분이 여기 있음

필수 패키지 재설치

dnf -y install wget curl git \
ncurses-devel libxml2-devel sqlite-devel \
jansson-devel libuuid-devel openssl-devel \
newt-devel libedit-devel

2. Asterisk 22 다운로드

cd /usr/src
wget http://downloads.asterisk.org/pub/telephony/asterisk/asterisk-22-current.tar.gz
tar xvf asterisk-22-current.tar.gz
cd asterisk-22*

 

3.(선택) MP3 지원

dnf install -y subversion
contrib/scripts/get_mp3_source.sh

4.configure (여기서 에러나면 의존성 부족)

./configure --libdir=/usr/lib64

5.모듈 선택(중요 포인트)

make menuselect

✔ 반드시 체크 추천:

  • chan_pjsip (기본 SIP)
  • res_http_websocket (WebRTC)
  • codec_opus
  • format_mp3ㅡ마

👉 chan_sip은 구버전이라 웬만하면 쓰지 마라

6. 컴파일

make -j$(nproc)

7. 설치

make install
make samples

(dnf install -y chkconfig)
make config
ldconfig​

8. asterisk 전용 계정 (권장)

useradd -r -d /var/lib/asterisk -s /sbin/nologin asterisk

chown -R asterisk:asterisk /etc/asterisk
chown -R asterisk:asterisk /var/{lib,log,spool}/asterisk
chown -R asterisk:asterisk /usr/lib64/asterisk

9. 서비스 계정 적용

vi /etc/sysconfig/asterisk

[추가]
AST_USER="asterisk"
AST_GROUP="asterisk"

 

10. 서비스 실행

systemctl daemon-reexec
systemctl enable asterisk
systemctl start asterisk

systemctl status asterisk

10.1 오류 발생


[Unit]
Description=Asterisk PBX
After=network.target

[Service]
Type=simple
User=asterisk
Group=asterisk
ExecStart=/usr/local/sbin/asterisk -f -U asterisk -G asterisk
ExecStop=/usr/local/sbin/asterisk -rx "core stop now"
Restart=always

[Install]
WantedBy=multi-user.target

10.2 다시 적용

systemctl daemon-reload
systemctl restart asterisk

10.3 다시 빌드

make menuselect   # format_mp3 OFF
make clean
make -j$(nproc)
make install

which asterisk 로 실행파일이 생성 되었는지 확인.

11.CLI 접속

asterisk -rvvv (현재 구동된 상태로 CLI 접속)
asterisk -cvvv (직접 구동하고 접속)

11. 방화벽(필수)

firewall-cmd --permanent --add-port=5060/udp
firewall-cmd --permanent --add-port=5060/tcp
firewall-cmd --permanent --add-port=10000-20000/udp
firewall-cmd --reload

다음 단계 (중요)

지금 설치까지 끝나면 보통 여기로 이어짐:

  • SIP 계정 생성 (pjsip.conf)
  • Dialplan 작성 (extensions.conf)
  • 외부망 (LGU+ SIP trunk)
  • SBC 붙이기

참고자료:
[1]  https://www.mrlatte.net/research/2024/06/15/configuration-asterisk-ubuntu24/

 

Ubuntu 24.x 환경에 Asterisk 설치 및 설정

본 가이드에서는 Ubuntu 24.x 환경에서 Asterisk 설치부터 pjsip.conf, extensions.conf 설정, 그리고 안드로이드 Linphone을 이용한 테스트까지 VoIP 시스템 구축 전 과정을 안내합니다. Asterisk 설치 및 기본 설정

www.mrlatte.net

11

반응형