Ubuntutorial

howtutorials linux

Fax server (Hylafax) lengkap dengan Avantfax di Ubuntu

Posted by geekubuntu on April 14, 2009

Technorati Tags: , ,

Panduan Setup

Fax server (Hylafax) lengkap dengan Avantfax di Ubuntu

Sebenarnya mengapa sih repot-repot membuat faxserver?

Selama ini kita mengenal mesin fax untuk mengirim dan menerima fax. Tergantung merek dan tipenya, harga mesin fax dapat mencapai jutaan rupiah.

Ada beberapa kendala bila menggunakan mesin fax konvensional:

  1. Mesin harus rutin di maintenance agar dapat dioperasikan dengan lancar (kertas tidak macet, hasil fax tetap jelas, dll).

  2. Dokumen harus di print dahulu bila ingin di fax, dan seringkali kiriman fax tersebut kurang bagus.

  3. Hasil fax harus difoto-kopi dahulu bila ingin disimpan lama, sebab hasil fax akan pudar bila terlalu lama disimpan.

  4. Perlu usaha khusus untuk mengarsip fax-fax yang dikirim dan masuk.

  5. Perlu personel khusus untuk mendistribusikan fax-fax yang masuk.

Oleh karenanya, kini banyak perusahan yang telah menerapkan solusi FaxServer, karena memberikan keunggulan-keunggulan berikut ini:

  1. Tidak perlu maintenance khusus, karena menggunakan sebuah PC sebagai servernya.

  2. Dokumen dapat langsung di fax ke tujuan tanpa harus di print dahulu. Hemat kertas, tinta, dan fax terkirim dengan kualitas seperti pada di layar komputer.

  3. Fax yang masuk disimpan dalam bentuk file PDF di komputer, sehingga terjamin.

  4. Fax terkirim/diterima langsung tersimpan dalam folder-folder khusus dalam bentuk file PDF.

  5. Fax yang masuk dapat secara otomatis dikirim melalui email.

Feature-feature Faxserver ini:

  1. Murni menggunakan software OpenSource.

  2. Cukup menggunakan PC dan fax modem external biasa.

  3. Multi user.

  4. Dapat mengunakan web based fax client ataupun windows client.

  5. Konfirmasi send/receive fax lewat email.

Hal-hal yang diperlukan:

  1. PC/Notebook yang telah terinstall Ubuntu 7.10

  2. Modem External

  3. Mesin Fax untuk testing

  4. Koneksi internet / DVD Repo Ubuntu

  5. Semangat tinggi untuk belajar dan mencoba 🙂

Secara garis besar, langkah-langkahnya adalah:

  1. Install Ubuntu

  2. Pasang Modem

  3. Install dan setup Hylafax

  4. Install paket-paket Ubuntu yang dibutuhkan

  5. Install dan setup Avantfax

  6. Testing kirim/terima fax

Baiklah kita mulai, install Ubuntu seperti biasa. Pasang modem ke PC, sambungkan ke line telpon dan hidupkan.

Selanjutnya kita mulai install-install. Bisa menggunakan synaptic ataupun apt-get dari console, terserah sesuai kebiasaan kita. Di dalam panduan ini dicantumkan menggunakan apt-get.

A. Install dan Setup Hylafax

A1. Kita install Postfix dulu. Mengapa? Sebab kalau tidak hylafax akan menginstall pula

Exim mailserver, kalau kita familiar sih tidak apa-apa.

# apt-get install postfix

Setup saja postfix seperti biasa/default. Secara default postfix sudah dapat mengirim

email.

A2. Install hylafax:

# apt-get install hylafax-server

A3. Setup hylafax. Pertanyaan-pertanyaan sebagian besar dapat menggunakan nilai

default saja (tekan enter saja), kecuali yang berkaitan dengan nomor telpon dan device

modem. Modem kita biasanya akan terdeteksi sebagai /dev/ttyS0 (serial pertama)

# faxsetup

Setup program for HylaFAX ™ 4.4.0.

Created for i686-pc-linux-gnu on Thu Aug 16 15:51:25 GMT 2007.

