[PBX]内線発信ができない。
エラー:401 Notfound
発信した番号が認識されていない
extensions.confに間違いがないか調べる
[PBX]ひかりGW(外線)からの着信が行われない。
AsteriskがGWに対しエラーを返している
SIP/2.0 500 Server Internal Error
Via: SIP/2.0/UDP 192.168.1.1:5060;rport=5060;received=192.168.1.1;branch=xxxxxxxxxx
Record-Route: <sip:192.168.1.1;lr>
Call-ID: xxxxxxxxxxxxxxxxxxxxxxxxxxxx@192.168.1.1
From: <sip:anonymous@anonymous.invalid>;tag=xxxxxxxxxxxxxxxxxxxxxxxx
To: "0123456789" <sip:0123456789@192.168.1.1>;tag=xxxxxxxxxxxxxxxx
CSeq: 1 INVITE
Server: Asterisk PBX 16.28.0~dfsg-0+deb11u3
Content-Length: 0
ひかりGWからAsteriskへの接続が失敗している
pjsip.confの定義に誤りがないか調べる。
[PBX]子機からAsteriskに登録ができないことがある。
見かけ上、認証が失敗している
Registration from '<sip:1001@192.168.0.10>' failed for '192.168.0.3:16244' - Wrong password成功した時も登録数が超過するとの警告が出る
Registration attempt from endpoint '1001' (192.168.0.3:11412) to AOR '1001' will exceed max contacts
子機がunregisterせずにregisterすると。前の登録が消えずに新たに登録を追加しようとする
pjsip.confのAOR定義に追加登録時に既存の定義を削除するように設定
remove_existing = yes
[PBX]REGISTORできるが、着信できない子機がある。外線なら全く着信できない。
一部の子機だけ不具合が発生する。
不具合のある子機は、別のWiFiルーターに繋がっており、このルータのnat越えの問題が発生している。
pjsip.confの不具合のある子機のendpoint定義をnat対応とする
rtp_symmetric = yes
rewrite_contact = yes
direct_media = no
[PBX]VPNを常時ONにした状態でWiFi環境にいるときに、Network not connectedあるいは「ネットワークが見つかりません」になる。
一部の子機だけ不具合が発生する。
VPNの場合、インターネットと接続しているルーターを経由するので、このルータのnat越えの問題が発生している。
VPN接続する可能性がある端末について、上記と同様にpjsip.confのendpoint定義をnat対応とする
rtp_symmetric = yes
rewrite_contact = yes
direct_media = no
[PBX]再起動すると子機からAuthenticaion failedで登録できない。
エラーが複数発生している。
ERROR[595] res_config_ldap.c: Cannot load LDAP RealTime driver.
...
config_transport.c: Transport 'hikari-trans' could not be started: Cannot assign requested address
...
ログにエラーが記録されている。これが原因で正常に動作していない可能性がある。
- 使用していないモジュールのロードをが失敗
- 使用していないchan_sip通信が悪影響している。
- その他、推奨していないモジュールの使用
エラーをつぶしていきます。
modules.confで不要なモジュールのロードを抑制
noload => res_config_ldap.so
noload => chan_sip.so
noload => chan_mgcp.so
noload => res_monitor.so
noload => res_adsi.so
noload => app_adsiprog.so
noload => app_url.so
noload => app_nbscat.so
noload => app_getcpeid.so
noload => app_macro.so
noload => app_ices.so
noload => app_image.so
noload => res_pjsip_publish_asterisk.so
noload => chan_skinny.so
noload => cel_sqlite3_custom.so
noload => cdr_sqlite3_custom.so
noload => cel_tds.so
noload => cdr_pgsql.so
noload => cdr_radius.so
noload => cel_radius.so
noload => cdr_tds.so
noload => chan_unistim.so
noload => pbx_dundi.so
noload => res_hep_rtcp.so
noload => res_hep_pjsip.so
[PBX]cronでasterisk自動起動した際、エラーメールが送信される。
件名:Cron
本文:Unable to connect to remote asterisk (does /var/run/asterisk/asterisk.ctl exist?)
端末ステータスLEDを操作するためにendpointstat.shシェルスクリプトを定期的に実行しているが、毎日Asteriskを再起動するタイミングで、このシェルスクリプトが実行されるため、エラーとなる。
asterisk.ctlファイルはAsteriskの起動を制御するファイルで、起動時に生成され、終了時に削除される。
cronは時刻指定で秒を指定できないので、毎分実行されるシェルスクリプトとAsteriskの再起動がかち合わないよう、再起動の実行をsleepを入れて遅らせる。
sudo crontab -e
10 4 * * * sleep 30; sudo service asterisk restart
[PBX]突然、留守電新着メールが送信されなくなった。
ログにエラーが記録されている。
sSMTP[13900]: 553 5.1.8
sSMTPの動作が変わったと思われる。
これまで、Asteriskのvoicemailは送信元(From)としてconfファイルのservermailで指定したメールアドレスではなく、ローカルのドメイン(host名)を付けて送られていた。
それが、送信元のドメインが実際に存在するインターネットドメインでないと駄目になった。
sSMTPのconfで要求データのFromを無視するように指定し、別途revaliasesファイルで、インターネットドメインのメールアドレスを指定する。
/etc/ssmtp/ssmtp.conf
FromLineOverride=NO
/etc/ssmtp/revaliases
root:xxxxx@xxxxxxx.xx.xxxxxxx@xxxxxxx.xx.xxは送信元メールアドレス。asteriskはasterisk実行ユーザーID。faxmasterはHylaFax実行ユーザーIDです。これらは実行環境に合わせてください。
asterisk:xxxxx@xxxxxxx.xx.xx
faxmaster:xxxxx@xxxxxxx.xx.xx
[FAX]通知メールの受信日時が日本時刻になっていない。
/etc/hfaxd.congでTimeZone=localと定義している。
タイムゾーンの確認
dateOSのローカル時刻が設定されていない
Wed 16 Aug 08:10:56 BST 2023
現在のタイムゾーンをバックアップし、タイムゾーンを設定する
sudo cp /etc/localtime /etc/localtime.orgタイムゾーンの確認
sudo ln -sf /usr/share/zoneinfo/Asia/Tokyo /etc/localtime
dateJSTとなっていることを確認する。
Wed 16 Aug 16:15:42 JST 2023
[FAX]連続稼働中にYajHFCから接続できなくなった。
FaxStatを実行すると、パスワードを求められる
systemctl statusのログにエラーが記録されている
pi@xxxxxxxx:/etc/hylafax $ sudo systemctl status hfaxd
● hfaxd.service - HylaFAX client-server protocol server
Loaded: loaded (/lib/systemd/system/hfaxd.service; enabled; vendor preset: enabled)
Active: active (running) since Sun 2023-10-01 03:45:11 JST; 2 days ago
Docs: man:hfaxd
Main PID: 614 (hfaxd)
Tasks: 1 (limit: 1595)
CPU: 9.771s
CGroup: /system.slice/hfaxd.service
└─614 /usr/sbin/hfaxd -d -i 4559 -s 444
Oct 03 22:04:55 xxxxxxxx HylaFAX[501]: command: pass hirado403
Oct 03 22:04:55 xxxxxxxx HylaFAX[501]: PASS <password>
Oct 03 22:04:55 xxxxxxxx HylaFAX[501]: pam_unix(hylafax:auth): check pass; user unknown
Oct 03 22:04:55 xxxxxxxx HylaFAX[501]: pam_unix(hylafax:auth): authentication failure; logname= uid=0 euid=0 tty= ruser= rhos>
Oct 03 22:04:57 xxxxxxxx HylaFAX[501]: pam_authenticate failed in pamCheck with 0x7: Authentication failure
Oct 03 22:04:57 xxxxxxxx HylaFAX[501]: <--- 530 Login incorrect.
Oct 03 22:04:57 xxxxxxxx HylaFAX[501]: Login failed from 192.168.0.1 [192.168.0.1], xxxxxxx
Oct 03 22:04:57 xxxxxxxx HylaFAX[501]: command: quit
Oct 03 22:04:57 xxxxxxxx HylaFAX[501]: QUIT
Oct 03 22:04:57 xxxxxxxx HylaFAX[501]: <--- 221 Goodbye.
原因は不明。
hfaxdをリスタートすると回復する。
systemctl statusを定期的に実行し、Login incorrectがあればhfaxdをリスタートするシェルを作成し、定期的に実行していました。
現在は、毎日リスタートすることで、再現しなくなりました。
[FAX]送信済みJOB(エラーあり)が削除できない。
コマンドで削除(JOB IDを調べ、削除)
faxstat -dfaxrm
原因は不明
とりあえず、直接ファイルを削除
ディレクトリ:/var/spool/hylafax/doneq
ファイル: q
[FAX]送信するとエラーになる。
エラー:Connection timeout connect
hylafax付属のプリミティブな送信クライアントを実行してみる
sudo sendfax -n -d 1001 test.txt何も起きない
request id is 17 (group id 17) for host localhost (1 file)
状態を見る
sudo faxstat -d要求したID:17が無い
HylaFAX scheduler on xxxxxxxx: Running
Modem ttyIAX (+81.XX.XXX.XXXX): Running and idle
JID S Number Pages Dials Date Time Status
15 F 1001 0:0 0:12 2023/08/07 07.43.27 Job aborted by request
16 F 1001 0:0 0:12 2023/08/07 10.43.10 Kill time expired
YajHFCのtransmittingタブには表示されている
faxmodemを実行すると、送信できた。
faxmodemのマニュアルにはhylafaxの起動にはfaxgettyかfaxmodemの実行が必要と書いてある
しかしfaxgettyを明示的に実行するとハングアップする
asteriskを再起動すると復帰する
通常、hylafaxはfaxgettyを起動し、これと通信するが、faxgettyが自動起動していない。
これは、faxgettyのサービス定義に問題がある。
faxgettyのサービス定義を修正する。
[FAX]受信ができない。
子機は呼び出される
受話するとしばらくして勝手に切れる
留守番電話にしても受信処理が行われない
IAX2及びPJSIPのログを取る
子機を取るとき、IAX経由でデータを受信しているが、理由コード16でハングアップしている
留守番電の時、同じくIAX経由で受信しているが理由コード3でハングアップしている
どちらも受信しようとはしているが、途中で中断しているようだ
/var/spool/hylafax/tmp上にはファイルは存在していない留守番電の時、同じくIAX経由で受信しているが理由コード3でハングアップしている
どちらも受信しようとはしているが、途中で中断しているようだ
システムログを見ると、faxgettyがdependエラーになって起動できない
上記「送信するとエラーになる」と同じく、faxgettyの起動に問題がある
上記「送信するとエラーになる」と同じく、faxgettyのサービス定義を修正する。
調査の過程で、ログにファイルアクセスエラーが見つかり、これに対応
FaxGetty[745]: Couldn't get next seqnum for session log: Unable to open sequence number file log/seqf; Permission denied.
:/var/spool/hylafax/log $ ls -l
。。。。
-rw------- 1 root root 2 Aug 16 18:21 seqf
:/var/spool/hylafax/log $ sudo chmod 644 seqf
:/var/spool/hylafax/log $ ls -l
。。。。
-rw-r--r-- 1 root root 2 Aug 16 18:21 seqf
[FAX]受信したファイルが見えない。
受信フォルダー上に作成された受信データファイルの属性が、Hylafaxで見えないパーミッションになっている
ソフトウェアモデムの定義を修正する
RecvFileMode: 0666
LogFileMode: 0666
[FAX]受信通知メールが送られない。
FaxDispatchの配置場所が異なっていた
/var/spool/hylafax/etc/FaxDispatch
FaxDispatchを/etc/hylafax/FaxDispatchに配置する。
[FAX]受信通知メールがuucp@XXXXXに送ろうとする。
/etc/ssmtp/smtp.confのhostnameが送信に利用するsmtpのドメイン以外だと勝手に送信元を生成してしまう。
smtp.confに次の定義を追加すればhost名は自由に付けることができる。
FromLineOverride=YES
RewriteDomain=<送信したいドメイン>
[FAX]送信完了メールが送られない。
NotifyスクリプトのコメントにFaxNotifyにmailaddrを設定するように記述してある。
FaxNotifyにmailaddr=<送信先メールアドレス>;を追加
[FAX]受信完了メールにテンプレートが反映されない。
発信元がuucpで添付ファイルのみのメールが送られる。
不明。
faxdサービスを定期的(毎日)に再起動
[FAX]FAX受信通知メールのタイトル、本文が消える。
ログにエラーが記録されている
Oct 23 10:23:39 xxxxxxxx FaxGetty[807]: log/seqf: open: Permission denied
Oct 23 10:23:39 xxxxxxxx FaxGetty[807]: Couldn't get next seqnum for session log: Unable to open sequence number file log/seqf
; Permission denied.
ログ管理ファイルのパーミッションの問題
/var/spool/hylafax/log/seqfのモードを変更 644->666
/var/spool/hylafax/log $ sudo chmod 666 seqfOSを再起動