Raspberry PiでPBXとFAXの構築 - ソフトウェアモデムのセットアップ

投稿 火 6/18 17:15:15 2024 | パソコン | hotall




FAXサーバーソフトは通信インターフェースとしてアナログモデムを想定しています。
Asterisk(PBX)にとって、FAXサーバーは子機の位置づけになりますので、Asteriskがサポートする子機とのプロトコルを、アナログモデムのプロトコルに変換する必要があります。

IAXmodemはこの目的で作られたソフトウェアモデムです。AsteriskからはIAXインターフェースの子機として見え、FAXサーバーからはアナログモデムに見えるアダプターソフトです。

この文書は個人的なものであり、内容について一切の責任を負いかねます。



IAXmodemのインストール

sudo apt-get install iaxmodem

IAXmodemのコンフィギュレーション

デバイス定義ファイルを新規に作成します。

ファイルパス : /etc/iaxmodem/ttyIAX

設定内容:

device          /dev/ttyIAX
owner uucp:uucp
mode 660
port 4570
refresh 300
server 127.0.0.1
peername iaxmodem
secret <接続認証用の任意のパスワード>
cidname <自局の任意の名前>
cidnumber <自局の電話番号>
codec ulaw

IAXmodemの起動(再起動)

sudo service iaxmodem restart

IAXmodemの起動確認

sudo service iaxmodem status
active (running)であれば起動しています。

/dev/上にデバイス"ttyIAX"が作成されていることを確認します。

IAXmodemの自動起動登録

sudo systemctl enable iaxmodem



■ 目次 ■
  1. 構成
  2. ひかり電話RV-230SEの設定
  3. OSのセットアップ
  4. LANアダプタの接続
  5. ユーティリティのセットアップ
  6. PBXのセットアップ
  7. ▶ソフトウェアモデムのセットアップ
  8. FAXのセットアップ
  9. 自動再起動
  10. ステータスLEDの接続
  11. ケースに収納・設置
  12. トラブルと対応

Raspberry PiでPBXとFAXの構築 - PBXのセットアップ

投稿 日 6/16 18:02:43 2024 | パソコン | hotall

すべての機器を接続して、以降のインストールをしていきます。




さて、いよいよ電話システムの中核となるPBXをインストールします。




PBXとしてセットアップするのはAsteriskです。
オープンソースのPBXとしては最も使われているソフトウエアなので、ネットを検索すれば多くの情報を得ることができます。

インストールは他のLinuxソフトウェアと同様にAPTリポジトリからダウンロード・インストールできます。

インストール後は、各コンフィギュレーションファイルに必要な定義を行います。

この文書は個人的なものであり、内容について一切の責任を負いかねます。



Asteriskのインストール

sudo apt-get install asterisk

Asteriskのコンフィギュレーション

言語・ロケールの定義
ローカライズの指定を行います。
留守録(VoiceMail)で日本語のファイル(ディレクトリ)が使われるよう指定します。

ファイルパス:/etc/asterisk/asterisk.conf

設定内容:
[options]
languageprefix = yes
defaultlanguage = ja

SIPの定義
親SIPサーバーや子機との通信パラメーターを定義します。

ファイルパス:/etc/asterisk/pjsip.conf

設定内容:
・ひかりモデムSIPサーバーとの接続定義:
[hikari-trans]
type=transport
protocol=udp
bind=192.168.1.10:5060

[hikari-denwa]
type=registration
transport=hikari-trans
outbound_auth=hikari-trunk
server_uri=sip:192.168.1.1
client_uri=sip:3@192.168.1.1
retry_interval=60

[hikari-trunk]
type=auth
auth_type=userpass
password=<ひかりモデムに登録したパスワード>
username=0003

[hikari-trunk]
type=aor
contact=sip:192.168.1.1

[hikari-trunk]
type=endpoint
transport=my-transport
context=from-hikari
disallow=all
allow=ulaw
outbound_auth=hikari-trunk
aors=hikari-trunk
direct_media=no
from_user=3
from_domain=192.168.1.1
dtmf_mode=inband

