アスタリスクは、VoIPゲートウェイ開発用の人気のあるオープンソースPBXフレームワークです。 これは、個人、中小企業、企業、およびさまざまな政府によって使用されるオンライン電話ソリューションです。
Asteriskは、VoIPプロトコルを使用して、従来の固定電話回線の代わりにTCP / IPを使用してインターネット経由で電話をかけます。 その機能には、ボイスメール、保留音、電話会議、通話キューイング、通話録音、対話型音声応答、SMSメッセージング、自動着信分配などが含まれます。 Asteriskは、Linux、NetBSD、macOS、Solarisなどの複数のオペレーティングシステムにインストールできます。
このチュートリアルでは、 Asteriskをインストールする 18オン Ubuntu 20.04。
前提条件
Ubuntuリポジトリには、パッケージAsteriskがありますが、これは古いバージョンです。 最新バージョンを入手するには、ソースからAsteriskをインストールする必要があります。
まず、Ubuntuシステムを更新します。
$ sudo apt update
次に、ソースからAsteriskをコンパイルするために必要なパッケージをインストールします。
$ sudo apt install wget build-essential git autoconf subversion pkg-config libtool
DAHDIとLibPRIのインストール
DAHDIは、Asteriskがアナログおよびデジタル電話と通信できるようにするツールの追加です。 LibPRIライブラリは、ISDN接続との通信に使用されます。 これらのライブラリが必要ない場合は、このセクションを無視してかまいません。
$ sudo git clone -b next git://git.asterisk.org/dahdi/linux dahdi-linux
$ cd dahdi-linux
$ sudo make
$ sudo make install
$ cd ..
$ sudo git clone -b next git://git.asterisk.org/dahdi/tools dahdi-tools
$ cd dahdi-tools
$ sudo autoreconf -i
$ sudo ./configure
$ sudo make install
$ sudo make install-config
$ sudo dahdi_genconf modules
次のコマンドを実行して、LibPRIをコンパイルおよびビルドします。
$ cd ..
$ sudo git clone https://gerrit.asterisk.org/libpri libpri
$ cd libpri
$ sudo make
$ sudo make install
UbuntuにAsteriskをインストールする
まず、Asteriskソースコードリポジトリのクローンを作成します(これには時間がかかる場合があります)。
$ sudo git clone -b 18 https://gerrit.asterisk.org/asterisk asterisk-18
このチュートリアルを書いている時点で、Asteriskの最新バージョンは18.7.2で、これをコンパイルしてインストールします。
次に、MP3モジュールをビルドしてAsteriskでMP3ファイルを使用するために必要なシェルスクリプトを使用して、MP3ソースをダウンロードします。
$ sudo contrib/scripts/get_mp3_source.sh
を実行します install_prereq
必要な依存関係をインストールするためのスクリプト(この手順にも時間がかかります):
$ sudo contrib/scripts/install_prereq install
プロセスの途中で、地域の電話コードを入力するように求められます。
完了すると、出力は次のようになります。
libglib2.0-0:amd64(2.64.6-1〜ubuntu20.04.4)のトリガーの処理…libc-bin(2.31-0ubuntu9.2)のトリガーの処理…systemd(245.4-4ubuntu3.13)のトリガーの処理…トリガーの処理for man-db(2.9.1-1)…install-info(6.7.0.dfsg.2-5)のトリガーを処理しています…libgmime-2.6-dev(2.6.23 + dfsg1-4)を設定しています…libgmimeを設定しています-3.0-dev:amd64(3.2.7-1)…#################################### #####インストールが正常に完了しました#######################################
次に、ソースコードをコンパイルするために、システムにすべての依存関係が存在するかどうかを確認する必要があります。 次に、次のコマンドを実行します。
$ sudo ./configure
最後に、素敵なASCIIアスタリスクのロゴが表示されます。
次に、コンパイルしてインストールするモジュールを選択します。 menuselectにアクセスするには、次のように入力します。
$ sudo make menuselect

メニューで「format_mp3」オプションを選択して、MP3モジュールをビルドします。 矢印キーを使用してナビゲートし、を押します Enter オプションを選択します。 有効にする他のオプションを選択します。 次に、F12キーを押して保存し、画面を終了します。

同様の端末出力が表示されるはずです。
menuselect changes saved!
make[1]: Leaving directory '/home/linoxide/asterisk-18'
ソースコードのコンパイルを開始するには、makeコマンドを実行します。
$ sudo make -j2
コンピューターに搭載されているCPUコアの数に応じて、-jパラメーターをPCがコンパイル時間を短縮するために必要なコアの数に調整できます。
すべてが成功した場合は、次のようになります。
+--------- Asterisk Build Complete ---------+
+ Asterisk has successfully been built, and +
+ can be installed by running: +
+ +
+ make install +
+-------------------------------------------+
コンパイルが完了したら、次のように入力してAsteriskとそのモジュールをインストールします。
$ sudo make install
汎用構成ファイルをインストールできます。
$ sudo make samples
また、基本的なPBX構成ファイルをインストールします。
$ sudo make basic-pbx
最後に、以下を実行してAsterisk initスクリプトをインストールし、共有ライブラリキャッシュを更新します。
$ sudo make config
$ sudo ldconfig
アスタリスクユーザーの作成
セキュリティ上の理由から、Asteriskを実行するためにroot以外のユーザーを作成することをお勧めします。 Asteriskを実行する新しいシステムユーザーを作成します。 次のコマンドを実行して、という名前の新しいユーザーを作成します asterisk
:
$ sudo adduser --system --group --no-create-home --gecos "Asterisk PBX" asterisk
出力は次のようになります。
Adding system user asterisk' (UID 114) ... Adding new groupasterisk' (GID 120) …
Adding new user asterisk' (UID 114) with groupasterisk' …
新しく作成されたユーザーとして実行するようにAsteriskを構成するには、 /etc/default/asterisk
ファイルを作成し、先頭近くの次の2行のコメントを解除します(行の前の#を削除します)。
$ sudo nano /etc/default/asterisk
AST_USER="asterisk"
AST_GROUP="asterisk"
次に、 asterisk
次のグループのユーザー:
$ sudo usermod -a -G dialout,audio asterisk
また、Asteriskがこれらのファイルにアクセスできるように、すべてのアスタリスクファイルとフォルダーの所有権とフォルダーを変更する必要があります。
$ sudo chown -R asterisk: /var/{lib,log,run,spool}/asterisk /usr/lib/asterisk /etc/asterisk
$ sudo chmod -R 750 /var/{lib,log,run,spool}/asterisk /usr/lib/asterisk /etc/asterisk
アスタリスクの実行
あとは、次のコマンドでAsteriskサービスを開始するだけです。
$ sudo systemctl start asterisk
次のように入力してAsteriskコマンドラインインターフェイス(CLI)に接続し、Asteriskが実行されていることを確認します。
$ sudo asterisk -vvvr
次のような出力が表示されます。
Connected to Asterisk GIT-18-804b1987fb currently running on linoxide (pid = 31426)
linoxide*CLI>
次に、起動時にサービスを開始できるようにします。
$ sudo systemctl enable asterisk
ファイアウォールを構成する
ファイアウォールを設定している場合は、HTTPポートとポート5060,5061を開きます。
$ sudo ufw allow 5060/udp
$ sudo ufw allow 10000:20000/udp
結論
おめでとう! これで、Ubuntu20.04にAsteriskサーバーが正常にインストールおよび構成されました。
追加情報については、確認することができます アスタリスクの公式ウェブサイト。