GUiLZ Project Personal & Experimental Blog



GMOクラウド VPS 設定記事一覧

 

はじめに – なぜFAXサーバーを構築したのか

今どきFAXなんて自分はまず使わないし、やりとりはメールと電話で十分でしょとか思っていたものの、一部のクライアント様はご老齢のためメールの使い方がよく分からず、FAXで書類データを送っているとのことで、必要に迫られてFAX番号を用意するハメになったのがそもそもの始まり。

とはいえ滅多に使わないFAX受信のために専用機とか複合機を用意したり、それにかかる電気代や用紙代を支払うのもバカバカしい。一部の複合機は本体で内容を確認して印刷するかしないか決められるみたいだけれど、小さい画面で確認するのはつらいし、FAX受信内容をメールで送ってくれるhpの複合機はいい値段がするし、投資対効果に見合わない。

それではとネットFAXサービスを検討してもみたけど、月額費用がかかったり、3ヶ月使わないと強制解約になったり、受信枚数が多くなると別途追加料金がかかったりで、やっぱりコストがかかる。どうしたものかなーと思いつつ、そういやWebサイト運営と実験目的でVPS借りているんだし、そこにAsterisk入れて、電話は月額費用がかからない FUSION IP-Phone SMART でFAXサーバー構築すれば、ネット FAXサービスと同様の使い勝手になるんじゃね、と思い至った次第。

……というのが1年ちょい前の話。その後すぐ受信専用としてAsterisk + FUSION IP-Phone SMART を使ってSaaSes Osukini VPS上にFAX受信環境を構築し、無料で維持・受信できるFAXサーバーとして1年弱運用していたものの、SaaSesのサービス終了に伴って、サーバー環境を GMOクラウド VPS に移転することになったため、これを機に送受信できるよう設定してみたというのが今回のネタ。

テスト環境として、VPSを2つ(SaaSesと GMOクラウド VPS )、FUSION IP-Phone SMART を2番号契約してそれぞれ認証・電話番号部分以外は同一設定で、相互に送受信でき、受信した内容はメール添付で送られてくるところまで確認した。

ということで前書きが長くなったけど、本文はもっと長いので、何とか最後まで読み進めていただければ幸い。あ、あとFUSION IP-Phone SMARTの電話番号は取得済みとして話を進めているので、事前に電話番号の取得をお願いします。

スポンサードリンク

 

Asteriskのインストール

両サイト様の情報を参考に、インストールを行います。まずは以下のようにパッケージをインストールします。Asterisk 11.5からは、libuuid-devel uuid-devel も入れておかないとダメらしいので注意。

# yum --enablerepo=remi,epel,rpmforge install kernel-devel bison openssl-devel mysql-devel gcc gcc-c++ libxml2-devel ncurses-devel newt-devel libtermcap-devel libuuid-devel uuid-devel sqlite*

 

パッケージ名 アーキテクチャ バージョン レポジトリ
bison x86_64 2.4.1-5.el6 base
cloog-ppl x86_64 0.15.7-1.2.el6 base
cpp x86_64 4.4.7-4.el6 base
gcc x86_64 4.4.7-4.el6 base
gcc-c++ x86_64 4.4.7-4.el6 base
glibc-devel x86_64 2.12-1.132.el6_5.2 updates
glibc-headers x86_64 2.12-1.132.el6_5.2 updates
kernel-devel x86_64 2.6.32-431.20.3.el6 updates
kernel-headers x86_64 2.6.32-431.20.3.el6 updates
keyutils-libs-devel x86_64 1.4-4.el6 base
krb5-devel x86_64 1.10.3-15.el6_5.1 updates
libcom_err-devel x86_64 1.41.12-18.el6 base
libselinux-devel x86_64 2.0.94-5.3.el6_4.1 base
libsepol-devel x86_64 2.0.41-4.el6 base
libstdc++-devel x86_64 4.4.7-4.el6 base
libuuid-devel x86_64 2.17.2-12.14.el6_5 updates
libxml2-devel x86_64 2.7.6-14.el6_5.2 updates
mpfr x86_64 2.4.1-6.el6 base
mysql-devel x86_64 5.5.38-1.el6.remi remi
ncurses-devel x86_64 5.7-3.20090208.el6 base
newt-devel x86_64 0.52.11-3.el6 base
openssl-devel x86_64 1.0.1e-16.el6_5.14 updates
ppl x86_64 0.10.2-11.el6 base
slang-devel x86_64 2.2.1-1.el6 base
sqlite2 x86_64 2.8.17-10.el6 epel
sqlite2-devel x86_64 2.8.17-10.el6 epel
sqlite2-tcl x86_64 2.8.17-10.el6 epel
sqlite3-dbf x86_64 2011.01.24-1.el6 epel
sqlite-devel x86_64 3.6.20-1.el6 base
sqlite-doc x86_64 3.6.20-1.el6 base
sqlitemanager noarch 1.2.0-1.el6.rf rpmforge
sqlite-tcl x86_64 3.6.20-1.el6 base
tcl x86_64 1:8.5.7-6.el6 base
uuid x86_64 1.6.1-10.el6 base
uuid-devel x86_64 1.6.1-10.el6 base
zlib-devel x86_64 1.2.3-29.el6 base