[hikari-trunk]
type=identify
endpoint=hikari-trunk
match=192.168.1.1
192.168.1.10はRaspberryPiのひかりモデム側のIPアドレスに合わせてください。
3@192.168.1.1はひかり電話RV-230SEの設定で定義した内線番号@SIPサーバーに合わせてください。
0003はひかり電話RV-230SEの設定で定義したユーザーIDに合わせてください。


・子機共通のトランスポート定義:既存の定義のコメントアウトを外します。
[internal-trans]
type=transport
protocol=udp ;udp,tcp,tls,ws,wss
bind=192.168.0.10:5060
192.168.0.10はRaspberryPiのLAN側のIPアドレスに合わせてください。

・子機の定義:transport以外のendpoint,auth,aorの3つを定義します。
  • 接続する子機(スマホやIP電話機)毎に定義します。
  • 下記は子機(1001)1台を定義しています。
[1001]
type=endpoint
context=from-internal
disallow=all
allow=ulaw
transport=internal-trans
auth=1001
aors=1001
rtp_symmetric = yes
rewrite_contact = yes
direct_media = no
fax_detect=yes

[1001]
type=auth
auth_type=userpass
password=<子機接続認証用の任意のパスワード>
username=1001

[1001]
type=aor
max_contacts=1
remove_existing=yes
1001は子機の内線番号に合わせてください。

ダイヤルプランの定義
発信・着信時の動作を定義します。

ファイルパス:/etc/asterisk/extensions.conf

設定内容:

・定数の定義
[globals]
NTTNUMBER=<自局電話番号>
SPEAKINGCLOCK=3117
ECHOTEST=3333
VOICEMAILMENU=5000
5000は留守電の内線番号で、後述「留守電の定義」の内容に合わせてください。
3117は時刻、3333はエコーテストの任意の内線番号を設定してください。


・ひかり電話(外線)からの着信
  • 全ての子機を一斉に20秒間呼び出します。
  • 何れの子機も受話しない場合、留守電を起動します。
  • FAXを検出した場合、これを受信します。
; Receive from hikari
[from-hikari]
exten => s,1,Dial(PJSIP/1001&PJSIP/1002,20,Tt)
same => n,Answer()
same => n,Wait(1)
same => n,Voicemail(5000)
same => n,Hangup
; Receive fax data
exten => fax,1,Dial(IAX2/iaxmodem)
same => n,Hangup
1001と1002は子機名で、実際の構成に合わせてください。前述”子機の定義”のセクション名に対応します。
iaxmodemは後述"FAXサーバー/IAXmodemとの通信(iax)の定義"のセクション名に対応します。


・内線から発信(内戦、外線、その他機能)
  • 要求先に応じた子機を呼び出します。
  • 国際電話は無視します。
  • 0から始まる番号は外線に対して呼び出します。
  • その他の機能(時刻読上げ、エコーテスト、留守電操作)に対応する番号については、これを行います。
; Receive from internal
[from-internal]
exten => 1001,1,Dial(PJSIP/1001,,Tt)
same => n,Hangup
exten => 1002,1,Dial(PJSIP/1002,,Tt)
same => n,Hangup

; Disable international call
exten => _001,1,Playback(vm-goodbye)
same => n,Hangup

; to outer
exten => _0.,1,Set(CALLERID(num)=${NTTNUMBER})
same => n,Set(CALLERID(name)=${NTTNUMBER})
same => n,Dial(PJSIP/${EXTEN}@hikari-trunk)

; Speaking Clock
exten => ${SPEAKINGCLOCK},1,Answer()
same => n,Wait(1)
same => n,Set(FutureTime=$[${EPOCH} + 5])
same => n,SayUnixTime(${FutureTime},Japan,bdAPIM)
same => n,Playback(jp-desu)
same => n,playback(beep)
same => n,Hangup

; Echo Test
exten => ${ECHOTEST},1,Answer()
same => n,Wait(1)
same => n,Playback(demo-echotest)
same => n,Playback(beep)
same => n,Echo
same => n,Playback(demo-echodone)
same => n,Playback(vm-goodbye)

; VoiceMail Menu
exten => ${VOICEMAILMENU},1,Answer()
same => n,Wait(1)
same => n,VoicemailMain(5000,s)
same => n,Hangup
5000は留守電の内線番号で、後述「留守電の定義」の内容に合わせてください。
ここでは子機は1001と1002ついて定義していますが、実際の運用に合わせてください。


