freepbx15にバージョンアップする

1.アップデート方法

もう5年間8台の電話をfreepbx13を使ってホームテレホン化して使って来ましたが、モジュール更新すると変なセキュリティーエラーが出る様になりました。
そろそろバージョンアップかな?と言う事でfreepbx15にバージョンアップしました。
(freepbx15にバージョンアップするとasteriskもv16となります)

その際いつもの様に結構ドハマリしたので、注意点を書いておきますね。

バージョンアップ作業の流れ

パターン1
現在のv13 → v14にアップデートしてそのあとv15にアップデートと言うやり方
(v13からv15にいきなりは出来ないとの事ですので)
パターン1はV13 → V14 → V15と時間がかかる上に何故か不要なモジュールが全部入れ?
に近い状態で終了します。
「これは使わないわ」と思われるモジュールをアンインストール(remove)すると依存関係のトラブルが出たりもします。
ただ電話交換機としての動作は問題なくできます。

 アドミン→アップグレードからやる方法もありますが

パターン2
raspbx15のイメージファイルをDLしてSDカードに書き込んで、諸設定をする。

実際に両方のパターンを実行してみました。

結論としてどっちのパターンがいいかと言うと
私個人としてはパターン2の方がすっきり確実なものが出来上がったので今回はこれを説明します。

2.raspbx15の起動SDを作る

windowsでraspbx15の起動SDを作ります。
raspbxイメージをダウンロードします。
sdカード・usb書き込みソフトとして今流行り? のbalenaEtcherをダウンロードします。
私は同ページの下の方に行くと現れるPortable版をダウンロードしました。

Flash from fileをクリックしてダウンロードしたraspbxイメージを選びます。img・zipどちらもOKです。
SelectTargetで書き込み先のSDカードのドライブを指定します。32Gタイプで特にフォーマットはしませんでした
Flashをクリックしてしばらく待つと作成してくれます。
今まで「USB Image Tool」や「Universal-USB-Installer」などの書き込みツールを使っていましたが、
これにして書き込みスピードがすごく早くなりました。

3.設定などは予備機で

raspbx15の設定は予備機で行いました。旧起動SDのバックアップを取っておいて失敗?したときはこれを差し込んで復旧する手もありますが...。
ブラウザで新・旧の設定を参照しながら設定できるので安心です。
予備機にネットワークケーブルと電源を接続して起動します。
LAN内のDHCP払い出しを調べて、最初からSSH(テラターム)で接続します。
(最初だけネットワークケーブル・HDMI・キーボード・マウスを接続して起動する方法もあります)

Freepbx15の設定は予備機で

4.raspiの設定は前回と同じ

基本的な設定は以前の記事を参考に設定します。
違う点は固定IPアドレスのところぐらいです。

現在運用中のpiのIP :192.168.2.253
予備機のpiの  IP :192.168.2.252

設定完了まで重複しないように違うIPにしますが
最終的に253に戻します。

5.GUI画面からの設定

初期設定が終了しましたらブラウザのGUI画面からPBX設定に移ります。
初めての起動時にだけ現れる画面で

*userID・Passワード設定・PBX更新タイミング設定
*使用する言語の設定

などを終えます。

 userID・Passワード設定

 言語設定など

6.モジュールアップデートでエラー

PBX設定する前にモジュールを最新にしてやれる様に左側のプルダウンメニューの

アドミン → モジュール管理画面 → 更新確認

とやってモジュールアップデートをするんですが、Freepbxフレームワークモジュールをアップデートせよと指示されます。

・Freepbxフレームワークモジュール単体でアップデートしようとしてもエラー
・こまごましたモジュールを1つづつアップデートしようとしてもエラーとなります。

 アップデートできない

7.フレームワークモジュールをコマンドラインからアップデート

どうもFreepbxフレームワークモジュールがアップデートされないと、他のモジュールもアップデートできないようです。
例によって日本語でそのようなトラブル解消法について書かれたページは見当たりませんでしたので、英語ページを地道に調べたところそれに近い書き込みがありました

どうもframeworkのバージョンによってセキュリティーの管理方法が違っているのでコマンドラインからアップデートするというようなことが書かれていましたのでこれを参考にして解決できました。

2020年10月段階でraspbx-11-11-2019.zip をダウンロードしてインストールすると
FreePBXフレームワークのバージョンは15.0.16.22です。
このままだとセキュリティーの管理方法が古いのでアップデートが出来ません。

