웹사이트 검색

Ubuntu 20.04에 별표 17 VoIP 서버를 설치하는 방법


이 페이지에서

  1. 전제 조건
  2. 시작하기\n
  3. 별표 설치\n
  4. Astersik 사용자 만들기
  5. 별표 구성\n
  6. 별표 GUI 활성화\n
  7. 별표 GUI 설치\n
  8. 별표 GUI 액세스\n
  9. 결론

Asterisk는 Sangoma에서 만든 무료 오픈 소스 VoIP 서버입니다. 모든 규모의 조직을 위한 VoIP 전화 통신 인프라를 구축하는 데 사용됩니다. VoIP는 TCP/IP 스택을 사용하여 전화를 거는 데 사용되는 VoIP(Voice Over Internet Protocol)입니다. VoIP를 사용하면 비용 없이 모바일 장치나 컴퓨터에서 다른 장치로 전화를 걸 수 있습니다. Unix 및 Linux 기반 운영 체제에서 실행되며 기존의 모든 글로벌 전화 통신 네트워크에 연결할 수 있습니다. 회의 통화, 음성 메일, IVR 및 자동 통화 분배를 포함한 일련의 기능을 제공합니다.

이 튜토리얼에서는 Ubuntu 20.04에 Asterisk 서버와 Asterisk GUI를 설치하는 방법을 배웁니다.

전제 조건

  • Ubuntu 20.04를 실행하는 서버.\n
  • 고정 IP 주소가 서버에 구성되어 있습니다.
  • 루트 암호는 서버에서 구성됩니다.\n

시작하기

먼저 다음 명령을 사용하여 시스템 패키지를 최신 버전으로 업데이트합니다.

apt-get update -y

시스템이 업데이트되면 Asterisk에 필요한 다른 종속성을 설치해야 합니다. 다음 명령으로 모두 설치할 수 있습니다.

apt-get install gnupg2 software-properties-common git curl wget libnewt-dev libssl-dev libncurses5-dev subversion libsqlite3-dev build-essential libjansson-dev libxml2-dev uuid-dev -y

모든 패키지를 설치한 후 다음 단계로 진행할 수 있습니다.

별표 설치

기본적으로 Asterisk의 최신 버전은 Ubuntu 20.04 기본 리포지토리에서 사용할 수 없습니다. 따라서 소스에서 다운로드하여 컴파일해야 합니다.

먼저 다음 명령을 사용하여 최신 버전의 Asterisk를 다운로드합니다.

wget http://downloads.asterisk.org/pub/telephony/asterisk/asterisk-17-current.tar.gz

다운로드가 완료되면 다음 명령을 사용하여 다운로드한 파일의 압축을 풉니다.

tar -xvzf asterisk-17-current.tar.gz

다음으로 디렉토리를 추출된 디렉토리로 변경하고 다음 명령을 사용하여 필요한 모든 MP3 모듈을 설치합니다.

cd asterisk-17.7.0
contrib/scripts/get_mp3_source.sh

다음 출력이 표시되어야 합니다.

A    addons/mp3
A    addons/mp3/MPGLIB_README
A    addons/mp3/common.c
A    addons/mp3/huffman.h
A    addons/mp3/tabinit.c
A    addons/mp3/Makefile
A    addons/mp3/README
A    addons/mp3/decode_i386.c
A    addons/mp3/dct64_i386.c
A    addons/mp3/MPGLIB_TODO
A    addons/mp3/mpg123.h
A    addons/mp3/layer3.c
A    addons/mp3/mpglib.h
A    addons/mp3/decode_ntom.c
A    addons/mp3/interface.c
Exported revision 202.

다음으로 다음 명령을 사용하여 다른 종속 항목을 설치합니다.

contrib/scripts/install_prereq install

다음 출력이 표시되어야 합니다.

#############################################
## install completed successfully
#############################################

그런 다음 다음 명령을 사용하여 Asterisk를 구성합니다.

./configure

다음과 같은 결과가 표시되어야 합니다.

configure: Menuselect build configuration successfully completed

               .$$$$$$$$$$$$$$$=..      
            .$7$7..          .7$$7:.    
          .$$:.                 ,$7.7   
        .$7.     7$$$$           .$$77  
     ..$$.       $$$$$            .$$$7 
    ..7$   .?.   $$$$$   .?.       7$$$.
   $.$.   .$$$7. $$$$7 .7$$$.      .$$$.
 .777.   .$$$$$$77$$$77$$$$$7.      $$$,
 $$$~      .7$$$$$$$$$$$$$7.       .$$$.
.$$7          .7$$$$$$$7:          ?$$$.
$$$          ?7$$$$$$$$$$I        .$$$7 
$$$       .7$$$$$$$$$$$$$$$$      :$$$. 
$$$       $$$$$$7$$$$$$$$$$$$    .$$$.  
$$$        $$$   7$$$7  .$$$    .$$$.   
$$$$             $$$$7         .$$$.    
7$$$7            7$$$$        7$$$      
 $$$$$                        $$$       
  $$$$7.                       $$  (TM)     
   $$$$$$$.           .7$$$$$$  $$      
     $$$$$$$$$$$$7$$$$$$$$$.$$$$$$      
       $$$$$$$$$$$$$$$$.                

configure: Package configured for: 
configure: OS type  : linux-gnu
configure: Host CPU : x86_64
configure: build-cpu:vendor:os: x86_64 : pc : linux-gnu :
configure: host-cpu:vendor:os: x86_64 : pc : linux-gnu :

다음으로 다음 명령을 실행하여 권장 모듈을 선택하고 설치합니다.

make menuselect

원하는 모듈을 선택하라는 메시지가 표시됩니다. 화살표 키를 사용하여 탐색하고 Enter 키를 눌러 아래와 같이 선택합니다.

아래와 같이 애드온을 활성화합니다.

아래와 같이 핵심 사운드 모듈을 활성화합니다.

아래와 같이 MOH 패키지를 활성화합니다.

아래와 같이 추가 사운드 패키지를 활성화합니다.

완료되면 저장 및 종료 버튼을 클릭하여 변경 사항을 저장하고 모든 애드온을 설치하십시오.

다음으로 별표를 빌드해야 합니다. 다음 명령으로 수행할 수 있습니다.

make

다음 출력이 표시되어야 합니다.

 +--------- Asterisk Build Complete ---------+
 + Asterisk has successfully been built, and +
 + can be installed by running:              +
 +                                           +
 +                make install               +
 +-------------------------------------------+

그런 다음 다음 명령어를 실행하여 Astersik, 구성 및 샘플을 설치합니다.

make install
make samples
make config
ldconfig

완료되면 다음 단계로 진행할 수 있습니다.

Astersik 사용자 만들기

다음으로 Asterisk 사용자, 그룹을 만들고 Asterisk 구성 디렉터리의 소유권을 변경해야 합니다.

먼저 다음 명령을 사용하여 사용자 및 그룹을 만듭니다.

groupadd asterisk
useradd -r -d /var/lib/asterisk -g asterisk asterisk

다음으로 다음 명령을 실행하여 오디오 및 다이얼아웃 사용자를 Asterisk 그룹에 추가합니다.

usermod -aG audio,dialout asterisk

그런 다음 다음 명령을 사용하여 Asterisk 구성 디렉터리의 소유권을 변경합니다.

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

완료되면 다음 단계로 진행할 수 있습니다.

별표 구성

다음으로 /etc/default/asterisk 파일을 편집하고 기본 사용자를 Asterisk로 설정합니다.

nano /etc/default/asterisk

다음 줄의 주석 처리를 제거하십시오.

AST_USER="asterisk"
AST_GROUP="asterisk"

완료되면 파일을 저장하고 닫은 다음 Asterisk 기본 구성 파일을 편집하고 사용자로 실행을 별표로 설정합니다.

nano /etc/asterisk/asterisk.conf

다음 줄의 주석 처리를 제거하십시오.

runuser = asterisk ; The user to run as.
rungroup = asterisk ; The group to run as.

파일을 저장하고 닫은 다음 Asterisk 서비스를 시작하고 다음 명령을 사용하여 시스템 재부팅 시 시작되도록 활성화합니다.

systemctl restart asterisk
systemctl enable asterisk

이제 다음 명령을 사용하여 Asterisk 서비스의 상태를 확인할 수 있습니다.

systemctl status asterisk

다음 출력이 표시되어야 합니다.

? asterisk.service - LSB: Asterisk PBX
     Loaded: loaded (/etc/init.d/asterisk; generated)
     Active: active (running) since Mon 2020-10-19 12:39:41 UTC; 2min 49s ago
       Docs: man:systemd-sysv-generator(8)
    Process: 47946 ExecStart=/etc/init.d/asterisk start (code=exited, status=0/SUCCESS)
      Tasks: 71 (limit: 4691)
     Memory: 41.7M
     CGroup: /system.slice/asterisk.service
             ??47965 /usr/sbin/asterisk -U asterisk -G asterisk

Oct 19 12:39:41 ubunt4 systemd[1]: Starting LSB: Asterisk PBX...
Oct 19 12:39:41 ubunt4 asterisk[47946]:  * Starting Asterisk PBX: asterisk
Oct 19 12:39:41 ubunt4 asterisk[47946]:    ...done.

다음으로 다음 명령을 사용하여 Asterisk 연결을 확인합니다.

asterisk -rvv

다음과 같은 결과가 표시되어야 합니다.

Asterisk 17.7.0, Copyright (C) 1999 - 2018, 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.
=========================================================================
Running as user 'asterisk'
Running under group 'asterisk'
Connected to Asterisk 17.7.0 currently running on ubunt4 (pid = 47965)
ubunt4*CLI> 

별표 GUI 활성화

웹 브라우저에서 Asterisk에 액세스하려면 Asterisk GUI를 활성화해야 합니다. 먼저 /etc/asterisk/http.conf 파일을 편집합니다.

nano /etc/asterisk/http.conf

주석을 제거하고 다음 줄을 변경합니다.

enabled = yes
bindaddr = 0.0.0.0
bindport = 8088
prefix = asterisk
enable_static = yes
enablestatic = yes

redirect = / /static/config/index.html
uploads = /var/lib/asterisk/uploads/

파일을 저장하고 닫은 다음 /etc/asterisk/manager.conf 파일을 편집하고 관리자 사용자를 설정합니다.

nano /etc/asterisk/manager.conf

다음 줄을 추가/수정합니다.

enabled = yes
webenabled = yes

port = 5038
bindaddr = 0.0.0.0

[admin]
secret = admin1234
read = system,call,log,verbose,command,agent,user,config
write = system,call,log,verbose,command,agent,user,config,originate

완료되면 파일을 저장하고 닫습니다.

별표 GUI 설치

그런 다음 다음 명령을 사용하여 최신 버전의 Asterisk GUI를 다운로드합니다.

svn checkout http://svn.digium.com/svn/asterisk-gui/branches/2.0

다운로드가 완료되면 디렉토리를 다운로드한 디렉토리로 변경하고 다음 명령으로 구성합니다.

cd 2.0/
./configure

다음으로 다음 명령을 사용하여 Asterisk GUI를 빌드합니다.

make

다음 출력이 표시되어야 합니다.

 +------- Asterisk-GUI Build Complete -------+
 + Asterisk-GUI has successfully been built, +
 + and can be installed by running:          +
 +                                           +
 +               make install                +
 +-------------------------------------------+

그런 다음 다음 명령을 실행하여 시스템에 설치하십시오.

make install

다음 출력이 표시되어야 합니다.

 +---- 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:              +
 +                                           +
 +               make checkconfig            +
 +                                           +
 +-------------------------------------------+

마지막으로 Asterisk 서비스를 다시 시작하여 변경 사항을 적용합니다.

systemctl restart asterisk

별표 GUI에 액세스

이제 웹 브라우저를 열고 URL http://your-server-ip:8088/asterisk/static/config/index.html을 사용하여 Asterisk GUI에 액세스하십시오. 다음 페이지로 리디렉션됩니다.

관리자 사용자 이름, 암호를 제공하고 로그인 버튼을 클릭합니다. 다음 페이지에 Asterisk GUI 대시보드가 표시되어야 합니다.

결론

축하합니다! Ubuntu 20.04 서버에 Asterisk 및 Asterisk GUI를 성공적으로 설치했습니다. 이제 서버를 모든 PSTN 네트워크에 연결하고 완전 무료로 통화를 시작할 수 있습니다.