うちの環境では、(Webサーバー等のパッケージを入れた後に導入したので) これだけのパッケージが入りました。念のため一度再起動しておきます。

# reboot

 

パッケージの導入が終わったところで、Asterisk 11のインストールを行っていきます。サポート期間が長いので、最新の12系列ではなく11系列を入れます。インストール時点でのAsterisk 11のバージョンは11.10.2でした。

# cd /usr/local/src
# wget http://downloads.asterisk.org/pub/telephony/asterisk/asterisk-11-current.tar.gz

 

として、Asterisk 11最新版のソースを持ってきます。参考サイト様では DAHDI と LibPRI もインストールしていますが、FAXサーバーとしてVPSから使うだけなら不要なので、インストールしません。

# tar xvzf asterisk-11-current.tar.gz
# cd asterisk-11.10.2

# ./configure
# make
# make install
# make samples
# make config

 

上記のように解凍してコンパイル、インストールまで行います。この時点でVPS起動時に自動実行されるように設定されます。その後、

# ldconfig

 

として、共有ライブラリを読み込むように設定しておきます。続いて、Asteriskの初期設定を行っていきます。

 

Asteriskの初期設定‐起動まで

Raspberry Pi でAsteriskを試す サイト様を参考に、Asteriskユーザーとグループを作成します。

# groupadd -g 5000 asterisk
# useradd -g 5000 -u 5000 -d /var/lib/asterisk -s /sbin/nologin asterisk

 

Asteriskを先にインストールしていると、

useradd: warning: the home directory already exists.
Not copying any file from skel directory into it.

 

こんな表示が出ますが、無視しても問題ないのでそのままに。

続いて、voip-info様のサンプル設定ファイルを利用するため、以下のように元の設定ファイルをバックアップしてから、新しい設定ファイルをコピーします。

# cd /etc
# cp -a asterisk asterisk_orig

# cd asterisk
# wget http://ftp.voip-info.jp/asterisk/conf/conf-sample-1.6_01.tar.gz

# tar xzvf conf-sample-1.6_01.tar.gz
# rm -f conf-sample-1.6_01.tar.gz

 

ファイルの準備ができたので、まずユーザー権限を変更します。

# chown -R asterisk. /var/run/asterisk
# chown -R asterisk. /var/lib/asterisk
# chown -R asterisk. /var/log/asterisk
# chown -R asterisk. /var/spool/asterisk
# chown -R asterisk. /usr/lib/asterisk
# chown -R asterisk. /etc/asterisk

# chmod -R u=rwX,g=rX,o= /var/run/asterisk
# chmod -R u=rwX,g=rX,o= /var/lib/asterisk
# chmod -R u=rwX,g=rX,o= /var/log/asterisk
# chmod -R u=rwX,g=rX,o= /var/spool/asterisk
# chmod -R u=rwX,g=rX,o= /usr/lib/asterisk
# chmod -R u=rwX,g=rX,o= /etc/asterisk

 

続いて、設定ファイルを編集していきます。

# vi /etc/asterisk/asterisk.conf

 