ただ今後
freepbx16や現在のfreepbx15 raspbx-11-11-2019.zip がアップデートされるようであればこんな面倒クサイ作業は不要になる可能性があります。

 いきなり最新バージョンにアップデートしようとすると

そのためまず(SSHの黒い画面から)現在のバージョンからちょっとずつアップデートします。

fwconsole ma downloadinstall framework --tag 15.0.16.22 エンター
fwconsole ma downloadinstall framework --tag 15.0.16.38 エンター
fwconsole ma downloadinstall framework --tag 15.0.16.42 エンター

とアップデートして行って、バージョン15.0.16.42まで終わったら

fwconsole ma upgrade framework エンター

で最新版のフレームワークになります。15.0.16.42が新方式への境目のようです。
最終的に
Module framework version 15.0.16.75 successfully installed
と表示されて、バージョンは最新の15.0.16.75になります。

以上でSSHの黒い画面での作業は終わりです。

その後freepbxGUIの画面を開くと右上に設定適用またはappyconfigボタンが表示されているのでクリックしてやりましょう。
reloadingダイアログが表示されたままハングアップ?と思う程時間がかかりますが、ブラウザリロードなどしてはいけません。我慢して待ちましょう。

リロード時間が長い の解消法も調べましたら

設定 → 高度な設定 → Enable Module Signature Checkingを いいえ にする

と言うのがありましたのでやってみました。確かに速くなりましたが、これって「モジュールの署名チェック」をしない事になります。怖いので元にもどしました。その後なれましたワ ( ´∀` )

これでフレームワークが最新になりましたので、
プルダウンメニューの

アドミン → モジュール管理画面 → 更新確認

とやってモジュールアップデートすれば、その他のモジュールも難なくアップデートされます。
このトラブルで2日かかってしまいました。(;^_^A
この作業が終了してGUI画面を表示すると、左上のアイコンや下部のかえるのシンボルが
に変わります。

 ハングアップかと思う程のリロード時間

8.要所の設定をする

現在動作中のPBXの設定内容をGUIメニューのバックアップと復元からエクスポートして、予備機のGUIからインポートする方法もあるようですが、余計な設定までインポートされたりしないかと不安だったのと設定項目もそう多くないので、全て手動で確実に設定しました。

freepbx13・14と多少画面レイアウトは変わっていますが以前の設定したのと同じ項目がありますので同様に設定していきます。

・トランクを作る
・内線を設定する
・着信グループの設定
・発信経路(アウトバウンドルート)の設定
・着信経路(インバウンドルート)の設定
番号非通知の電話拒否やIVRの設定

細かな点については現在運用中の側のRaspbxのGUI画面を同時に表示して確認できますネ。

ここまで来たらほぼ完成です。

9.PBXを入れ替えする

いよいよPBXを入れ替えします。
電話を使わない時間帯を見計らって運用中のraspiをシャットダウンします。
ssh画面から
shutdown now

予備機にSSHログインして
nano /etc/dhcpcd.conf
本体のIPアドレスを IP:192.168.2.253
に変更したら
shutdown now

本体そのものを入れ替えるときは
raspiのMACアドレスが変わりますから、光電話ルーターのダイジェスト認証画面のそれも変える必要がありますので注意してください。

10.新しいraspiを起動

設定終了済みのSDカードを入れ替えてraspiを起動します。
先ほど本体のIPアドレスを変更しましたのでsshでのアクセス先は192.168.2.253です。

ここから2点確認して完成です。

1.トランクが光電話ルーターに登録済みになっている事
 (登録できない時は一旦利用有無のチェックを外して再チェックして見て下さい。)

2.Asterisk情報の内線が全てONLINEになっている事
 (ダメな時は内線設定のsecretパスワードを確認してみましょう。)

 登録を確認

 ONLINEを確認

 動作確認します

最後は

自分の携帯電話に電話を掛けてみる。
自分の携帯電話から自宅に電話を掛けてみる。
等正常ならバージョンアップ完了です。

お疲れさまでした。

 その後

その後ダッシュボードのシステム一覧部にhtml5に対応せよとインフォメーションが表示されるようになりました。
これも調べた結果こんな記事がありました
以下はやった事です
SSH画面で

WAV再生
apt-get install sox エンター
すでに入っていた
mp3再生
apt-get install lame エンター
すでに入っていた
mp4再生
apt-get install ffmpeg エンター
新規導入する600MBite
123?
apt-get install mpg123 エンター
すでに入っていた

で解消されました。

その後のその後

その後のアップデートで見た目がすっきりしたGUIに変わりました。

 カエルさんは工具に

 区切りもスッキリしました