Linux als SOHO-Server

für Linux- und Windows-Clients
http://linux.eusterholz.dyndns.org

Kapitel:

Home
Debian Installation
Debian Etc.
Internet-Zugang
Telnet
FTP
r-Utilities
SSH
Printing
NTP
Nameserver
NFS/NIS/Automount
Samba (SMB-Server)
Apache (WEB-Server)
Modem / ISDN
Backup
Etc.


Fax (Modem) HylaFAX

Dial-In (Modem) ] Dial-In (ISDN) ] CAPI ] Dial-Out/In (CAPI) ] CapiSuite ] [ Fax (Modem) HylaFAX ] Fax (ISDN) HylaFAX ]


Mittels eines Fax-Servers sollte es jedem Client im Netzwerk, mit entsprechender Software ermöglicht werden, Faxe zu senden und auch zu empfangen. In Folgenden wird eine Lösung unter Linux mit einem analogen-Modem mit dem Programm 'Hylafax' vorgestellt. 'Hylafax' ist ein frei verfügbares, leistungsfähiges und sehr zuverlässiges Fax-Softwarepaket für Unix. Es ermöglicht das Empfangen und Versenden von Faxen, sowie auch das Fax-Polling. Hylafax ist ein Client/Server-System.

In Folgenden wird der

Installation des Hylafax-Servers

Als vorbereitende Maßnahme sollte ein gängiges analoges Modem mit Fax-Unterstützung am Linux-System einsatzbereit sein. D.h., dass Modem sollte mit einen Kabel an eine freie serielle Schnittstelle des Linux-Systems angeschlossen und eingeschaltet sein. Weiterhin ist das Modem mit einem Telefonanschluss zu verbinden. Die korrekte Funktionalität kann z.B. mit dem Modem-Kommunikationsprogramm 'minicom' überprüft werden. Mittels 'minicom' lässt sich auch einfach feststellen, welche serielle Schnittstelle benutzt wird (z.B. '/dev/ttyS0'), und ob eine Amts-Vorwahl zu wählen ist.

Als nächstes ist das Paket 'hylafax' mittels 'apt-get' zu installieren, dabei sollte der Server- und Client-Anteil zu installieren:

apt-get install hylafax-server hylafax-client

Eventuelle sonstige Abhängigkeiten sollten automatisch aufgelöst werden.

Auf der Serverseite besteht Hylafax aus drei Daemonen:

  • 'faxq' - der Haupserver
  • 'hfaxd' - verwaltet die Netzwerkverbindungen
  • 'faxgetty' - verwaltet Dialoge mit Modem(s)

Auf der Clientseite findet man die folgenden Programme:

  • 'sendfax' - um Faxe zu senden
  • 'faxstat' - um die Warteschlange zu überprüfen
  • 'faxrm' - um Jobs aus der Warteschlange zu entfernen

Nach der erfolgreichen Installation kann das Setup-Programm von 'Hylafax' durch Eingabe von 'faxsetup' auf der Konsole, ausgeführt werden: Hierzu ein Ausschnitt während der Ausführung von 'faxsetup':

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]? ttyS0

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]? 49
Area code [415]? 5251
Phone number of fax modem [+1.999.555.1212]? +49.5251.123456
Local identification string (for TSI/CIG) ["NothingSetup"]?
Long distance dialing prefix [1]? 0
International dialing prefix [011]? 00
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 ttyS0 [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 [""]?

The non-default server configuration parameters are:

CountryCode: 49
AreaCode: 5251
FAXNumber: +49.5251.123456
LongDistancePrefix: 0
InternationalPrefix: 00
DialStringRules: etc/dialrules
SessionTracing: 11
RingsBeforeAnswer: 1
SpeakerVolume: off
GettyArgs: "-h %l dx_%s"
LocalIdentifier: "NothingSetup"
TagLineFont: etc/lutRS18.pcf
TagLineFormat: "From %%l|%c|Page %%P of %%T"
MaxRecvPages: 25

Are these ok [yes]?yes

Als erste relevante Frage ist die Schnittstelle zu benennen, an der das Fax-Modem angeschlossen ist, in diesem Beispiel ist das 'ttyS0'. Nach einer Erstkonfiguration sollte festgestellt werden, dass noch keine Konfigurationsdateien vorliegen, die Konfiguration des Modems wird gestartet daraufhin gestartet. Die meisten Parameter können zunächst auf ihrem vorgeschlagenen Wert belassen werden, lediglich die Angabe der Rufnummer. inklusive internationaler Vorwahl, sowie die Kennziffern für Ferngespräche, sind wichtig. Die eingegebenen Parameter werden anschließend in einer Zusammenfassung angezeigt, nach der Überprüfung, sollte die Konfiguration mit 'yes' bestätigt werden.

Danach wird automatisch die Funktion des Modems überprüft, auch hier können im Normalfall alle vorgeschlagenen Parameter bestätigt werden. Bei der Frage nach der Fax-Klasse sollte, falls man nicht sicher ist, die Klasse '1' ausgewählt werden, somit ist eine Kompatibilität zu allen anderen Fax-Geräten gegeben. Nach wieder einer Zusammenfassung der Parameter sind diese ebenfalls mit 'yes' zu bestätigen.
Nun wird die Frage gestellt, ob ein weiteres Modem mit 'faxaddmodem' konfiguriert werden soll. Hier sollte mit 'no' geantwortet werden. Ebenfalls kann die darauf folgende Frage, ob 'faxaddmodem' für jedes Modem verwendet werden soll, mit 'no' beantwortet werden.

Als nächstes ist dafür zu sorgen, dass 'faxgetty', welches für die ständige Überwachung des Modems zuständig ist, gestartet wird. Dazu ist in der Datei '/etc/inittab' folgende Zeile einzufügen:

Auszug aus: /etc/inittab

...
# fax getty (hylafax)
mo:23:respawn:/usr/sbin/faxgetty /dev/ttyS0
...

Das Format der einzufügenden Zeile ist auf der Manualseite zu 'inittab' detailliert beschrieben. Wichtig ist hier, dass auf die serielle Schnittstelle, an der sich das Modem befindet, verwiesen wir. Nachdem die Zeile eingetragen ist, muss der 'init'-Prozess neu eingelesen werden. Dieses sollte mit dem Kommandoaufruf : 'init q' erfolgen.

Nach dem Aufruf von '/etc/init.d/hylafax restart' oder eines kompletten Reboot des Systems sollte das Fax-System nun einsatzbereit sein.

Test und Benutzung des Fax-Servers

Ein erster Test des Fax-Servers kann mit dem Kommando 'faxstat' auf der Konsole erfolgen; hierzu eine Beispielausgabe:

experimental:~# faxstat
Password:
HylaFAX scheduler on localhost.localdomain: Running
Modem ttyS0 (+49.5251.123456): Running and idle
experimental:~#

Nach der Eingabe des Passworts sollte der aktuelle Status ausgegeben werden; im obigen Beispiel wird der Ruhezustand angezeigt.

Ein weiterer Test kann durch Anrufen mit einen Telefon erfolgen, nach dem Abheben des Fax-Servers sollten Fax-typische Geräusch zu hören sein. Ob der Empfang für den Fax-Server korrekt funktioniert, kann mit einer echten Fax-Gegenstation erfolgen, eingehende Faxe sollten im 'tiff'-Format im Verzeichnis '/var/spool/hylafax/recvq' zu finden sein.

Das Senden des Fax-Servers kann mit dem Kommando 'sendfax' auf der Konsole geprüft werden, z.B. sendet das Kommando:

sendfax -n -d 8719917 fax_test.txt

die Text-datei 'fax_test.txt' an die Fax-Nr.: '8719917'. Die Option '-n' unterdrückt in diesem Beispiel das Senden eines Deckblattes. Die einzelnen Optionen zu 'faxsend' können auf der entsprechenden Manualseite nachgelesen werden.

Anmerkungen

Auf der Homepage von 'HylaFAX' können weitere wichtige Informationen bezüglich des Client/Server-System nachgelesen werden. Hier sind auch weitere Verweise bezüglich diverser Client-Applikationen mit denen 'HylaFAX' zusammenarbeiten kann gefunden werden.

Bei Problemen mit dem 'HylaFAX'-Server sollten zunächst die Log-Dateien analysiert werden.

Weitere Infos

Homepage: HylaFAX http://www.hylafax.org
Links zu HylaFAX Client-Lösungen http://www.hylafax.org/links.html
Manualseiten zu: HylaFAX man hylafax
System-Dokumentation: HylaFAX /usr/share/doc/hylafax-client; /usr/share/doc/hylafax-client

Home ] Nach oben ] Dial-In (Modem) ] Dial-In (ISDN) ] CAPI ] Dial-Out/In (CAPI) ] CapiSuite ] [ Fax (Modem) HylaFAX ] Fax (ISDN) HylaFAX ]

letzte Änderung: 12. November 2006

 

Copyright © 2004 Norbert Eusterholz