Hylafax Installation und Einrichtung


In folgender Dokumentation beschreibe ich die Installation und Einrichtung eines Hylafax-Servers. Auf der Clientseite verwende ich die Windows-Software Cypheus. Verwendet habe ich SuSE 7.2 mit der aktuellen Version von HylaFAX von den HylaFAX Seiten.


Die Software kann unter www.hylafax.org und unter www.cypheus.de beschafft werden. Informationen zu beiden Programmen sind hier auch zahlreiche zu erhalten.

Vorausgesetzt wird eine SuSE Linuxinstallation mit funktionierender Netzwerkanbindung.


Zusätzlich müssen folgende Programme nachinstalliert werden.



hilfreich ist noch webmin zur Administration der Mysql Datenbank


Mysql starten mit /etc/init.d/mysql start, Um die Datei automatisch zu starten in /etc/rc.config den Eintrag „STARTMYSQL = „yes“ ändern.


Danach System neu starten, Startmeldungen beobachten und die /var/log/messages kontrollieren.


Modem einrichten


Hylafax


Hylafax ermöglicht das Empfangen und Versenden von Faxen sowie das Fax-Pooling. Hylafax ist ein Client/Server-System. Es ist aber auch möglich Client und Server auf einem Rechner zu verwenden. Im Netzwerk wird es wie ein Drucker verwendet, die Faxe werden in einer Warteschlage automatisch verwaltet. Von einem Hylafaxserver können mehrere Modems verwendet werden.


Die Funktionsweise von HylaFAX


HylaFAX besteht aus mehreren Programmen:


hfaxd ist der Protokoll-Server für die Kommunikation zwischen Server und Client.


faxq ist das Programm, das für die Verwaltung der zu sendenden Jobs zuständig ist und die Faxe zum Versand vorbereitet


faxgetty, pro Modem wird ein Prozess gestartet. Es informiert faxq über den Status des Modems, z. B. Wenn das Modem gerade ein Fax sendet.


Die Kommunikation zu den Clients über hfaxd erfolgt im Netzwerk über die Ports 4559 und 4557. 4559 ist für das aktuelle Protokoll zuständig, 4557 ist die Portadresse des alten Protokolls. Es existiert noch für ältere Clients aus Kompatibilitätsgründen.



Client


HylaFAX Clients sind für Linux, Macintosh und Windows verfügbar. Die Kommunikation erfolgt über das TCP/IP Netzwerk.


Von mir wurde bisher nur Cypheus auf der Clientseite eingesetzt.



Installation und Grundkonfiguration


Installation der Software

Die Installation von HylaFax ist am einfachstem mit dem hylafax.rpm Packet auf der Suse CD.

Alternativ kann man sich die neuste Version von den Hylafaxseiten besorgen.


Nachdem die Software installiert wurde, muß in der Konfigurationsdatei der Eintrag für den Hylafaxstart auskommentiert werden.


Die Einrichtung von Hylafax erfolgt durch den Aufruf von faxsetup.


Einrichtung des Modems


Zuerst sollte klar sein an welchem COM-Port das Modem angeschlossen ist. Hierzu kann minicom verwendet werden. Mit dem Aufruf von minicom -s kann das Programm konfiguriert werden. Zunächst unter serial port setup das Serial Device einstellen, also /dev/ttyS0 für COM 1, /dev/ttyS1 für COM 2, dann den Punkt Exit auswählen. Jetzt sollte es möglich sein Kommandos an das Modem zu senden, z. B. AT. Das modem sollte mit OK antworten. Wenn nicht, sollte die nächste Schnittstelle getestet werden.


Hat man die entsprechende Schnittstelle gefunden, legt man am besten einen Link auf die entsprechende Gerätedatei mit folgenden Komandos:


root@erde:/# cd /dev

root@erde:/# ln -s /dev/ttys0 modem (ttyS0 für COM1, ttyS1 für COM2)


Auf diese Weise kann in der Hylafax Konfiguration der Link /dev/modem verwendet werden.


