アスタリスクは、IP PBXシステム、会議サーバー、およびVoIPゲートウェイに電力を供給する、最も人気があり広く採用されているオープンソースPBXプラットフォームです。これは、世界中の個人、中小企業、大企業、および政府によって使用されています。
アスタリスク機能には、ボイスメール、保留音、電話会議、通話キューイング、通話録音、対話型音声応答などが含まれます。
このチュートリアルでは、CentOS7にAsterisk15をインストールするために必要な手順を説明します。
前提条件#
-
このチュートリアルを続行する前に、sudo権限を持つユーザーとしてログインしていることを確認してください。
-
CentOSシステムを更新し、Asteriskソースコードのコンパイルに必要な開発ツールをインストールします。
sudo yum update
sudo yum groupinstall core base "Development Tools"
Selinuxを無効にする#
SELinuxがenforcing
に設定されている場合 モードでは、アスタリスクは正しく機能しません。
SELinuxのセキュリティ機能を無効にするには、/etc/selinux/config
を開きます。 ファイルを作成し、SELINUX=disabled
を設定します
# This file controls the state of SELinux on the system.
# SELINUX= can take one of these three values:
# enforcing - SELinux security policy is enforced.
# permissive - SELinux prints warnings instead of enforcing.
# disabled - No SELinux policy is loaded.
SELINUX=disabled
# SELINUXTYPE= can take one of these two values:
# targeted - Targeted processes are protected,
# mls - Multi Level Security protection.
SELINUXTYPE=targeted
ファイルを保存し、CentOSシステムを次のコマンドで再起動します:
sudo shutdown -r now
マシンが起動したら、getenforce
を確認してください コマンドはDisabled
を返します :
getenforce
Disabled
/usr/src
にアスタリスクソースをダウンロードします ソースファイルを配置するための一般的な場所であるディレクトリ。
/usr/src
に変更します 次のように入力してディレクトリ:
cd /usr/src/
次のwgetコマンドを使用してAsterisk15の最新バージョンをダウンロードします。
sudo wget http://downloads.asterisk.org/pub/telephony/asterisk/asterisk-15-current.tar.gz
ダウンロードが完了したら、次のコマンドを使用してダウンロードしたファイルを抽出します。
sudo tar zxf asterisk-15-current.tar.gz
次の手順に進む前に、次のように入力して、Asteriskソースディレクトリに移動してください。
cd asterisk-15.*/
アスタリスクの依存関係をインストールする#
MP3モジュールをビルドしてAsteriskでMP3ファイルを使用するために必要なMP3ソースをダウンロードします。
sudo contrib/scripts/get_mp3_source.sh
次に、不足しているすべての依存関係をinstall_prereq
でインストールします スクリプト:
sudo contrib/scripts/install_prereq install
スクリプトは必要なすべてのパッケージをインストールし、正常に完了すると、次のメッセージを出力します。
#############################################
## install completed successfully
#############################################
アスタリスクのインストール#
configure
スクリプトは、ビルドおよびインストールプロセスに必要なすべての依存関係が存在することを確認するためにいくつかのチェックを実行します。次のように入力して、スクリプトを開始します。
sudo ./configure --libdir=/usr/lib64
正常に完了すると、次の出力が表示されます。
次のステップは、コンパイルしてインストールするモジュールを選択することです。
ほとんどのモジュールはすでに有効になっています。次のように入力して、Menuselectシステムにアクセスします。
sudo make menuselect
すでにMP3ソースファイルをダウンロードしているので、format_mp3
を選択して、MP3モジュールをビルドするようにAsteriskに指示する必要があります。 :
完了したら、F12
を押します 保存して終了するか、Save and Exit
に切り替えます ボタンを押してEnter
を押します 。
make
を使用してコンパイルプロセスを開始します コマンド:
sudo make -j2
システムによっては、ビルドが完了するまでに時間がかかる場合があります。 -j
を変更できます プロセッサのコア数に応じてフラグを立てます。 ビルドプロセスが完了すると、次のメッセージが表示されます。
次のステップは、次のように入力してAsteriskとそのモジュールをインストールすることです。
sudo make install
インストールが完了すると、スクリプトは次のメッセージを表示します。
Asteriskがインストールされたので、サンプル構成ファイルをインストールする必要があります。
次のように入力して、参照ドキュメントを含む汎用構成ファイルをインストールします。
sudo make samples
または、基本的なPBX構成ファイルをインストールします。
sudo make basic-pbx
最後のステップは、次のように入力してAsteriskinitスクリプトをインストールすることです。
sudo make config
最後にldconfig
を実行します 共有ライブラリのキャッシュを更新するには:
sudo ldconfig
アスタリスクユーザーの作成#
デフォルトでは、Asteriskはrootユーザーとして実行されます。セキュリティ上の理由から、新しいシステムユーザーを作成し、新しく作成したユーザーとして実行するようにAsteriskを構成します。
asterisk
という名前の新しいシステムユーザーを作成するには 次のコマンドを実行します:
sudo adduser --system --user-group --home-dir /var/lib/asterisk --no-create-home asterisk
asterisk
として実行するようにアスタリスクを構成するには ユーザーは、/etc/sysconfig/asterisk
を開きます 次の2行をファイルして、コメントを解除します。
AST_USER="asterisk"
AST_GROUP="asterisk"
asterisk
を追加します dialout
へのユーザー およびaudio
グループ:
sudo usermod -a -G dialout,audio asterisk
また、ユーザーのアスタリスクがこれらのファイルにアクセスできるように、すべてのアスタリスクファイルとディレクトリの所有権と権限を変更する必要があります。
sudo chown -R asterisk: /var/{lib,log,run,spool}/asterisk /usr/lib64/asterisk /etc/asterisk
sudo chmod -R 750 /var/{lib,log,run,spool}/asterisk /usr/lib64/asterisk /etc/asterisk
これですべての設定が完了したので、次のコマンドを使用してAsteriskサービスを開始できます。
sudo systemctl start asterisk
Asteriskが実行されていることを確認するには、次のように入力してAsteriskコマンドラインインターフェイス(CLI)に接続します。
sudo asterisk -vvvr
デフォルトのAsteriskCLIプロンプトが表示されます:
最後のステップは、Asteriskサービスが起動時に次のコマンドで開始できるようにすることです。
sudo systemctl enable asterisk
ファイアウォールルールを調整する#
Asteriskがインストールされて実行されたので、Asterisk固有のポートでのトラフィックを許可するようにファイアウォールを構成する必要があります。
システムでファイアウォールを有効にしていない場合は、このセクションをスキップできます。選択したテキストエディタを開き、次のFirewalldサービスを作成します。
/etc/firewalld/services/asterisk.xml<?xml version="1.0" encoding="utf-8"?>
<service version="1.0">
<short>asterisk</short>
<description>Asterisk is a software implementation of a telephone private branch exchange (PBX).</description>
<port protocol="udp" port="10000-10100"/>
<port protocol="udp" port="4569"/>
<port protocol="udp" port="2727"/>
<port protocol="udp" port="5060-5061"/>
</service>
ファイルを保存し、次のように入力して新しいファイアウォールルールを適用します。
sudo firewall-cmd --add-service=asterisk --permanent
sudo firewall-cmd --reload
最後に、次のコマンドで新しいファイアウォールルールが正常に適用されているかどうかを確認します。
sudo firewall-cmd --list-all
public (active)
target: default
icmp-block-inversion: no
interfaces: eth0
sources:
services: ssh dhcpv6-client asterisk
ports:
protocols:
masquerade: no
forward-ports:
source-ports:
icmp-blocks:
rich rules:
必要に応じてファイアウォールを自由に調整してください。