Reading cached parameters from /var/spool/hylafax/etc/setup.cache.

Found base64 encoder: /usr/bin/mimencode

Found Quoted-Printable encoder: /usr/bin/mimencode -q

Found mimencode for compatibilty: /usr/bin/mimencode

Checking system for proper server configuration.

Warning: /etc/hylafax/getty-link does not exist or is not an executable program!

The file:

/etc/hylafax/getty-link

does not exist or this file is not an executable program. The

HylaFAX software optionally uses this program and the fact that

it does not exist on the system is not a fatal error. If the

program resides in a different location and you do not want to

install a symbolic link for /etc/hylafax/getty-link that points to your program

then you must reconfigure and rebuild HylaFAX from source code.

Warning: /etc/hylafax/vgetty-link does not exist or is not an executable program!

The file:

/etc/hylafax/vgetty-link

does not exist or this file is not an executable program. The

HylaFAX software optionally uses this program and the fact that

it does not exist on the system is not a fatal error. If the

program resides in a different location and you do not want to

install a symbolic link for /etc/hylafax/vgetty-link that points to your program

then you must reconfigure and rebuild HylaFAX from source code.

Warning: /etc/hylafax/egetty-link does not exist or is not an executable program!

The file:

/etc/hylafax/egetty-link

does not exist or this file is not an executable program. The

HylaFAX software optionally uses this program and the fact that

it does not exist on the system is not a fatal error. If the

program resides in a different location and you do not want to

install a symbolic link for /etc/hylafax/egetty-link that points to your program

then you must reconfigure and rebuild HylaFAX from source code.

Make /var/spool/hylafax/bin/ps2fax a link to /var/spool/hylafax/bin/ps2fax.gs.

Make /var/spool/hylafax/bin/pdf2fax a link to /var/spool/hylafax/bin/pdf2fax.gs.

Update /var/spool/hylafax/status/any.info.

HylaFAX configuration parameters are:

[1] Init script starts faxq: yes

[2] Init script starts hfaxd yes

[3] Start old protocol: no

[4] Start paging protocol: no

Are these ok [yes]?

Modem support functions written to /var/spool/hylafax/etc/setup.modem.

Configuration parameters written to /var/spool/hylafax/etc/setup.cache.

Restarting HylaFAX server processes.

Should I restart the HylaFAX server processes [yes]?

/etc/init.d/hylafax start

Not starting HylaFAX daemons since they are already running.

You do not appear to have any modems configured for use. Modems are

configured for use with HylaFAX with the faxaddmodem(8) command.

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

Serial port that modem is connected to [ttyS0]?

Hmm, there does not appear to be an fuser command on your machine.

This means that I am unable to ensure that all processes using the

modem have been killed. I will keep going, but beware that you may

have competition for the modem.

Ok, time to setup a configuration file for the modem. The manual

page config(5) may be useful during this process. Also be aware

that at any time you can safely interrupt this procedure.

Reading scheduler config file /var/spool/hylafax/etc/config.

No existing configuration, let’s do this from scratch.

Country code [1]?

Area code [415]? 021

Phone number of fax modem [+1.999.555.1212]? 5551234

Local identification string (for TSI/CIG) [“NothingSetup”]? UbuntuFax

Long distance dialing prefix [1]?

International dialing prefix [011]?

Dial string rules file (relative to /var/spool/hylafax) [etc/dialrules]?

Tracing during normal server operation [1]?

Tracing during send and receive sessions [11]?

Protection mode for received facsimile [0600]?

Protection mode for session logs [0600]?

Protection mode for ttyx0 [0600]?

Rings to wait before answering [1]?

Modem speaker volume [off]?

Command line arguments to getty program [“-h %l dx_%s”]?

Pathname of TSI access control list file (relative to /var/spool/hylafax) [“”]?

Pathname of Caller-ID access control list file (relative to /var/spool/hylafax) [“”]?

Tag line font file (relative to /var/spool/hylafax) [etc/lutRS18.pcf]?

Tag line format string [“From %%l|%c|Page %%P of %%T”]?

Time before purging a stale UUCP lock file (secs) [30]?