として、[directories] 内にある、

astrundir => /var/run

 

astrundir => /var/run/asterisk

 

に変更します。続いて [options] 末尾に

runuser = asterisk
rungroup = asterisk

 

と追加します。最終的に /etc/asterisk/asterisk.conf はこんな感じになりました。

[directories]
astetcdir => /etc/asterisk
astmoddir => /usr/lib/asterisk/modules
astvarlibdir => /var/lib/asterisk
astagidir => /var/lib/asterisk/agi-bin
astspooldir => /var/spool/asterisk
astrundir => /var/run/asterisk
astlogdir => /var/log/asterisk

[options]
languageprefix=yes
runuser = asterisk
rungroup = asterisk

 

ここまで終わったら、Asteriskの起動テストをします。

# service asterisk start

 

として、Asteriskの起動を確認します。問題なく起動していたら、

# reboot

 

システムを一度再起動します。再起動した後で、

# ls -la /var/run/asterisk/

 

として、

srwxr-xr-x  1 asterisk asterisk    0 Jun 20 11:10 asterisk.ctl
-rw-r--r--  1 asterisk asterisk    5 Jun 20 11:10 asterisk.pid

 

こんな感じにファイルがあればOK。

# asterisk -vvvvr

 

と入力し、コンソールが起動するか確認します。(SERVERにはサーバー名が入ります)

Asterisk 11.10.2, Copyright (C) 1999 - 2013 Digium, Inc. and others.
Created by Mark Spencer <markster@digium.com>
Asterisk comes with ABSOLUTELY NO WARRANTY; type 'core show warranty' for details.
This is free software, with components licensed under the GNU General Public
License version 2 and other licenses; you are welcome to redistribute it under
certain conditions. Type 'core show license' for details.
=========================================================================
Running as user 'asterisk'
Running under group 'asterisk'
Connected to Asterisk 11.10.2 currently running on SERVER (pid = 1488)
SERVER*CLI> 

 

こんな感じでコンソールが起動したらOKです。

SERVER*CLI> quit

 

と入力してコンソールを終了します。続いて、AsteriskにFUSION IP-Phone SMARTの接続設定を行っていきます。

 

AsteriskのFUSION IP-Phone SMART接続設定

voip-info.jp – FUSION IP-Phone SMART 様のサイトを参考に、

# vi /etc/asterisk/sip.conf

 

として、設定ファイルを編集します。まずは [general] の

localnet=192.168.0.0/255.255.0.0

 

を、

localnet=VPSのIPアドレス/255.255.255.0

 

とします。その後同じ [general] セクションに

; Fusion
register => FUSIONアカウントID:パスワード@smart.0038.net

; 死活確認
qualify=yes

 

と記入します。さらに、自分の場合は末尾にアカウント情報を以下のように追加しました。ちなみに faxdetect=yes は、FAXサーバー用の設定です。

[fusion-smart]
type=friend
username=[FUSION アカウント]
fromuser=[FUSION アカウント]
secret=パスワード
host=smart.0038.net
fromdomain=smart.0038.net
context=default
insecure=port,invite
canreinvite=no
disallow=all
allow=ulaw
allow=alaw
dtmfmode=inband
nat=yes
faxdetect=yes

 

このあとAsteriskを再起動して設定ファイルの再読み込みをしますが、その前にiptablesでの接続設定をします。GMOクラウド VPSを借りてまず行う初期設定内容 で設定したiptablesスクリプトのポート開放部分に、

# Asterisk
iptables -A INPUT -p tcp -s 61.213.230.153 --dport 5060 -j ACCEPT_COUNTRY
iptables -A INPUT -p udp -s 61.213.230.153 --dport 5060 -j ACCEPT_COUNTRY
iptables -A INPUT -p udp -s 61.213.230.153 --dport 50600:50900 -j ACCEPT_COUNTRY

 

こんな感じで追記し、FUSIONのSIPサーバーからの接続のみ許可するようにします(必要ないかもですが、念のために)。その後

# cd /root
# ./iptables.sh

# service asterisk restart

 

として、iptablesルールを更新した後にAsteriskを再起動し、

# asterisk -vvvvr

 