・FAX送信
  • 国際電話は無視します。
  • 0から始まる番号は外線に対して呼び出します。
[fax-out]
; Disable international call
exten => _001,1,Playback(vm-goodbye)
same => n,Hangup
exten => _0.,1,Set(CALLERID(num)=${NTTNUMBER})
same => n,Set(CALLERID(name)=${NTTNUMBER})
same => n,Dial(PJSIP/${EXTEN}@hikari-trunk,300,T)
same => n,Hangup

通話操作/取次転送の定義
ファイルパス:features.conf

設定内容:
  • 通話中に"*1"ボタンを押すと、直後に指定した内線にブラインド(転送先と会話なしに)転送します。
  • 通話中に"#"ボタンを押すと、直後に指定した内線に仲介転送します。
[featuremap]
blindxfer => *1 ; direct transfer
atxfer => # ; transfer

FAXサーバー/IAXmodemとの通信(iax)の定義

ファイルパス:/etc/asterisk/iax.conf

定義内容:

・一般定義
[general]
bindport=4569
iaxcompat=yes
language=jp
bandwidth=medium
disallow=all
allow=ulaw
allow=alaw
allow=slinear
allow=gsm
jitterbuffer=no
maxregexpire=300
autokill=yes
"maxregexpire"はソフトウェアモデムのセットアップのIAXmodemのコンフィギュレーション"refresh"に合わせてください。

・FAX用ソフトウェアモデム(IAXmodem)との通信の定義
[iaxmodem]
type=friend
username=iaxmodem
secret=iaxmodemの認証パスワード
host=dynamic
disallow=all
allow=ulaw
allow=alaw
;allow=slinear
allow=gsm
requirecalltoken=no
context=fax-out
iaxmodemはIAXmodemの認証用ユーザーIDです。secretと同様にソフトウェアモデムのセットアップIAXmodemのコンフィギュレーションに合わせてください。

モジュールロード抑制の定義
使用しない機能のモジュールをロードしないように定義します。
これをしないと、廃止されたモジュールをロードしようとしたり、使用しないプロトコルを使おうとしたりでログにエラーが出力されます。

ファイルパス:/etc/asterisk/modules.conf

設定内容:

下記定義を追加します。
[modules]
・・・
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

留守電の定義
留守電(VoiceMail)の動作を指定します。

ファイルパス:/etc/asterisk/voicemail.conf

設定内容:

下記定義を追加します。
[general]
format=wav49
attach=yes
maxmsg=100
maxsecs=120
maxgreet=60
skipms=3000
maxsilence=10
silencethreshold=128
maxlogons=3
charset=UTF-8
emailsubject=[PBX]: 留守電に新着メッセージが入りました。--- ${VM_NAME}/${VM_MAILBOX} ---
emailbody=自宅の留守番電話(${VM_NAME})からのお知らせです。:\n\n\t新しいメッセージが入りました。\n\t\t着信日時:${VM_DATE}\n\t\t録音時間:${VM_DUR}\n\t\t発信元:${VM_CALLERID}\n\n\tメールボックス(内線:${VM_MAILBOX})には${VM_MSGNUM}件のメッセージがあります。\n\t--- ${VM_NAME}/${VM_MAILBOX} ---
${VM_MSGNUM})\nin mailbox ${VM_MAILBOX} from ${VM_CALLERID}, on ${VM_DATE},\n${IF($["${VM_CIDNUM}" = "${ORIG_VM_CIDNUM}"]?so:(originally sent by ${ORIG_VM_CALLERID} on ${ORIG_VM_DATE})\nso)} you might want to check it when you get a chance. Thanks!\n\n\t\t\t\t--Asterisk\n
emaildateformat=%Y/%m/%d %r
pagerdateformat=%A, %B %d, %Y at %r
mailcmd=/usr/sbin/sendmail -t
sendvoicemail=yes ; Allow the user to compose and send a voicemail while inside

[zonemessages]
eastern=America/New_York|'vm-received' Q 'digits/at' IMp
central=America/Chicago|'vm-received' Q 'digits/at' IMp
central24=America/Chicago|'vm-received' q 'digits/at' H N 'hours'
military=Zulu|'vm-received' q 'digits/at' H N 'hours' 'phonetic/z_p'
european=Europe/Copenhagen|'vm-received' a d b 'digits/at' HM
japan=Japan|Q PHM 'jp-ni' 'vm-received'