Hold UUCP lockfile during inbound data calls [Yes]?

Hold UUCP lockfile during inbound voice calls [Yes]?

Percent good lines to accept during copy quality checking [95]?

Max consecutive bad lines to accept during copy quality checking [5]?

Max number of pages to accept in a received facsimile [25]?

Syslog facility name for ServerTracing messages [daemon]?

Set UID to 0 to manipulate CLOCAL [“”]?

Use available priority job scheduling mechanism [“”]?

Your facsimile phone number (5551234) does not agree with your

country code (1) or area code (021). The number

should be a fully qualified international dialing number of the form:

+1 021 <local phone number>

Spaces, hyphens, and periods can be included for legibility. For example,

+1.021.555.1212

is a possible phone number (using your country and area codes).

The non-default server configuration parameters are:

CountryCode: 1

AreaCode: 021

FAXNumber: 5551234

LongDistancePrefix: 1

InternationalPrefix: 011

DialStringRules: etc/dialrules

SessionTracing: 11

RingsBeforeAnswer: 1

SpeakerVolume: off

GettyArgs: “-h %l dx_%s”

LocalIdentifier: UbuntuFax

TagLineFont: etc/lutRS18.pcf

TagLineFormat: “From %%l|%c|Page %%P of %%T”

MaxRecvPages: 25

Are these ok [yes]?

Now we are going to probe the tty port to figure out the type of modem that is attached. This takes a few seconds, so be patient.

Note that if you do not have the modem cabled to the port, or the modem is turned off, this may hang (just go and cable up the modem or turn it on, or whatever).

Probing for best speed to talk to modem: 38400 OK.

About fax classes:

The difference between fax classes has to do with how HylaFAX interacts with the modem and the fax protocol features that are used when sending or receiving faxes. One class isn’t inherently better than another;

however, one probably will suit a user’s needs better than others.

Class 1 relies on HylaFAX to perform the bulk of the fax protocol.

Class 2 relies on the modem to perform the bulk of the fax protocol.

Class 2.0 is similar to Class 2 but may include more features.

Class 1.0 is similar to Class 1 but may add V.34-fax capability.

Class 2.1 is similar to Class 2.0 but adds V.34-fax capability.

HylaFAX generally will have more features when using Class 1/1.0 than when using most modems’ Class 2 or Class 2.0 implementations. Generally any problems encountered in Class 1/1.0 can be resolved by modifications to HylaFAX, but usually any problems encountered in Class 2/2.0/2.1 will

require the modem manufacturer to resolve it.

Use Class 1 unless you have a good reason not to.

Hmm, this looks like a Class 1 modem.

Product code (ATI0) is “T38FAX”.

Other information (ATI3) is “Vyacheslav Frolov”.

DTE-DCE flow control scheme [default]?

Modem manufacturer is “Vyacheslav Frolov”.

Modem model is “t38modem”.

Using prototype configuration file t38modem…

The modem configuration parameters are:

ModemFlowControl: rtscts

ModemRevQueryCmd: AT+FREV?

Are these ok [yes]?

Creating new configuration file /var/spool/hylafax/etc/config.ttyS0…

Creating fifo /var/spool/hylafax/FIFO.ttyS0 for faxgetty… done.

Done setting up the modem configuration.

Checking /var/spool/hylafax/etc/config for consistency…

…some parameters are different.

The non-default scheduler parameters are:

CountryCode: 1

AreaCode: 021

LongDistancePrefix: 1

InternationalPrefix: 011

DialStringRules: etc/dialrules

Are these ok [yes]?

Creating new configuration file /var/spool/hylafax/etc/config…

…saving current file as /var/spool/hylafax/etc/config.sav.

Don’t forget to restart hylafax in order to run faxgetty on this new modem line.

Updating /etc/hylafax/config from /var/spool/hylafax/etc/config.

Creating /etc/hylafax/config.sav from /var/spool/hylafax/etc/config.sav.

Creating /etc/hylafax/config.ttyS0 from /var/spool/hylafax/etc/config.ttyS0.

Updating /etc/hylafax/setup.cache from /var/spool/hylafax/etc/setup.cache.

