Giới thiệu về Asterisk #
Asterisk là tổng đài điện thoại (PBX: private branch exchange) viết dưới dạng phần mềm mã nguồn mở. Asterisk cung cấp mọi tính năng cần thiết của một tổng đài điện thoại cho nội bộ công ty, doanh nghiệp. Hiện nay, rất nhiều công ty hay doanh nghiệp áp dụng hệ thống tổng đài Asterisk vào hoạt động kinh doanh. Chính vì vậy, hôm nay mình sẽ hướng dẫn bạn cách cài đặt Asterisk Server and Asterisk GUI trên Ubuntu 20.04.
Chuẩn bị môi trường #
- Một Server chạy Ubuntu 20.04.
- Một địa chỉ IP tĩnh được cài đặt sẵn trên Server
- Có tài khoản User Root trên Server.
Cài đặt các gói cần thiết #
Trước tiên, hãy cập nhật Server của bạn lên version mới nhất:
apt-get update -y |
Sau khi cập nhật, thực hiện cài đặt các gói cần thiết sử dụng dòng lệnh dưới đây:
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 |
Cài đặt Asterisk #
Bạn hãy tải về Asterisk 17 như sau theo dòng lệnh sau:
wget http://downloads.asterisk.org/pub/telephony/asterisk/asterisk-17-current.tar.gz |
Sau khi tải xuống xong, bạn giải nén file với câu lệnh sau:
tar -xvzf asterisk-17-current.tar.gz |
Tiếp theo, vào trong thư mục vừa giải nén, thực hiện cài đặt tất cả các module MP3:
cd asterisk-17.7.0 |
contrib/scripts/get_mp3_source.sh |
Khi chạy xong, bạn sẽ có log ngoài màn hình như bên dưới:
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. |
Tiếp theo, thực hiện cài đặt các gói cần thiết khác sử dụng câu lệnh:
contrib/scripts/install_prereq install |
Bạn sẽ nhận được thông tin ngoài màn hình như sau:
############################################# ## install completed successfully ############################################# |
Sau đó, bạn cần cấu hình Asterisk với câu lệnh:
./configure |
Khi đó màn hình hiển thị:
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 : |
Sau khi chạy xong, thực hiện cài đặt một số module cần thiết với câu lệnh dưới:
make menuselect |
Khi đó, bạn sẽ được hỏi rằng sẽ cài đặt những module nào. Sử dụng các phím điều hướng để đi tới các module và dùng phím Enter để chọn như sau:
- Mục Add-ons, bạn chọn như hình dưới:
- Mục Core Sound Packages, bạn chọn các module như hình bên dưới:
- Mục MOH packages, bạn chọn các module như hình bên dưới:
- Mục Extras Sound Packages, bạn chọn như sau:
Sau khi chọn xong, hãy click chọn Save & Exit để lưu thay đổi và cài đặt tất cả các module đã chọn.
Tiếp theo, bạn cần phải build với các module và gói đã cài đặt trước đó:
make |
Hãy chắc chắn rằng bạn đã build thành công với màn hình hiển thị thông tin sau:
+--------- Asterisk Build Complete ---------+ + Asterisk has successfully been built, and + + can be installed by running: + + + + make install + +-------------------------------------------+ |
Tiếp tục cài đặt lần lượt bằng các câu lệnh sau:
make install make samples make config ldconfig |
Tạo User #
Đầu tiên, chúng ta cần tạo User và Group với câu lệnh dưới:
groupadd asterisk useradd -r -d /var/lib/asterisk -g asterisk asterisk |
Thêm User audio và User dialout vào Group Asterisk:
usermod -aG audio,dialout asterisk |
Thay quyền sở hữu thư mục cho Group Asterisk:
chown -R asterisk.asterisk /etc/asterisk chown -R asterisk.asterisk /var/{lib,log,spool}/asterisk chown -R asterisk.asterisk /usr/lib/asterisk |
Cấu hình Asterisk #
Chỉnh sửa file /etc/default/asterisk:
vi /etc/default/asterisk |
Uncomment các dòng sau:
AST_USER="asterisk" AST_GROUP="asterisk" |
Lưu lại thay đổi rồi tiếp tục chỉnh sửa file /etc/asterisk/asterisk.conf:
vi /etc/asterisk/asterisk.conf |
Uncomment các dòng sau:
runuser = asterisk ; The user to run as. rungroup = asterisk ; The group to run as. |
Lưu lại thay đổi và khởi động lại dịch vụ để các cài đặt trên được áp dụng:
systemctl restart asterisk systemctl enable asterisk |
Kiểm tra lại kết nối bằng câu lệnh dưới:
asterisk -rvv |
Khi đó chúng ta có màn hình như bên dưới:
Asterisk 17.7.0, Copyright (C) 1999 - 2018, Digium, Inc. and others. Created by Mark Spencer <markster@digium.com> 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 ubuntu2004 (pid = 47965) ubuntu2004*CLI> |
Kích hoạt chức năng giao diện #
Để có thể truy cập từ trình duyệt web, bạn cần phải kích hoạt giao diện của Asterisk. Thực hiện chỉnh sửa file /etc/asterisk/http.conf như bên dưới:
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/ |
Lưu lại thay đổi và tiếp tục chỉnh sửa file /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 |
Cài đặt giao diện #
Tiếp theo, bạn cần phải tải xuống bộ giao diện dành riêng cho Asterisk:
svn checkout http://svn.digium.com/svn/asterisk-gui/branches/2.0 |
Sau khi tải xuống hoàn tất, truy cập vào thư mục đó rồi thực hiện lệnh như bên dưới:
cd 2.0/ |
./configure |
Tiếp theo bạn cần build từ source code:
make |
Nếu build thành công, bạn sẽ nhận được thông báo như bên dưới:
+------- Asterisk-GUI Build Complete -------+ + Asterisk-GUI has successfully been built, + + and can be installed by running: + + + + make install + +-------------------------------------------+ |
Cuối cùng là cài đặt:
make install |
Chờ sau khi cài đặt hoàn tất, màn hình sẽ hiển thị như bên dưới:
+---- 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 + + + +-------------------------------------------+ |
Bạn hãy khởi động lại dịch vụ để áp dụng các thay đổi bên trên:
systemctl restart asterisk |
Truy cập giao diện #
Sau khi hoàn tất các bước trên, bạn đã có thể truy cập qua trình duyệt web (Google Chrome, Opera, Firefox, …). Truy cập vào địa chỉ sau: http://your-server-ip:8088/asterisk/static/config/index.html bạn sẽ được chuyển hướng tới website như hình bên dưới:
Kết luận #
Chúc mừng bạn đã cài đặt xong Asterisk Server và Asterisk GUI trên Ubuntu 20.04. Giờ đây bạn có thể kết nối Server của bạn tới bất kì mạng PSTN để thực hiện gọi miễn phí. Cuối cùng, nếu bạn bất kì thắc mắc nào thì bình luận ở bên dưới để mình hỗ trợ nhé.
Nguồn bài viết: https://www.howtoforge.com
1 bình luận
Hi,
mình cài đến bước này bị lỗi.
team@localhost:~/asterisk-18.2.1$ sudo make
make[1]: *** No rule to make target ‘mp3/common.o’, needed by ‘format_mp3.so’. Stop.
make: *** [Makefile:388: addons] Error 2
team@localhost:~/asterisk-18.2.1$
Nhờ ben check giup
Bạn check lại 2 bước này xem có báo lỗi hoặc cài gói nào không được không nha!
contrib/scripts/get_mp3_source.sh
contrib/scripts/install_prereq install