としてCLIを起動し、FUSIONのSIPサーバーから認証されているか確認します。CLIから

SERVER*CLI> sip show registry

 

と入力して、

Host				dnsmgr	Username	Refresh	State		Reg.Time
smart.0038.net:5060	N		ユーザーID	585		Registered	Sat, 05 Jul 2014 22:17:32

 

のように、Registered となっていて

SERVER*CLI> sip show peers

 

と入力して

Name/username			Host			Dyn	Forcerport	Comedia	ACL Port	Status	Description
fusion-smart/ユーザーID	61.213.230.153		Yes			Yes		5060		OK (1 ms)

 

こんな表示がされればOK。ここまで確認できたら、

SERVER*CLI> quit

 

と入力してCLIを終了させます。ここまででFUSION IP-Phone SMARTの接続設定は終わったので、続いてFAXサーバーのための設定を行います。

 

IAXmodemのインストール

CentOS 6.3 に Asterisk 11 を構成 - FAX 機能の構成 サイト様の情報を参考に、まず IAXmodem をダウンロードしてきます。

# cd /usr/local/src
# wget http://sourceforge.net/projects/iaxmodem/files/iaxmodem/iaxmodem-1.2.0/iaxmodem-1.2.0.tar.gz

 

続いて、FAXサーバーを利用するために必要なパッケージを導入します。

# yum --enablerepo=remi,epel,rpmforge install libjpeg libjpeg-devel libtiff libtiff-devel ghostscript ghostscript-devel ghostscript-fonts sox

 

パッケージ名 アーキテクチャ バージョン レポジトリ
alsa-lib x86_64 1.0.22-3.el6 base
flac x86_64 1.2.1-6.1.el6 base
ghostscript-devel x86_64 8.70-19.el6 base
gsm x86_64 1.0.13-4.el6 base
libao x86_64 0.8.8-7.1.el6 base
libjpeg-turbo-devel x86_64 1.2.1-3.el6_5 updates
libogg x86_64 2:1.1.4-2.1.el6 base
libsamplerate x86_64 0.1.7-2.1.el6 base
libsndfile x86_64 1.0.20-5.el6 base
libtiff-devel x86_64 3.9.4-10.el6_5 updates
libvorbis x86_64 1:1.2.3-4.el6_2.1 base
sox x86_64 14.2.0-6.el6 base
wavpack x86_64 4.60-1.1.el6 base

上記のようなパッケージが入ります。これだけ入ったら、IAXmodemのライブラリである、libiax2のインストールを行います。

# tar xvzf iaxmodem-1.2.0.tar.gz
# cd iaxmodem-1.2.0/lib/libiax2

# ./configure
# make
# make install

 

/usr/local/lib を、システムに共有ライブラリとして登録しておきます。

# echo /usr/local/lib > /etc/ld.so.conf.d/usr_local_lib.conf

 

その後、ライブラリがきちんと登録されているかどうか確認します。

# /sbin/ldconfig -v | grep libiax

 

以下のように登録されていればOK。

        libiax.so.0 -> libiax.so.0.0.0

 

続いて、spandspライブラリをインストールします。

# cd ../spandsp/

# ./configure
# make
# make install

 

ライブラリ登録を確認します。

# /sbin/ldconfig -v | grep libspandsp

 

以下のように登録されていればOK。

        libspandsp.so.1 -> libspandsp.so.1.0.0

 

ライブラリがインストールできたら、続いてiaxmodemの構成を行います。iaxmodemをビルドし、実行ファイルをコピーします。

# cd ../../
# ./build

# cp -p iaxmodem /usr/local/sbin/

 

設定ファイルを配置します。

# mkdir /etc/iaxmodem
# cp -p iaxmodem-cfg.ttyIAX /etc/iaxmodem/ttyIAX

 

ひとまずここまでで、IAXmodemのインストールは終わりです。続いてHylafaxをインストールしていきます。

 

Hylafaxのインストール

 

Hylafaxのダウンロードとインストールを行います。

# cd /usr/local/src
# wget ftp://ftp.hylafax.org/source/hylafax-6.0.6.tar.gz

# tar xvzf hylafax-6.0.6.tar.gz
# cd hylafax-6.0.6

# ./configure

 

ずらずらーっと文章が流れた後に、Press Return to Continue という表示が出たらリターンキーを押します。

初期設定メニューが表示されるので、まず 13と入力し、Default page size にA4と入力してリターンキーを押します。

Are these OK [yes] ? 13
Default page size [North American Letter]? A4

 

続いて 14 と入力し、Default vertical res (lpi) に 196 と入力してリターンキーを押します。

Are these OK [yes] ? 14
Default vertical res (lpi) [98]? 196

 

初期設定メニューに、以下のように変更された内容が表示されればOKです。

[13] Default page size:                 ISO A4
[14] Default vertical res (lpi):        196

 

ここで変更する内容はもうないので、リターンキーを2回押して進めます。コマンドラインに戻ったら、

# make
# make install

 

としてインストールします。インストールが終わったら、引き続き構成のセットアップを行います。

# faxsetup

 

と入力してセットアップに進みます。リターンキーを1回押すと対話式の設定に入るので、それぞれ、Country code [1]? に 81 と入力してリターン、Area code []? はIP電話なので最初のゼロを飛ばし 50 と入力してリターン、Long distance dialing prefix [1]? は 0 を入力してリターン、International dialing prefix [011]? は、001 とします。

No scheduler config file exists, creating one from scratch.
Country code [1]? 81
Area code []? 50
Long distance dialing prefix [1]? 0
International dialing prefix [011]? 001

 

こんな感じで入力したら、後の質問にはリターンで飛ばしていき、

The non-default scheduler parameters are:

CountryCode:            81
AreaCode:               50
LongDistancePrefix:     0
InternationalPrefix:    001

Are these ok [yes]? 

 

という表示まで進めば、リターンを押します。続いて表示される

Should I restart the HylaFAX server processes [yes]? 

 

というメッセージではリターンキーでプロセスを再起動させ、次の

Do you want to run faxaddmodem to configure a modem [yes]? no

 

というメッセージには no と入力し、リターンキーを押します。

ここまででFAXサーバー用の準備は終わりました。続いて、AsteriskへのFAXサーバー設定に移ります。

 

AsteriskへのFAXサーバー設定

ここから、再びAsterisk本体の設定ファイルを編集します。

# vi /etc/asterisk/iax.conf

 

として、末尾に以下の内容を追加します。下記設定内の username や secret の設定などは、IAXmodemのインストールの最後でコピーした /etc/iaxmodem/ttyIAX の設定と同じものにしておきます。(コピーして編集していない場合は、特に変更する必要はありません)

[iaxmodem]
type=friend
username=iaxmodem
secret=password
host=dynamic
disallow=all
allow=ulaw
allow=slinear
requirecalltoken=no
context=fax-out

 

続いて、extensions.conf も設定します。

# vi /etc/asterisk/extensions.conf

 

として、[globals] 内の MYNUMBER を自分の050番号に書き換えます。自分の [globals] 設定は以下の通りです。(電話番号は例です)

[globals]
USEVOICEMAIL=YES
SPEAKINGCLOCK=317
ECHOTEST=333
;For Hikari Denwa
MYNUMBER=05012345678

 

続いて、その下にある [default] 内に、fax-in 設定を追加します。

[default]

; fax-in
exten => FUSIONアカウントID,1,Dial(IAX2/iaxmodem)
exten => FUSIONアカウントID,n,Hangup

~ 省略 ~

 

extensions.conf ファイルの末尾に、以下のように [fax-out] 設定を追加します。

[fax-out]
exten => _X.,1,Set(CALLERID(num)=${MYNUMBER})
exten => _X.,n,Set(CALLERID(name)=${MYNUMBER})
exten => _0.,n,Dial(SIP/${EXTEN}@fusion-smart,300,T)
exten => _X.,n,Hangup

 

続いて、Hylafaxの設定に移ります。

 

Hylafaxの設定

まず、設定ファイルを /var/spool/hylafax/etc/ にコピーし、編集します。

# cd /usr/local/src/iaxmodem-1.2.0
# cp -p config.ttyIAX /var/spool/hylafax/etc/

# vi /var/spool/hylafax/etc/config.ttyIAX

 

変更点は一番上の行から LocalIdentifier 行までなので、以下にその内容を全て記載します。FAXNumber と LocalIdentifier には、ご自身のFUSION電話番号を入力してください。(このファイルの電話番号は例です)

CountryCode:            81
AreaCode:               50
FAXNumber:              +81.050.1234.5678
LongDistancePrefix:     0
InternationalPrefix:    001
DialStringRules:        etc/dialrules
ServerTracing:          0xFFF
SessionTracing:         0xFFF
RecvFileMode:           0600
LogFileMode:            0600
DeviceMode:             0600
RingsBeforeAnswer:      1
SpeakerVolume:          off
GettyArgs:              "-h %l dx_%s"
LocalIdentifier:        "050.1234.5678"

 

続いて、/usr/local/lib/fax/sendfax.conf というファイルを新規作成し、FAXリトライ回数を設定します。

# vi /usr/local/lib/fax/sendfax.conf

 

以下の2行を入力して保存します。この例ではリトライ回数を2回に設定しています。

MaxTries: 2
MaxDials: 2

 

/usr/local/lib/fax/hfaxd.conf ファイルを編集して、faxstat コマンド実行時の表示内容を設定します。

# vi /usr/local/lib/fax/hfaxd.conf

 

ファイルの中ほどにある、コメントアウトされたJobFmtを編集します。下記のように変更して保存します。

JobFmt:         "%-5j %1a %-27.27e %5P %5D %10Z %.25s"

 

続いて、FAXを送信できるユーザーを登録します。下記のように管理者(root) と送信に使うユーザー名(user・これは例です) として登録しておきます。受信だけなら多分必要ないとは思いますが、送信にも使う場合には登録しておきましょう。

# /usr/local/sbin/faxadduser -a パスワード root
# /usr/local/sbin/faxadduser -p パスワード user

 

きちんと登録されているかどうか確認します。以下のように管理者(root) と送信ユーザー名(user・これは例です) が表示されればOKです。

# cat /var/spool/hylafax/etc/hosts.hfaxd
localhost
127.0.0.1
^root@:::XXXXXXXXXXXXXXX
^user@:::XXXXXXXXXXXXXXX

 

ここまで終わったら、続いてきちんと動作しているかどうか、動作確認を行います。

 

動作確認

 

asteriskを一度再起動してから、iaxmodem を起動します。

# service asterisk restart

# /usr/local/sbin/iaxmodem ttyIAX &

 

CLIを起動します。

# asterisk -vvvvr

 

CLIが立ち上がったら、iax2 show peers と入力します。

SERVER*CLI> iax2 show peers

 

下記のように iaxmodem に接続されていればOKです。

Name/Username	Host			Mask			Port	Status		Description
iaxmodem/iaxmod	127.0.0.1	(D)	255.255.255.255	4570	Unmonitored

 

確認が終わったら、quit と入力してCLIを終了させます。

SERVER*CLI> quit

 

次に、hylafaxを起動します。

# /usr/local/sbin/faxgetty /dev/ttyIAX &

 

faxstat -s と入力して、動作状況を確認します。下記のように表示されればOK。(電話番号は例です)

# faxstat -s

HylaFAX scheduler on SERVER: Running
Modem ttyIAX (+81.050.1234.5678): Running and idle

 

ここまでで問題がなければ、続いてサービスの自動実行を設定します。

 

サービスの自動実行設定

サービスの自動実行を設定しますが、Hylafaxはインストール時に自動設定されているので、iaxmodem関係のみ設定します。まず設定ファイルをコピーし、実行権限をつけて chkconfig します。

# cd /usr/local/src/iaxmodem-1.2.0
# cp -a iaxmodem.init.fedora /etc/init.d/iaxmodem

# chmod +x /etc/init.d/iaxmodem
# chkconfig --add iaxmodem

 

faxgetty の自動起動設定をします。

# vi /etc/inittab

 

として、以下の内容を末尾に追加します。

# Run faxgetty
mo:2345:respawn:/usr/local/sbin/faxgetty /dev/ttyIAX

 

それぞれを自動起動するため、rc.localに追加します。

# vi /etc/rc.d/rc.local

 

