Cách cài đặt Asterisk 17 VoIP Server trên Ubuntu 20.04

theanh

Administrator
Nhân viên
Asterisk là máy chủ VoIP miễn phí và mã nguồn mở do Sangoma tạo ra. Nó được sử dụng để xây dựng cơ sở hạ tầng điện thoại VoIP cho mọi quy mô tổ chức. VoIP là Giao thức thoại qua Internet được sử dụng để thực hiện cuộc gọi bằng ngăn xếp TCP/IP. Với VoIP, bạn có thể thực hiện cuộc gọi từ thiết bị di động hoặc máy tính của mình đến các thiết bị khác mà không mất bất kỳ chi phí nào. Nó chạy trên hệ điều hành dựa trên Unix và Linux và có thể kết nối bất kỳ mạng điện thoại toàn cầu truyền thống nào. Nó cung cấp một bộ tính năng bao gồm cuộc gọi hội nghị, thư thoại, IVR và phân phối cuộc gọi tự động.

Trong hướng dẫn này, chúng ta sẽ tìm hiểu cách cài đặt máy chủ Asterisk và Asterisk GUI trên Ubuntu 20.04.

Điều kiện tiên quyết​

  • Một máy chủ chạy Ubuntu 20.04.
  • Địa chỉ IP tĩnh được cấu hình trong máy chủ của bạn.
  • Một mật khẩu gốc được cấu hình trên máy chủ.

Bắt đầu​

Trước tiên, hãy cập nhật các gói hệ thống của bạn lên phiên bản mới nhất bằng lệnh sau:
Mã:
apt-get update -y
Sau khi hệ thống của bạn được cập nhật, bạn sẽ cần cài đặt các phụ thuộc khác mà Asterisk yêu cầu. Bạn có thể cài đặt tất cả chúng bằng lệnh sau:
Mã:
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
Sau khi cài đặt tất cả các gói, bạn có thể tiến hành bước tiếp theo.

Cài đặt Asterisk​

Theo mặc định, phiên bản Asterisk mới nhất không có trong kho lưu trữ mặc định của Ubuntu 20.04. Vì vậy, bạn sẽ cần tải xuống và biên dịch nó từ nguồn.

Đầu tiên, hãy tải xuống phiên bản Asterisk mới nhất bằng lệnh sau:
Mã:
wget http://downloads.asterisk.org/pub/telephony/asterisk/asterisk-17-current.tar.gz
Sau khi tải xuống, hãy giải nén tệp đã tải xuống bằng lệnh sau:
Mã:
tar -xvzf asterisk-17-current.tar.gz
Tiếp theo, hãy thay đổi thư mục thành thư mục đã giải nén và cài đặt tất cả các mô-đun MP3 cần thiết bằng lệnh sau:
Mã:
cd asterisk-17.7.0
contrib/scripts/get_mp3_source.sh
Bạn sẽ nhận được kết quả sau:
Mã:
A addons/mp3A addons/mp3/MPGLIB_READMEA addons/mp3/common.cA addons/mp3/huffman.hA addons/mp3/tabinit.cA addons/mp3/MakefileA addons/mp3/READMEA addons/mp3/decode_i386.cA addons/mp3/dct64_i386.cA addons/mp3/MPGLIB_TODOA addons/mp3/mpg123.hA addons/mp3/layer3.cA addons/mp3/mpglib.hA addons/mp3/decode_ntom.cA addons/mp3/interface.cPhiên bản đã xuất 202.
Tiếp theo, cài đặt các phụ thuộc khác bằng lệnh sau:
Mã:
contrib/scripts/install_prereq install
Bạn sẽ thấy thông báo sau đầu ra:
Mã:
################################################## cài đặt hoàn tất thành công#############################################################
Tiếp theo, cấu hình Asterisk bằng lệnh sau:
Mã:
./configure
Bạn sẽ nhận được đầu ra sau:
Mã:
configure: Cấu hình xây dựng Menuselect thành công đã hoàn tất .$$$$$$$$$$$$$$=.. .$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: Gói được cấu hình cho:configure: Loại hệ điều hành: linux-gnuconfigure: CPU máy chủ: x86_64configure: build-cpu:vendor:os: x86_64 : pc : linux-gnu :configure: host-cpu:vendor:os: x86_64 : pc : linux-gnu :
Tiếp theo, chạy lệnh sau để chọn và cài đặt một số mô-đun được đề xuất:
Mã:
make menuselect
Bạn sẽ được yêu cầu chọn mô-đun mong muốn. Sử dụng các phím mũi tên để điều hướng và nhấn phím Enter để chọn như hiển thị bên dưới:

Bật các tiện ích bổ sung như hiển thị bên dưới:



Bật các mô-đun âm thanh cốt lõi như hiển thị bên dưới:



Bật các gói MOH như hiển thị bên dưới:



Bật các gói âm thanh bổ sung như hiển thị bên dưới:



Sau khi hoàn tất, hãy nhấp vào nút Lưu & Thoát để lưu các thay đổi và cài đặt tất cả các tiện ích bổ sung.

Tiếp theo, bạn sẽ cần xây dựng Asterisk. Bạn có thể thực hiện bằng lệnh sau:
Mã:
make
Bạn sẽ thấy đầu ra sau:
Mã:
+--------- Asterisk Build Complete ---------+ + Asterisk đã được build thành công và + + có thể cài đặt bằng cách chạy: + + + + make install + +-------------------------------------------+
Tiếp theo, cài đặt Astersik, config và samplebằng cách chạy lệnh sau:
Mã:
make install
make samples
make config
ldconfig
Sau khi hoàn tất, bạn có thể tiến hành bước tiếp theo.

Tạo Người dùng Astersik​

Tiếp theo, bạn sẽ cần tạo người dùng Asterisk, nhóm và thay đổi quyền sở hữu thư mục cấu hình Asterisk.

Đầu tiên, tạo người dùng và nhóm bằng lệnh sau:
Mã:
groupadd asterisk
useradd -r -d /var/lib/asterisk -g asterisk asterisk
Tiếp theo, thêm người dùng âm thanh và dialout vào nhóm Asterisk bằng chạy lệnh sau:
Mã:
usermod -aG audio,dialout asterisk
Tiếp theo, thay đổi quyền sở hữu của thư mục cấu hình Asterisk bằng lệnh sau:
Mã:
chown -R asterisk.asterisk /etc/asterisk
chown -R asterisk.asterisk /var/{lib,log,spool}/asterisk
chown -R asterisk.asterisk /usr/lib/asterisk
Sau khi hoàn tất, bạn có thể tiến hành bước tiếp theo.

Cấu hình Asterisk​

Tiếp theo, chỉnh sửa tệp /etc/default/asterisk và đặt người dùng mặc định thành Asterisk:
Mã:
nano /etc/default/asterisk
Bỏ chú thích các dòng sau:
Mã:
AST_USER="asterisk"AST_GROUP="asterisk"
Lưu và đóng tệp khi bạn hoàn tất, hãy chỉnh sửa tệp cấu hình mặc định của Asterisk và đặt người dùng chạy dưới dạng asterisk:
Mã:
nano /etc/asterisk/asterisk.conf
Bỏ chú thích các dòng sau:
Mã:
runuser = asterisk ; Người dùng chạy dưới dạng.rungroup = asterisk ; Nhóm chạy dưới dạng.
Lưu và đóng tệp, sau đó khởi động dịch vụ Asterisk và cho phép dịch vụ này khởi động khi khởi động lại hệ thống bằng lệnh sau:
Mã:
systemctl restart asterisk
systemctl enable asterisk
Bây giờ bạn có thể xác minh trạng thái của dịch vụ Asterisk bằng lệnh sau:
Mã:
systemctl status asterisk
Bạn sẽ nhận được kết quả đầu ra sau:
Mã:
? asterisk.service - LSB: Asterisk PBX Đã tải: đã tải (/etc/init.d/asterisk; đã tạo) Đang hoạt động: đang hoạt động (đang chạy) kể từ Thứ Hai 2020-10-19 12:39:41 UTC; 2 phút 49 giây trước Tài liệu: man:systemd-sysv-generator(8) Quy trình: 47946 ExecStart=/etc/init.d/asterisk start (code=exited, status=0/SUCCESS) Nhiệm vụ: 71 (giới hạn: 4691) Bộ nhớ: 41,7M CGroup: /system.slice/asterisk.service ??47965 /usr/sbin/asterisk -U asterisk -G asterisk19 tháng 10 12:39:41 ubuntu2004 systemd[1]: Đang khởi động LSB: Asterisk PBX...19 tháng 10 12:39:41 ubuntu2004 asterisk[47946]: * Đang khởi động Asterisk PBX: asterisk19 tháng 10 12:39:41 ubuntu2004 asterisk[47946]: ...xong.
Tiếp theo, hãy xác minh kết nối Asterisk bằng lệnh sau:
Mã:
asterisk -rvv
Bạn sẽ nhận được kết quả sau:
Mã:
Asterisk 17.7.0, Bản quyền (C) 1999 - 2018, Digium, Inc. và những đơn vị khác.Được tạo bởi Mark Spencer Asterisk KHÔNG CÓ BẢO HÀNH HOÀN TOÀN; hãy nhập 'core show guarantee' để biết chi tiết.Đây là phần mềm miễn phí, với các thành phần được cấp phép theo Giấy phép Công cộng GNU phiên bản 2 và các giấy phép khác; bạn có thể phân phối lại theomột số điều kiện nhất định. Nhập 'core show license' để biết chi tiết.========================================================================Chạy với tư cách là người dùng 'asterisk'Chạy dưới nhóm 'asterisk'Đã kết nối với Asterisk 17.7.0 hiện đang chạy trên ubuntu2004 (pid = 47965)ubuntu2004*CLI>

Bật Asterisk GUI​

Để truy cập Asterisk từ trình duyệt web, bạn sẽ cần bật Asterisk GUI. Trước tiên, hãy chỉnh sửa tệp /etc/asterisk/http.conf:
Mã:
nano /etc/asterisk/http.conf
Bỏ chú thích và thay đổi các dòng sau:
Mã:
enabled = yesbindaddr = 0.0.0.0bindport = 8088prefix = asteriskenable_static = yesenablestatic = yesredirect = / /static/config/index.htmluploads = /var/lib/asterisk/uploads/
Lưu và đóng tệp sau đó chỉnh sửa tệp /etc/asterisk/manager.conf và đặt người dùng quản trị của bạn:
Mã:
nano /etc/asterisk/manager.conf
Thêm / Sửa đổi các dòng sau:
Mã:
enabled = yeswebenabled = yesport = 5038bindaddr = 0.0.0.0[admin]secret = admin1234read = system,call,log,verbose,command,agent,user,configwrite = system,call,log,verbose,command,agent,user,config,originate
Lưu và đóng tệp khi bạn hoàn tất.

Cài đặt Asterisk GUI​

Tiếp theo, tải xuống phiên bản mới nhất của Asterisk GUI bằng lệnh sau:
Mã:
svn checkout http://svn.digium.com/svn/asterisk-gui/branches/2.0
Sau khi tải xuống, hãy thay đổi thư mục thành thư mục đã tải xuống và cấu hình bằng lệnh sau:
Mã:
cd 2.0/
./configure
Tiếp theo, xây dựng Asterisk GUI bằng lệnh sau:
Mã:
make
Bạn sẽ nhận được kết quả sau:
Mã:
+------- Hoàn tất xây dựng Asterisk-GUI -------+ + Asterisk-GUI đã được xây dựng thành công, + + và có thể được cài đặt bằng cách chạy: + + + + make install + +-------------------------------------------+
Tiếp theo, hãy chạy lệnh sau để cài đặt vào hệ thống của bạn:
Mã:
make install
Bạn sẽ thấy kết quả sau:
Mã:
+---- Hoàn tất cài đặt Asterisk GUI ---+ + + + BẠN PHẢI ĐỌC TÀI LIỆU BẢO MẬT + + + + Asterisk-GUI đã được + + cài đặt thành công. + + + +----------------------------------------+ + + + TRƯỚC KHI GUI HOẠT ĐỘNG + + + + Trước khi GUI chạy, bạn phải thực hiện + + một số sửa đổi đối với các tệp cấu hình Asterisk theo + + tệp README. Khi hoàn tất, bạn có thể + + kiểm tra các thay đổi của mình bằng cách thực hiện: + + + + make checkconfig + + +----------------------------------------+
Cuối cùng, khởi động lại dịch vụ Asterisk để áp dụng các thay đổi:
Mã:
systemctl restart asterisk

Truy cập Asterisk GUI​

Bây giờ, hãy mở trình duyệt web của bạn và truy cập Asterisk GUI bằng URL http://your-server-ip:8088/asterisk/static/config/index.html. Bạn sẽ được chuyển hướng đến trang sau:



Cung cấp tên người dùng, mật khẩu quản trị viên của bạn và nhấp vào nút Đăng nhập. Bạn sẽ thấy bảng điều khiển Asterisk GUI ở trang sau:

Kết luận​

Xin chúc mừng! bạn đã cài đặt thành công Asterisk và Asterisk GUI trên máy chủ Ubuntu 20.04. Bây giờ bạn có thể kết nối máy chủ của mình với bất kỳ mạng PSTN nào và bắt đầu gọi điện hoàn toàn miễn phí.
 
Back
Bên trên