Updating /etc/hylafax/setup.modem from /var/spool/hylafax/etc/setup.modem.

/var/spool/hylafax/config

A4. Cek modem sudah terdetect oleh hylafax:

# /etc/init.d/hylafax restart

* Stopping HylaFAX faxq [ OK ]

* Starting HylaFAX faxq [ OK ]

# faxstat -a -s

HylaFAX scheduler on voyager2: Running

Modem ttyS0 (5551234): Running and idle

Modem ttyS1 (5554321): Running and idle

A5. Create Admin dan User. Hal ini diperlukan bila nanti kita akan menggunakan

program fax dari network yang memerlukan login.

# faxadduser -a 123456 -p 123456 -u 100 admin (123456 adalah passwordnya)

# faxadduser -u 101 userfax

B. Install dan Setup Paket-paket yang dibutuhkan

Cukup banyak paket-paket yang dibutuhkan dan ada beberapa paket yang memerlukan setup lebih lanjut.

B1.

# apt-get install apache2 apache2-mpm-prefork apache2-utils apache2.2-

common libapache2-mod-php5 libmagic-dev php5-gd php5-cli php5-mysql php5-

common php-pear php5 php5-dev php-soap mysql-server imagemagick libtiff4

libtiff4-dev netpbm libungif4g a2ps

Ketika ditanya, berikan password untuk user root mysql.

B2.

# pear install MDB2 mail mail_mime

B3.

# pear install pear/MDB2#MySQL

B4.

# pecl install fileinfo

B5. Restart Apache:

# /etc/init.d/apache2 restart

C. Install dan Setup Avantfax

C1. Download paket Avantfax terbaru dari http://www.avantfax.com

C2. Extract filenya dan setup:

# tar zxf avantfax-3.0.2.tgz

# cd avantfax-3.0.3

# mv avantfax /var/www/

C3. Edit file setup.sh dan sesuaikan dengan kondisi Ubuntu kita:

– Ubah baris chown apache.apache menjadi chown www-data.www-data

C4. Jalankan file setup.sh tersebut:

# ./setup.sh

Creating AvantFAX database

Enter MySQL root password: (if none, press ENTER)

Enter password:

Tables_in_avantfax

AddressBook

AddressBookEmail

AddressBookFAX

DIDRoute

DistroList

FaxArchive

FaxCategory

Modems

SysLog

UserAccount

UserPasswords

Pastikan tidak ada error. Bila ada, betulkan dan jalankan kembali.

C5. Masukkan cronjob ini ke crontab root:

# crontab -e

# runs once an hour to update the phone book

0 * * * * /var/www/avantfax/includes/phb.php

# runs once a day to remove old files

0 0 * * * /var/www/avantfax/includes/remold.php

C6. Setup Avantfax lewat Web interface. Hidupkan web browser dan buka http://localhost/avantfax/admin

Kita akan melihat layar login (username standard: admin, passwordnya: password):

Pada pertama kali login ini kita akan diminta untuk segera mengganti password admin:

Setelah login, lihat admin pertama kita tidak memiliki info apapun, oleh karena itu segeralah kita membuat user baru dengan mengklik menu New User. Berikan ia hak-hak administrasi. Tuliskan

pula email accountnya ke user linux.

Selanjutnya yang juga penting dan wajib adalah mensetup modem di Avantfax. Klik menu Configure Modems.

Bila modem kita adalah /dev/ttyS0, maka cukup dituliskan ttyS0. Alias modem pilih identifikasi terserah kita saja, misalnya: modem1. Contact dikosongkan saja dulu.

Bila sudah tersetel user dan modem, maka kita sudah bisa login dari layar depan Avantfax, yaitu: http://localhost/avantfax

Selanjutnya silahkan dicoba kirim/terima fax. Bila sudah ada fax masuk, maka di Inbox Avantfax kita akan terlihat adanya fax masuk.

D. Troubleshooting

Kita dapat memonitor proses kirim/terima fax dari /var/log/syslog. Dengan demikian kita bisa mengetahui apa kesalahan apa, misalnya busy tone, dll.