[default]
5000 => 1234,Rusuden,<通知先メールアドレス>,,attach=yes|tz=japan|locale=ja_JP.UTF-8
5000は留守電に付ける任意の内線番号で、ダイヤルプランの定義で指定します。
emailsubject、emailbodyは通知メールの件名や本文を自由に定義します。


日本語音声のインストール

留守電の日本語音声メッセージは、Asteriskのインストールに含まれていません。
決められたファイル名、フォーマットであれば、自身で用意して置き換えることが可能です。
asteriskのサイトには日本語のファイルがアップされていますので、今回はこれを使用します。

音声データ入手先
サイトアドレス:http://downloads.asterisk.org/pub/telephony/sounds/
ファイル名:asterisk-core-sounds-ja-gsm-current.tar.gz

解凍して配置
配置先:/usr/share/asterisk/sounds/にjaディレクトリを作成して、解凍したすべてのファイルを配置
フォルダ名:jaは前述「言語・ロケールの定義」で指定した値に対応します。

コマンド
cd usr/share/asterisk/sounds
sudo mkdir ja
cd ja
sudo wget http://downloads.asterisk.org/pub/telephony/sounds/asterisk-core-sounds-ja-gsm-current.tar.gz
sudo tar xvzf asterisk-core-sounds-ja-gsm-current.tar.gz

Asteriskの起動(再起動)

sudo service asterisk restart

Asteriskの起動の確認

sudo service asterisk status
active (running)になっていれば、無事起動しています。

Asteriskの自動起動登録

sudo systemctl enable asterisk

SIPクライアント(子機)のセットアップ
PBXのセットアップが終わると、後はSIPクライアントをセットアップすれば、これを使って通話ができます。

私は、Androidスマートホンと固定電話タイプのVoIP機器を繋ぎました。

当初はスマートホンだけでもいいかなと思っていましたが、AndroidOSがディープスリープするようになって、その間はアプリも完全に無反応になり、着信できない問題が発生しました。
アプリの設定で、ディープスリープを抑制することもできますが、バッテリーの持ちと引き換えになってしまいます。

外で自宅の電話を受ける必要性もあまりないので、スマホでの着信の確実性をあきらめ、自宅に固定電話タイプの機器を設置するのが最善と判断しました。

Android SIPクライアントアプリのセットアップ
無料で使えるSIPクライアントアプリはいくつかあります。わたしはMIZUDROIDを使いました。
他のアプリでも同様に設定できると思います。

・ログイン情報を設定します。


192.168.0.10はRaspberryPiのLAN側のIPアドレスに合わせてください。
1002とPasswordは子機のusername, passwordに合わせてください。


・アプリの活動頻度を設定します。


項目を設定すると、それに合わせた複数の項目が自動的に設定されます。
私は通常、"Auto-adapt"を設定していますが、これだとディープスリープを抑制できないので、着信を取りこぼすことがあります。
必用に応じて、"Always Runninng"に切り替えています。着信の取りこぼしはなくなりますが、バッテリーは消費します。


固定電話タイプのVoIP機器のセットアップ
わたしはPanasonicのKX-123Nを使いました。
他の機器も同様に設定できると思います。

webサーバーを有効([設定]モードで#534をキーイン)にして、PC等のブラウザーから接続(KX-123NのIPアドレス)します。


192.168.0.10はRaspberryPiのLAN側のIPアドレスに合わせてください。
1001とパスワードは子機のユーザ名、パスワードに合わせてください。




■ 目次 ■
  1. 構成
  2. ひかり電話RV-230SEの設定
  3. OSのセットアップ
  4. LANアダプタの接続
  5. ユーティリティのセットアップ
  6. ▶PBXのセットアップ
  7. ソフトウェアモデムのセットアップ
  8. FAXのセットアップ
  9. 自動再起動
  10. ステータスLEDの接続
  11. ケースに収納・設置
  12. トラブルと対応

Raspberry PiでPBXとFAXの構築 - ユーティリティのセットアップ

投稿 水 6/12 15:29:18 2024 | パソコン | hotall

PBX及びFAXをセットアップするにあたり、これらの動作に必要なソフトウェアをセットアップします。




必要なソフトウェアとはファイアウォールとメール送信です。

この文書は個人的なものであり、内容について一切の責任を負いかねます。



ファイアウォールのセットアップ
RaspberryPiを直接的・間接的にインターネットに繋ぐ前に、まずファイアウォールをセットアップするのが安全です。

私の場合、ufw/iptabesとFail2Banをセットアップしました。
ufwはOS標準のパケットフィルタ"iptables"をコンフィギュレーションするフロントエンドです。
Fail2Banは認証が一定回数失敗した場合に、通信を一定時間遮断します。

ufwのインストール
sudo apt install ufw

ufwを使ってパケットフィルタをコンフィグレーション
以下のポート以外は閉じます。
  • LAN側のSSHポート
  • LAN側とひかりモデム・ルーター側のSIPポート
  • LAN側とひかりモデム・ルーター側の音声通信(RTP)ポート
  • LAN側のFAXサービスポート
  • LAN側のFAXで使用するFTPパッシブモードのポート(ユーザーポート)
ufwコマンドで定義します。
sudo ufw disable
sudo ufw reset
sudo ufw default deny
sudo ufw allow from 192.168.0.0/24 to any port 22
sudo ufw allow from 192.168.1.1 to any port 5060
sudo ufw allow from 192.168.0.0/24 to any port 5060
sudo ufw allow from 192.168.1.1 to any port 10000:20000 proto udp
sudo ufw allow from 192.168.0.0/24 to any port 10000:20000 proto udp
sudo ufw allow from 192.168.0.0/24 to any port 4559 proto tcp
sudo ufw allow from 192.168.0.0/24 to any port 1024:65535 proto tcp
sudo ufw enable
192.168.0.0はLAN側のネットワークアドレスに合わせてください。
192.168.1.1はひかりモデム・ルータのSIPサーバーアドレスです。


fail2banのインストール
sudo apt install fail2ban

fail2banのコンフィギュレーション
コンフィギュレーションファイルはテンプレートをコピーして行います。
sudo cp /etc/fail2ban/jail.conf /etc/fail2ban/jail.local

ファイルパス:/etc/fail2ban/jail.local

定義内容:
SSHログの監視:3回リトライ10分遮断

ファイル内の[sshd]セクションに以下の定義を追加します。
enabled = true
filter = sshd
banaction = iptables-multiport
bantime = 600
maxretry = 3

fail2banサービスの再起動
sudo service fail2ban restart

fail2banサービスの起動確認

sudo service fail2ban status
active (running)であれば起動しています。

fail2banサービスの自動起動登録

sudo systemctl enable fail2ban

メール送信のセットアップ
留守電やFAXの通知をメールで行うため、メール送信ソフトウェアをセットアップします。

sSMTPのインストール
sudo apt-get install -y ssmtp

sSMTPのコンフィギュレーション
ファイルパス:/etc/ssmtp/ssmtp.conf
定義内容:
root=<送信元アカウントアドレス>
mailhub=<送信に利用するSMTPサーバURL>:<ポート番号:587または465>
hostname=<自身のホスト名(FQDN):OSのセットアップで入力した値(hostnameコマンドで確認できます)>
FromLineOverride=YES
RewriteDomain=<送信に利用するSMTPサーバのドメイン(メールアドレスの@より後の部分)>
AuthUser=<アカウントユーザー名:SMTPサーバの認証に使用する値>
Authpass=<アカウントパスワード:SMTPサーバの認証に使用する値>
UseSTARTTLS=YES



■ 目次 ■
  1. 構成
  2. ひかり電話RV-230SEの設定
  3. OSのセットアップ
  4. LANアダプタの接続
  5. ▶ユーティリティのセットアップ
  6. PBXのセットアップ
  7. ソフトウェアモデムのセットアップ
  8. FAXのセットアップ
  9. 自動再起動
  10. ステータスLEDの接続
  11. ケースに収納・設置
  12. トラブルと対応

Raspberry PiでPBXとFAXの構築 - LANアダプタの接続

投稿 金 6/ 7 17:07:02 2024 | パソコン | hotall

ひかり電話モデム・ルーターのSIPサーバーとRaspberryPi上のPBXを接続するにあたり、ルーターを経由するとNAT越えの問題が発生します。

NAT機能で動的にIPアドレスを書き換えるのはパケットヘッダーだけです。
しかし、SIPパケットのアプリケーション層にはIPアドレスが含まれており、NATはこれらのアドレスを変換しません。

最近のルーターにはSIPパケット内のアドレスを変換する機能があります。
私のルーターにもこの機能があり、パケットモニターを見る限り正常に変換が行われているのですが、ひかり電話モデム・ルーターのSIPサーバーは、同一ネットワーク内のクライアントにしか応答しないようになっているため、ルーター(NAT)経由でSIPサーバーに接続することを諦めました。

そこで、RaspberryPiにLANアダプタを追加接続し、ここから直接、ひかり電話モデム・ルーター内のSIPサーバーにアクセスします。

この文書は個人的なものであり、内容について一切の責任を負いかねます。






ハードウェアの導入

今ではイーサネットインターフェースはほとんどのPCに標準装備されていますが、かつてはLANアダプターを別途購入してPCに接続していました。
我家には、PCを買い替えて不要になったLANアダプターが眠っていたので、これを使用します。

機種
PLANEX:GU-1000T

デバイスドライバ
このLANアダプタの内部はAX88178というチップであり、デバイスドライバはOSにプリインストールされています。
したがって、usbに挿すだけで自動認識します。

確認:
$ lsusb
Bus 001 Device 004: ID 0b95:1780 ASIX Electronics Corp. AX88178
Bus 001 Device 003: ID 0424:ec00 Microchip Technology, Inc. (formerly SMSC) SMSC9512/9514 Fast Ethernet Adapter
Bus 001 Device 002: ID 0424:9514 Microchip Technology, Inc. (formerly SMSC) SMC9514 Hub
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub

インターフェースの設定

IPアドレス
ひかり電話モデム・ルーターのSIPサーバーと同じネットワーク(192.168.1.0/24)上でSIPサーバー(192.168.1.1)とは異なるアドレスを割り当てます。
例えば192.168.1.10などです。

固定IPアドレスの定義
ファイルパス:/etc/dhcpcd.conf

定義内容:
interface eth1
static ip_address=192.168.1.10/24
static routers=192.168.1.1
192.168.1.10は割当てたアドレスに合わせてください。

確認:
$ ifconfig
eth0: flags=4163 mtu 1500
inet 192.168.0.10 netmask 255.255.255.0 broadcast 192.168.0.255
inet6 feb3::17e8:b07e:db46:c4b4 prefixlen 64 scopeid 0x20
ether b8:4f:4b:89:4f:7e txqueuelen 1000 (Ethernet)
RX packets 74873 bytes 7960358 (7.5 MiB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 36719 bytes 6047777 (5.7 MiB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0

eth1: flags=4163 mtu 1500
inet 192.168.1.10 netmask 255.255.255.0 broadcast 192.168.1.255
inet6 7f80::b47f:4732:804f:4047 prefixlen 64 scopeid 0x20
inet6 2405:657f:40:7f00:a97f:b4a4:8e4a:898e prefixlen 64 scopeid 0x0
ether 00:f7:90:cc:b0:c0 txqueuelen 1000 (Ethernet)
RX packets 797 bytes 419185 (409.3 KiB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 1001 bytes 119610 (116.8 KiB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0

lo: flags=73 mtu 65536
inet 127.0.0.1 netmask 255.0.0.0
inet6 ::1 prefixlen 128 scopeid 0x10
loop txqueuelen 1000 (Local Loopback)
RX packets 828 bytes 55622 (54.3 KiB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 828 bytes 55622 (54.3 KiB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0



■ 目次 ■
  1. 構成
  2. ひかり電話RV-230SEの設定
  3. OSのセットアップ
  4. ▶LANアダプタの接続
  5. ユーティリティのセットアップ
  6. PBXのセットアップ
  7. ソフトウェアモデムのセットアップ
  8. FAXのセットアップ
  9. 自動再起動
  10. ステータスLEDの接続
  11. ケースに収納・設置
  12. トラブルと対応

Raspberry PiでPBXとFAXの構築 - OSのセットアップ

投稿 火 6/ 4 16:00:38 2024 | パソコン | hotall

RaspberryPiを使用するには、まず、OSのインストールが必要です。
最近ではいくつかのOSが選べるようになりましたが、もっとも歴史の古い"Raspberry Pi OS"(旧名Raspbian)を使います。
この文書は個人的なものであり、内容について一切の責任を負いかねます。



RaspberryPi OSのインストール




Raspberry pi Imagerのダウンロード
本家のサイトからダウンロードします。
私のPCはWindowsなので、"Download for Windows"をクリックしてダウンロードしました。

Raspberry pi Imagerの実行
このImagerはSDカードにインストールに必要なファイルを書き込むソフトです。
RaspberryPiに挿入するSDカードをPCに挿入し、ダウンロードしたImagerを実行します。




デバイス、OS、ストレージを選択します。
項目設定値
デバイスRASPBERRY PI 3
OSRaspberry pi os(32bit)
ストレージSDHC CARD
PCに挿入したSDカードを選択




"設定を編集"します。




一般設定情報を編集します。
項目設定値
ホスト名このRaspberryPiに付ける名前。
raspipbxなど
ユーザー名とパスワード初期ユーザとそのパスワード。
最初にSSHで接続する際の認証情報になります。
ロケール設定をするタイムゾーンとキーボードレイアウトを設定。
Asia/Tokyo
jp




サービス設定情報を編集します。
項目設定値
SSHを有効化する以降の作業はSSHで行いたいので、これを有効化します。
まずはパスワード認証とします。
以上を設定後、SDカードに書き込みます。

インストーラーの実行

書込んだSDカードをRaspberryPiに挿入し、インストール作業用のPCと同じネットワークに接続します。
インストール作業は外部レポジトリサーバーと通信しますので、インターネットに繋がっている必要があります。

RaspberryPiに電源を入れると、自動的にインストールが始まります。
アクセスランプが落ち着くまで待ちます。数十分かかります。

リモート環境の構築

PC上のターミナルソフトでRaspberryPiに接続し、以降のインストール/コンフィギュレーション操作を行います。
私はRLoginを使用しました。



ターミナルソフトに接続情報を設定し、RaspberryPiに接続します。
項目設定値
ホスト名RaspberryPiのIPアドレス。
ルーターの履歴などから調べます。
あるいはコマンド(※1)で調べます。
TCPポートssh
ログインユーザー名Imagerに設定した認証情報
パスワード
デフォルト文字セットUTF-8
(※1)IPアドレスの調べ方
for /L %i in (0,1,32) do ping -n 1 -w 1 192.168.0.%i
arp -a
"192.168.0.%i"はネットワークアドレス(マスク)合わせてください。
"(0,1,32)"はIネットワークのIPアドレスの末尾の範囲に合わせてください。
表示されたリストからRaspberryPiのMACアドレスに一致するものを探します。


OSのアップグレード

OSを最新の状態にします。

レポジトリキャッシュのアップデート
sudo apt update

OSのアップグレード
sudo apt upgrade

IPアドレスの固定化

RaspberryPiのデフォルトのIPアドレスは、DHCPサーバーによる動的割当てになっています。
SSH接続において、また、今後SIPクライアントと接続する際、IPアドレスが変わってしまうと不便ですので、ルーターあるいはRasberryPi側でIPアドレスを固定化します。

RasberryPi側でIPアドレスを固定化する場合
コンフィギュレーションファイルを変更します。
ファイルパス:/etc/dhcpcd.conf
変更内容:
interface eth0
static ip_address=192.168.0.10/24
static routers=192.168.0.1
static domain_name_servers=192.168.0.1
"192.168.0.10/24"は固定化したいアドレスに合わせてください。
"192.168.0.1"はルーターのアドレスに合わせてください。




■ 目次 ■
  1. 構成
  2. ひかり電話RV-230SEの設定
  3. ▶OSのセットアップ
  4. LANアダプタの接続
  5. ユーティリティのセットアップ
  6. PBXのセットアップ
  7. ソフトウェアモデムのセットアップ
  8. FAXのセットアップ
  9. 自動再起動
  10. ステータスLEDの接続
  11. ケースに収納・設置
  12. トラブルと対応
«Prev || 1 | 2 | 3 | 4 | 5 | 6 || Next»