として末尾に

/usr/local/sbin/iaxmodem ttyIAX &
/usr/local/sbin/faxgetty /dev/ttyIAX &

 

を追加します。ここまででFAXサーバーの設定は終わりましたが、届いたFAXをいちいち確認するのは不便なので、続いてメールで自動送信させる設定を追加します。

 

FAXをメール送信させる設定

Postfixが GMOクラウド VPS だと初期状態で入っているので、その設定を行い、メールの送信までできることを前提に話を進めます。

GMOクラウド VPSでWeb・メール環境を設定する 記事で書いたことと重複しますが、まず、

# vi /etc/aliases

 

として、以下のように末尾に FaxMaster 設定を追加します。FAX受信時に、このメールアドレスまで通知メッセージが届きます(FAX本文は含まれません)。

# alias for notification messages from HylaFAX servers
FaxMaster: root

 

続いて、

# vi /etc/postfix/main.cf

 

として、以下のように message_size_limit をファイル末尾辺りに追加します。ここまで大きい値にする必要はないかと思いますが、大量の書類が届くことも考えて、大きめにしました。

message_size_limit = 25600000

 

ここまでPostfix側の設定が終わったら、続いて

# vi /var/spool/hylafax/etc/FaxDispatch

 

として、設定ファイルを新規作成します。内容は以下のようにします。(メールアドレスは例です)

SENDTO=faxtomail@example.com;
FILETYPE=pdf;

 

FILETYPE=pdf; と指定してやることで、PDFの添付ファイルとして SENDTO で指定したメールアドレスにFAX受信データが送られてきます。

ここまで終わったら、一度再起動して、自動でAsteriskとFAXサーバー一式が立ち上がってくるかどうか確認しましょう。

# reboot

 

これでFAXサーバーは完成です。お疲れ様でした。

 

送受信テスト

送受信のテストですが、受信に関しては電話機から設定した番号を鳴らしてみてFAX受信音が聞こえたら、おそらく問題ありません。無料FAX送信サービスである、MyFAX Free からでは050番号には送れない(番号桁数が足りない) ため、実際の受信テストは別のFAXや クロネコFAXサービス、またはVPS 2契約とFUSION IP-Phone SMARTを2番号用意し、それぞれで送受信テストをするという方法があるかと思います。

送信テストについては、同じく相手先環境を用意した上で、例えば

# sendfax -n -d FAX電話番号 送りたいファイル名

 

とすれば、ファイル内容をFAXとして送れます。cronやディレクトリ構成を工夫することで、自動でFAXを指定番号に送ることも可能でしょう(例えばディレクトリ名を電話番号として作成しておき、cronでそのディレクトリに追加されたデータを一定時間単位で送信するなど)。自分の場合は送信する回数があまり多くなかったので、sendfax コマンドは使わず、もっぱら MyFAX Free を使って送信していました。実際の業務等で使う場合は、日本語が文字化けしないかなど、テストを十分に行ってから使用してください。

 

さいごに

テキストエディタのカウントで1200行を越え、果たしてここまで読んでくださった方がどれだけいたかと書いてて不安になる内容となりました。とはいえ基本的にコピペで進めていけばFAXサーバーとして動くように書いたつもりなので、FAXサーバーが必要な方のお役に立てれば幸いです。

さて、自分なりに苦労して作成したこのFAXサーバーですが、初めに書いた老齢のクライアント様との取引が終わったこともあり、今となってはどこからの着信もない、無用の長物となってしまった、というオチに。どんな場合にもだいたいこういうオチがつく自分の人生に疑問を感じつつも、オチがない人生は物足りないと思うあたり、自分はドMなのだろうなーと思う今日この頃なのです。(どんな締めだよ)

スポンサードリンク

2 Responses to GMOクラウド VPSで、FUSION IP-Phone SMARTを使ってFAXサーバー構築

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

当サイトのコメント欄は承認制となっております。また、日本語が含まれない投稿は無視されますのでご注意ください。(スパム対策)

スポンサードリンク

Twitter
利用中のサービス

GUiLZ Project では、以下のサービスを利用しています。


関連サイト
巡回先サイト様
アーカイブ