Seperti di bawah ini bila kita mengirim fax, akan terlihat:

D1.

# tail -f /var/log/syslog

Jan 16 11:14:53 voyager2 FaxSend[4467]: MODEM VYACHESLAV FROLOV T38FAX/0.8.0

Jan 16 11:14:54 voyager2 FaxSend[4467]: SEND FAX: JOB 10 DEST 0123 COMMID 000000032 DEVICE ‘/dev/ttyx0’

FROM ‘root <root@localhost>’ USER admin

Jan 16 11:15:03 voyager2 FaxGetty[15482]: ANSWER: FAX CONNECTION DEVICE ‘/dev/ttyx1’

Jan 16 11:15:17 voyager2 FaxGetty[4532]: RECV FAX (000000033): from UbuntuFax, page 1 in 0:14, INF,

3.85 line/mm, 2-D MMR, 14400 bit/s

Jan 16 11:15:18 voyager2 FaxSend[4467]: SEND FAX: JOB 10 SENT in 0:12

Jan 16 11:15:32 voyager2 FaxGetty[4562]: RECV FAX (000000033): from UbuntuFax, page 2 in 0:13, INF,

3.85 line/mm, 2-D MMR, 14400 bit/s

Jan 16 11:15:32 voyager2 FaxGetty[4563]: RECV FAX (000000033): recvq/fax000000008.tif from UbuntuFax,

route to <unspecified>, 2 pages in 0:29

Jan 16 11:15:32 voyager2 FaxSend[4467]: SEND FAX: JOB 10 SENT in 0:13

Jan 16 11:15:34 voyager2 FaxGetty[15482]: RECV FAX: bin/faxrcvd.php “recvq/fax000000008.tif” “ttyx1”

“000000033” “”

Setiap hari Avantfax juga akan mengirimkan summary penggunaan fax server kita ke email seperti ini:

From root@www.suse.com Thu Mar 29 18:38:12 2007

Date: Thu, 29 Mar 2007 18:38:11 +0700

From: root <root@www.suse.com>

To: faxmaster@www.suse.com

Subject: HylaFAX Usage Report

Facsimile transmitted since :

Sender Pages Time Pg/min Errs TypRate TypData

fajar@fax.example.com (fajar) 1 0:29 2.1 0 9600 2-D MR

—————————————————————————

Total 1 0:29 2.1 0

Facsimile transmitted since last week:

Sender Pages Time Pg/min Errs TypRate TypData

fajar@fax.example.com (fajar) 1 0:29 2.1 0 9600 2-D MR

—————————————————————————

Total 1 0:29 2.1 0

Facsimile received since :

Sender CIDName CIDNumber Pages Time Pg/min Errs TypRate TypData

0218309747 6 4:39 1.3 0 9600 2-D MR

——————————————————————————————

Total 6 4:39 1.3 0

Facsimile received since last week:

Sender CIDName CIDNumber Pages Time Pg/min Errs TypRate TypData

0218309747 6 4:39 1.3 0 9600 2-D MR

——————————————————————————————

Total 6 4:39 1.3 0

Report failed calls and associated session logs:

Nothing to purge in info directory.

Truncate merged session logs older than 730 days:

Nothing to purge in receive queue.

Nothing to purge in the tmp directory.

D2. Kemana lagi bila masih mengalami kesulitan? Yang paling tepat adalah dengan mengikuti mailing list hylafax di http://www.hylafax.org

di sunting dari :

=========================================================

Fajar Priyanto | Reg’d Linux User #327841 | Linux tutorial http://linux2.arinet.org

14:52:43 up 7:10, 2.6.22-14-generic GNU/Linux

Let’s use OpenOffice. http://www.openoffice.org

Advertisements

3 Responses to “Fax server (Hylafax) lengkap dengan Avantfax di Ubuntu”

  1. nice post…

  2. Thorn said

    Success is the ability to go from one failure to another with no loss of enthusiasm.

  3. ical said

    nice post nih..
    kalo pake modem gsm bisa ga y? konfigurasinya sama tidak?

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

 
%d bloggers like this: