「Asterisk 11」の版間の差分
(→起動できない場合の対処) |
|||
(4人の利用者による、間の29版が非表示) | |||
1行目: | 1行目: | ||
Asterisk 11.0.0が2012年10月25日(現地時間)リリースされました。<br> | Asterisk 11.0.0が2012年10月25日(現地時間)リリースされました。<br> | ||
− | 1. | + | 1.8系に続くLTSです。なお、Asterisk 10よりバージョン名の命名基準が変わっています。これまでのメジャーリリースは、1.2,1.4,1.6,1.8のようにドット下が偶数でしたが、今後は10,11,12のようになります。<br> |
:http://downloads.asterisk.org/pub/telephony/asterisk/ChangeLog-11-current | :http://downloads.asterisk.org/pub/telephony/asterisk/ChangeLog-11-current | ||
+ | :メンテナンス終了は2016年10月 | ||
+ | :セキュリティフィックス提供終了は2017年10月 | ||
==概要== | ==概要== | ||
Asterisk 11は最新のAsteriskのメジャーリリースで、Asterisk 1.8同様にLTS(Long Term Support:通常4年)になります。Asterisk 11のEOLは2017年10月が予定されています。<br> | Asterisk 11は最新のAsteriskのメジャーリリースで、Asterisk 1.8同様にLTS(Long Term Support:通常4年)になります。Asterisk 11のEOLは2017年10月が予定されています。<br> | ||
:https://wiki.asterisk.org/wiki/display/AST/Asterisk+Versions | :https://wiki.asterisk.org/wiki/display/AST/Asterisk+Versions | ||
Asterisk-addonsは1.8系からAsterisk本体に統合されています。<br> | Asterisk-addonsは1.8系からAsterisk本体に統合されています。<br> | ||
+ | ==インストール方法== | ||
+ | *注意 | ||
+ | これまではMeetMeを使用するためにDAHDIが使われていましたが、1.8からDAHDIを使用しない音声会議、Confbridgeが採用されているため、DAHDIは必ずしも必要ではありません。現在のところMeetMeがObsolateという情報はありませんが、今後の動向には注意しておいてください(→[[Asterisk App ConfBridge]])。 | ||
+ | ===前提となるパッケージ類=== | ||
+ | GCC、G++(GNU-C++)、OpenSSL、Ncurses、bison、カーネルソース(zaptel)、libxml2、SQLite3<br> | ||
+ | CentOS 6.3 Basic Serverの場合、以下の手順でコンパイル環境を整えます。<br> | ||
+ | 開発環境系パッケージを一括インストールしておく。 | ||
+ | yum groupinstall "Development Libraries" "Additional Development" | ||
+ | パッケージを追加<br> | ||
+ | yum install gcc gcc-c++ | ||
+ | yum install libxml2 libxml2-devel openssl-devel ncurses-devel sqlite-devel newt-devel | ||
+ | openssl-develをインストールするとkrb5-devel,zlib-develも一緒に付いて来るので別途インストールの必要はありません。<br> | ||
+ | Asteriskは現在のバージョンではBerkley DBではなくSQLite3をDBとして使用しますので、SQLite3と開発環境が必要です。<br> | ||
+ | newt-develがないとmenuselectがフルスクリーンコントロールになりません。テキストベースになります。<br> | ||
+ | <br> | ||
+ | '''注:Asterisk 11.5からuuid-develが必要です'''<br> | ||
+ | yum install libuuid-devel uuid-devel | ||
+ | <br> | ||
+ | format_mp3など、一部のソースはAsteriskに含まれないため別途入手しますが、この際にSubversionが必要となりますので、Subversionも入れておきます。 | ||
+ | yum install subversion | ||
+ | |||
+ | Asteriskは10以降でMySQLサポートが"非常に"制限されています。このためCDRをMySQLで管理するような場合にはODBCが必要となるため、AsteriskのODBCサポート(res_odbc)を有効にする場合には以下も必要です。 | ||
+ | yum install unixODBC unixODBC-devel mysql-connector-odbc | ||
+ | yum install libtool-ltdl libtool-ltdl-devel | ||
+ | <br> | ||
+ | システムを最新の状態にアップデート | ||
+ | yum update | ||
+ | カーネルが更新された場合にはリブートしておきます。<br> | ||
+ | 以上でインストール環境は整ったはずです。<br> | ||
+ | 事前にDAHDIをインストールするために環境を整えた場合にはgcc-c++とopenssl-develの追加だけでコンパイル可能になるはずです。 | ||
+ | |||
+ | ===ソースの入手=== | ||
+ | Asterisk 11のソースは以下からダウンロードできます。 | ||
+ | http://downloads.asterisk.org/pub/telephony/asterisk/ | ||
+ | 展開するディレクトリはどこでもかまいませんが、ここでは/usr/src/とします。 | ||
+ | # cd /usr/src | ||
+ | # wget http://downloads.asterisk.org/pub/telephony/asterisk/asterisk-11.x.x.tar.gz | ||
+ | 入手したら展開しておきます。以降それぞれの作業は、それぞれの展開したサブディレクトリで行います。 | ||
+ | # tar zxvf asterisk-11.x.x.tar.gz | ||
+ | # cd asterisk-11.x.x | ||
+ | |||
+ | ===Asteriskのコンパイルとインストール=== | ||
+ | 基本的にconfigureしてmakeするだけです。 | ||
+ | # ./configure | ||
+ | # make | ||
+ | # make install | ||
+ | # make samples | ||
+ | # make config | ||
+ | これで新規インストールは完了します。最後の make config で起動時に自動起動するようになります。<br> | ||
+ | なおAsteriskでもmake menuselectがサポートされておりコンパイルするモジュールを選択したり組み込むモジュールを選択することができるようになっています。 | ||
+ | ===MP3を使用する場合の注意=== | ||
+ | MP3関連(MoHなど)を使用する場合には、MP3系のソースはAsterisk本体に含まれていないため、コンパイル時にエラーになりますが、ソース入手のスクリプトが付属しています。 | ||
+ | # ./contrib/scripts/get_mp3_source.sh | ||
+ | これを実行すればMP3関連のモジュールがコンパイルできるようになります。 | ||
+ | |||
==パッチ== | ==パッチ== | ||
*日本語対応 | *日本語対応 | ||
18行目: | 75行目: | ||
</pre> | </pre> | ||
このメッセージが出て起動できないのはAsterisk自体がシェアードライブラリを使うようになったためです。ldconfigを一発叩けば治ります。 | このメッセージが出て起動できないのはAsterisk自体がシェアードライブラリを使うようになったためです。ldconfigを一発叩けば治ります。 | ||
+ | ==SELinuxの無効化== | ||
+ | SELinuxは"ちゃんと"使えば良い機能なのですが、どうしてもはやり面倒です。Asteriskを使用している場合で、バックグラウンドのAsteriskに接続できないケースは、このSELiunxが邪魔していることがあります。<br> | ||
+ | そこでここではSELinuxを無効化する方法を解説します。<br> | ||
+ | SELinuxが有効になっているかどうかを確認するには | ||
+ | [root@pbx01 selinux]# getenforce | ||
+ | Permissive | ||
+ | Enforcingとなっていれば有効で、Disabledならば無効です。Permissiveは有効ではあるものの、一時的に無効にされている状態でアクセス制限はかかりません。<br> | ||
+ | 一時的にアクセス制を無効にするには | ||
+ | [root@pbx01 selinux]# setenforce 0 | ||
+ | を、実行します。<br> | ||
+ | SELinux自体を無効にするには/etc/selinux/configファイルを編集し | ||
+ | SELINUX=enforcing | ||
+ | を | ||
+ | SELINUX=disabled | ||
+ | に書き換えます。次回再起動時からSELinuxは無効になります。 | ||
+ | <!--「石川さんごめんなさい。」と心の中でつぶやいておきましょう--> | ||
+ | |||
+ | ==CDR MySQLの移行== | ||
+ | Asteriskは10.x.x以降はcdr_mysqlは'obsolate'扱いとなり今後サポートされません。このため、従来のようにCDRをMySQLで記録するためにはODBC経由でアクセスする必要がありますのでAsteriskのバージョンアップ時には注意してください。<br> | ||
+ | [[Asterisk 11 ODBC]] | ||
+ | |||
+ | ==T.38ゲートウェイ機能== | ||
+ | Asterisk 10以降で正式サポートされました。<br> | ||
+ | [[Asterisk 11 T.38ゲートウェイ]] | ||
+ | ==セキュリティ== | ||
+ | Asterisk 11では名前付きACLがサポートされるようになりました。<br> | ||
+ | [[Asterisk 11 名前付きACL]] | ||
− | == | + | ==11.5からの注意== |
− | + | Asterisk 11.5からuuidの開発パッケージが必要になりました。<br> | |
+ | これがないとres_rtp_asteriskがコンパイルされないため通話ができません。<br> | ||
+ | <br> | ||
+ | debian系ではuuid-devをインストールしてください。RH系ではuuid-develです。 |
2014年12月7日 (日) 11:50時点における最新版
Asterisk 11.0.0が2012年10月25日(現地時間)リリースされました。
1.8系に続くLTSです。なお、Asterisk 10よりバージョン名の命名基準が変わっています。これまでのメジャーリリースは、1.2,1.4,1.6,1.8のようにドット下が偶数でしたが、今後は10,11,12のようになります。
- http://downloads.asterisk.org/pub/telephony/asterisk/ChangeLog-11-current
- メンテナンス終了は2016年10月
- セキュリティフィックス提供終了は2017年10月
目次
概要
Asterisk 11は最新のAsteriskのメジャーリリースで、Asterisk 1.8同様にLTS(Long Term Support:通常4年)になります。Asterisk 11のEOLは2017年10月が予定されています。
Asterisk-addonsは1.8系からAsterisk本体に統合されています。
インストール方法
- 注意
これまではMeetMeを使用するためにDAHDIが使われていましたが、1.8からDAHDIを使用しない音声会議、Confbridgeが採用されているため、DAHDIは必ずしも必要ではありません。現在のところMeetMeがObsolateという情報はありませんが、今後の動向には注意しておいてください(→Asterisk App ConfBridge)。
前提となるパッケージ類
GCC、G++(GNU-C++)、OpenSSL、Ncurses、bison、カーネルソース(zaptel)、libxml2、SQLite3
CentOS 6.3 Basic Serverの場合、以下の手順でコンパイル環境を整えます。
開発環境系パッケージを一括インストールしておく。
yum groupinstall "Development Libraries" "Additional Development"
パッケージを追加
yum install gcc gcc-c++ yum install libxml2 libxml2-devel openssl-devel ncurses-devel sqlite-devel newt-devel
openssl-develをインストールするとkrb5-devel,zlib-develも一緒に付いて来るので別途インストールの必要はありません。
Asteriskは現在のバージョンではBerkley DBではなくSQLite3をDBとして使用しますので、SQLite3と開発環境が必要です。
newt-develがないとmenuselectがフルスクリーンコントロールになりません。テキストベースになります。
注:Asterisk 11.5からuuid-develが必要です
yum install libuuid-devel uuid-devel
format_mp3など、一部のソースはAsteriskに含まれないため別途入手しますが、この際にSubversionが必要となりますので、Subversionも入れておきます。
yum install subversion
Asteriskは10以降でMySQLサポートが"非常に"制限されています。このためCDRをMySQLで管理するような場合にはODBCが必要となるため、AsteriskのODBCサポート(res_odbc)を有効にする場合には以下も必要です。
yum install unixODBC unixODBC-devel mysql-connector-odbc yum install libtool-ltdl libtool-ltdl-devel
システムを最新の状態にアップデート
yum update
カーネルが更新された場合にはリブートしておきます。
以上でインストール環境は整ったはずです。
事前にDAHDIをインストールするために環境を整えた場合にはgcc-c++とopenssl-develの追加だけでコンパイル可能になるはずです。
ソースの入手
Asterisk 11のソースは以下からダウンロードできます。
http://downloads.asterisk.org/pub/telephony/asterisk/
展開するディレクトリはどこでもかまいませんが、ここでは/usr/src/とします。
# cd /usr/src # wget http://downloads.asterisk.org/pub/telephony/asterisk/asterisk-11.x.x.tar.gz
入手したら展開しておきます。以降それぞれの作業は、それぞれの展開したサブディレクトリで行います。
# tar zxvf asterisk-11.x.x.tar.gz # cd asterisk-11.x.x
Asteriskのコンパイルとインストール
基本的にconfigureしてmakeするだけです。
# ./configure # make # make install # make samples # make config
これで新規インストールは完了します。最後の make config で起動時に自動起動するようになります。
なおAsteriskでもmake menuselectがサポートされておりコンパイルするモジュールを選択したり組み込むモジュールを選択することができるようになっています。
MP3を使用する場合の注意
MP3関連(MoHなど)を使用する場合には、MP3系のソースはAsterisk本体に含まれていないため、コンパイル時にエラーになりますが、ソース入手のスクリプトが付属しています。
# ./contrib/scripts/get_mp3_source.sh
これを実行すればMP3関連のモジュールがコンパイルできるようになります。
パッチ
- 日本語対応
- 11.0.1まで対応。オートパッチかダウンロードで。
- http://ftp.voip-info.jp/asterisk/patch/11.0.1/
- RT-200NE系(ひかり電話ホーム)対応パッチ
起動できない場合の対処
/usr/sbin/asterisk: error while loading shared libraries: libasteriskssl.so.1: cannot open shared object file: No such file or directory
このメッセージが出て起動できないのはAsterisk自体がシェアードライブラリを使うようになったためです。ldconfigを一発叩けば治ります。
SELinuxの無効化
SELinuxは"ちゃんと"使えば良い機能なのですが、どうしてもはやり面倒です。Asteriskを使用している場合で、バックグラウンドのAsteriskに接続できないケースは、このSELiunxが邪魔していることがあります。
そこでここではSELinuxを無効化する方法を解説します。
SELinuxが有効になっているかどうかを確認するには
[root@pbx01 selinux]# getenforce Permissive
Enforcingとなっていれば有効で、Disabledならば無効です。Permissiveは有効ではあるものの、一時的に無効にされている状態でアクセス制限はかかりません。
一時的にアクセス制を無効にするには
[root@pbx01 selinux]# setenforce 0
を、実行します。
SELinux自体を無効にするには/etc/selinux/configファイルを編集し
SELINUX=enforcing
を
SELINUX=disabled
に書き換えます。次回再起動時からSELinuxは無効になります。
CDR MySQLの移行
Asteriskは10.x.x以降はcdr_mysqlは'obsolate'扱いとなり今後サポートされません。このため、従来のようにCDRをMySQLで記録するためにはODBC経由でアクセスする必要がありますのでAsteriskのバージョンアップ時には注意してください。
Asterisk 11 ODBC
T.38ゲートウェイ機能
Asterisk 10以降で正式サポートされました。
Asterisk 11 T.38ゲートウェイ
セキュリティ
Asterisk 11では名前付きACLがサポートされるようになりました。
Asterisk 11 名前付きACL
11.5からの注意
Asterisk 11.5からuuidの開発パッケージが必要になりました。
これがないとres_rtp_asteriskがコンパイルされないため通話ができません。
debian系ではuuid-devをインストールしてください。RH系ではuuid-develです。