Anschließend muß noch die Datei /etc/rc.config editiert werden, da sonst die Einstellungen beim nächsten Neustart verworfen würden.


Konfiguration des Servers mit faxsetup


Nachdem nun alle Vorbereitungen abgeschlossen sind, kann die eigentliche Konfiguration des Fax-Servers beginnen. Diese Arbeit wird von dem Skript faxsetup ausgeführt, das als Superuser root gestartet werden muß. Es folgen eine Reihe von Fragen, die vom Nutzer entsprechend beantwortet werden müssen.


HylaFAX kann erst funktionieren, wenn faxsetup erfolgreich ausgeführt wurde!


Neben der eigentlichen Konfiguration überprüft das Skript auch eine Reihe zusätzlicher Eigenschaften, wie z. B. Das Vorhandensein der TIFF-Werkzeuge, die zum Betrieb des Fax-Servers notwendig sind. In der unten stehenden Konfiguration wird der Fax-Server sowohl für eingehende wie auch für ausgehende Fax-Kommunikation konfiguriert, d. h., später muß faxgetty gestartet werden. Alternativ kann auch am Ende der Konfiguration das Skript faxmodem gestartet werden, wodurch auf faxgetty verzichtet werden kann, jedoch kein Fax-Empfang möglich ist! Folgendes Protokoll zeigt den Ablauf und die Eingaben für die Konfiguration mit Hilfe des faxsetup-Scripts.


Hier eine Beispielkonfiguration in dem die Eingaben zusammengefasst sind:


The non-default scheduler parameters are:


CountryCode: 49
AreaCode: 261
LongDistancePrefix: 0
InternationaPrfix: 00
ServerTracing: 527
ContCoverPage: etc/cover.tmpl
MaxSendPages: 30
SessionTracing: 527

The non-default server configuration parameters are:


CountryCode: 49
AreaCode: 261
FaxNumber: +49.261.12345
LongDistancePrefix: 0
InternationPrefix: 00
DialStringRules: etc/dialrules
ServerTracing: 527
SessionTracing: 527
RecvFileMode: 0644
DeviceMode: 0644
RingsBeforeAnswer: 1
Speaker#Volume: off
GettyArgs: „-r -b -s %s %1“
LocalIdentifier: „Fax GmbH“
TagLineFont: etc/lutRS18.pcf
TagLineFormat: „From %%1/%c/Page %%p of %%t“
MaxRecvPages: 25


Tehe modem configration parameters are:


Class1Cmd: AT+FCLASS=1
Class1FrameOverhead: 4
Calss1RecvAbortOK: 200
Class1RecvIdentTimer: 40000
Class1SendPPMDelay: 75
Class1SendTCFDelay: 75
Class1TCFMaxNonZero: 10
Class1TCFMinRun: 1000
Class1TCFResponseDelay: 75
Class1TrainingRecovery: 1500


The non-default scheduler parameters are:


CountryCode: 49
AreaCode: 261
LongDistancePrefix: 0
InternationalPrefix: 00
DialStringRules: etc/dialrules
ServerTracing: 527
ContCoverPage: etc/cover.tmp1
MaxSendPages: 30
ModemClass: „“
SessionTracing: 527


Die gespeicherten Eingaben werden im Verzeichniss /var/spool/fax/etc in der entsprechenden Konfigurationsdatei gespeichert.


Die HylaFAX Konfigurationsdateien


Dateiname Konfiguriert Beschreibung

config Server Konfigurationsdatei für faxq

config.device Server device steht für die Gerätedatei, modem, ttyx

hyla.conf Client Die systemweite Konfigurationsdatei (normalerweise unetr /usr/lib/fax) Konfiguration der HylaFAX Clients

.hylarc Client Liegt normalerweise im Benutzerverzeichnis, kann die gleichen Einstellungen wie die Datei hyla.conf erhalten. Befinden sich unterschiedlichen angaben in den Dateien so überschreibt sie die Angaben in der hyla.conf


Neustart des Hylafax Prozess


mit /etc/init.d/# ./hylafax stop

./hylafax start


Kontrolle mit:

ps auxw|grep fax


Ausgabe :

uucp ......................................... /usr/sbin/faxq

uucp ......................................... /usr/lib/fax/hfaxd -i

hylafax -o 4557 -s 444


Hylafax wird normalerweise mit dem faxgetty betrieben, da es nur so möglich ist Faxe zu senden und zu empfangen. Damit Faxgetty automatisch gestartet wird, sollte ein entsprechender Eintrag in der Datei

/etc/inittab


fa:23:respawn:/usr/lib/fax/faxgetty /dev/modem gemacht werden.


Bei Suse ist der Eintrag vorhanden und muß auskommentiert werden.


Erfolgskontrolle



mit faxstat


die Ausgabe sollte so oder Ähnlich aussehen: HylaFAX scheduler on .... :Running
Modem modem (+49.261.12345): Running and idle

Faxen über ISDN


Als das Medium Fax entwickelt wurde, war das Telefonnetz noch analog ausgerichtet. Aus dieser Situation heraus wurden Modems entwickelt, die die digitalen Bilddaten, die versendet werden sollten in Töne umwandelten. Dies wurde mit spezieller Hardware erreicht, die in der Lage war, das sehr zeitkritische Faxprotokoll zu verarbeiten.


Durch die Entwicklung von ISDN wurde das Telefonnetz digital, wodurch – theoretisch - Modems zur Übertragung digitaler Daten nicht mehr benötigt werden. Eine Seite wird vom einem Scanner digitalisiert und kann direkt über das Telefonnetz an eine entsprechende Gegenstelle versendet werden.


Nach diesem Prinzip arbeiten Fax Geräte der Gruppe 4, die jedoch nicht kompatibel zu den verbreiteten (analogen) Fax-Geräten der Gruppe 3 sind. Ein Gerät der Gruppe 4 kann nur mit einem Gerät der Gruppe 4 kommunizieren analog zu Gruppe 3.


Um ISDN-Nutzern die Möglichkeit zu geben, ohne ein Modem Faxe (der verbreiteten Gruppe 3) zu versenden und zu empfangen, wurde daher Software entwickelt, die die Funktion des Modems emuliert. Die Schwierigkeit dieser Aufgabe liegt darin, daß diese Aufgabe sehr zeitkritisch ist und einen entsprechend leistungsfähigen Rechner voraussetzt. Die Software muß in der Lage sein, innerhalb weniger Millisekunden auf Nachrichten des anderen Faxgerätes zu reagieren. Der Fax Prozeß kann nicht selbst bestimmen, wann er rechnen darf und wann er warten muß, um wieder die CPU nutzen zu können. Diese Entscheidung wird vom Linux-Scheduler getroffen, der den Prozessen Rechenzeit in der CPU zuteilt. Dies kann dazu führen, das der Prozess mitten in der Bearbeitung einer zeitkritschen Fax-Protokolloperation unterbrochen wird.


Einen Ausweg bietet die Verlagerung der Software, die zur Simulation des Fax Protokolls dient, auf die ISDN-Karte selbst. Das wird bei aktiven ISDN-Karten gemacht, die aber wesentlich teurer sind als passive.


Für die Fritz-Karte gibt es Software zum faxen mit einer passiven ISDN Karte unter ftp://ftp.avm.de

Faxen mit der AVM B1


Für das Faxen mit der AVM B1 gibt es grundsätzlich zwei Möglichkeiten: zum Einen die Verwendung einer speziell angepassten Version von Hylafax, die auf dem FTP-Server der SuSE GmbH im Verzeinis / /pub/projects/b1tools zu finden ist, oder die Verwendung von capifax oder capifaxrcvd.


Mir war der Aufwand aber zu groß. Deswegen habe ich alle Systeme mit einem Modem ausgestattet


Nachdem alle Programme installiert sind, kann mit der Einrichtung begonnen werden.