Capisuite als Faxserver

Aus Linupedia
Wechseln zu: Navigation, Suche

Autoren: Huby Markus Görres

CAPISUITE ist ein Werkzeug, um unter Linux einen Faxserver und einen Anrufbeantworter über die CAPI-Schnittstelle via ISDN einfach einzurichten. Im Gegensatz zum bekannten Hylafax ist CAPISUITE zwar kein Universalwerkzeug, aber für den Einsatz im Privatbereich bzw. Kleinbüro ausreichend und dafür wesentlich einfacher einzurichten.
Die Einrichtung sowohl der Standardfunktionalität als auch einiger Besonderheiten wird weiter unten beschrieben.
Dieses HOWTO deckt sicher nicht alle Fälle ab, bietet aber eine grundlegende Hilfstellung, um damit und mit den angegebenen Literaturquellen ein funktionierendes System zu realisieren und für eigene Bedürfnisse anzupassen.
Über die normale Funktionalität hinaus fehlten mir einige Kleinigkeiten, um CAPISUITE alltagstauglich und das altertümliche Papierfax obsolet zu machen:


Ziel -> Die von Suse mitgelieferte Capisuite netzwerkfähig machen, so daß wir von jedem Rechner im Netz Faxe versenden können (auch Serienfaxe) und über eingehende Faxe informiert werden.

Dies erreichen wir mit folgenden Schritten:

Capisuite mit Yast installieren

Das denke ich mal müßte für jeden hinzukriegen sein.

Faxgate installieren

Prüfen ob Capisuite schon läuft:

root:/ # rccapisuite status


Wenn ein „running“ kommt mit

root:/ # rccapisuite stop

anhalten.

Download von Faxgate: http://home.arcor.de/ingo.goeppert/faxgate/server/capisuite-0.5.cvs.bin.tar.gz

Alt+F2 -> kdesu konqueror -> root passwort eingeben -> rechter Mausklick auf capisuite-0.5.cvs.bin.tar.gz -> Entpacken -> Entpacken nach: „/“ -> OK

Warnmeldung: „Fehler beim Entpacken“ -> Fortsetzen (schon existierende Dateien werden nicht überschrieben)

Der Ordner

/usr/lib/python2.2

kann wieder gelöscht werden, da in Suse10 schon ein aktuellerer /usr/lib/python2.4 verwendet wird.

Jetzt Capisuite mit Yast nochmal neu installieren!

In /etc/faxgate/faxgate.conf bei FAXMASTERIP die IP des Hosts angeben, an der sich root anmeldet.

Jetzt müssen wir Cups neustarten mit:

root:/ # rccups restart


Mit folgendem Befehl wird der Netzwerkdrucker Faxgate in cups angelegt.

root:/ # lpadmin -p Faxgate -v faxgate://capisuite -m Faxgate.ppd.gz -E

Konfiguration von sudo anpassen

Konfiguration von sudo gemäß Punkt 8 der folgenden Seite anpassen. (gilt auch für Suse10) http://home.arcor.de/ingo.goeppert/faxgate/inst.shtml

Bei suse10.2 sind zusätzlich folgende Einstellungen erforderlich. (gilt möglicherweise auch für suse10.1)

In /etc/sudoers, etwa bei Zeile 35 folgende 2 Zeilen auskommentieren:

  # Defaults targetpw    # ask for the password of the target user i.e. root 
  # ALL ALL=(ALL) ALL # WARNING! Only use this together with 'Defaults targetpw'!


und einen Eintrag für dein Benutzerkonto wie folgt hinzufügen:

# User privilege specification 
root   ALL=(ALL) ALL 
deinBenutzername ALL=(ALL) ALL


Bei kdesu mußt Du jetzt nicht mehr das root-Passwort verwenden, sondern Dein Benutzer-Passwort.

Die Datei „/usr/bin/capisuitefax“ anpassen

–> natürlich als root (Alt+F2 -> kdesu konqueror oder gleich kdesu kwrite)
-> F11 (damit Zeilennummern angezeigt werden)

folgende Zeilen aus:
tar:/pfad/zu/capisuite-0.5.cvs.bin.tar.gz/usr/bin/capisuitefax
nach folgender Zeile in:
/usr/bin/capisuitefax
einfügen

Zeilen 28-29 -> nach Zeile 25
Zeilen 32-34 -> nach Zeile 29
Zeilen 51-52 -> nach Zeile 48
Zeilen 60-62 -> löschen

in Zeile 117 nach
Code:

  optlist,args = getopt.getopt(sys.argv[1:], "d:a:u:lhqnA:S:

folgendes eintragen :

i:p:

so daß die komplette Zeile so aussieht ->

  optlist,args = getopt.getopt(sys.argv[1:], "d:a:u:lhqnA:S:i:p:"


in Zeile 119 nach

'addressee=','subject='

folgendes eintragen :

, 'ip=', 'port='

so daß die komplette Zeile so aussieht ->

      'addressee=','subject=', 'ip=', 'port='])


Zeilen 136-137 -> nach Zeile 133

in Zeile 213 nach

    +subject+"\"\

folgendes eintragen :

nip=\""+ip+"\"\nport=\""+port+"\"\

so daß die komplette Zeile so aussieht ->

    +subject+"\"\nip=\""+ip+"\"\nport=\""+port+"\"\n")


Wer gleich eine angepasste /usr/bin/capisuitefax möchte, kann eine PN mit seiner e-mail Adresse an mich (huby im forum) senden.

Samba anpassen

Folgende Abschnitte in der smb.conf sind für die Drucker und unser neues Fax zuständig. Zumindest der Abschnitt [faxgate] sollte genau so in der smb.conf stehen.

[printers]
  comment = All Printers
  path = /var/tmp
  create mask = 0777
  directory mask = 0777
  printable = Yes
  use client driver = Yes
  browseable = No

[print$]
  comment = Printer Drivers
  path = /var/lib/samba/drivers
  write list = @ntadmin, root
  force group = ntadmin
  create mask = 0664
  directory mask = 0775

[faxgate]
  comment = Faxgate
  path = /var/tmp
  read only = No
  create mask = 0777
  directory mask = 0777
  printable = Yes
  print command = lpr ‑r ‑o ip=%I ‑P%p %s
  printer name = Faxgate
  use client driver = Yes
  oplocks = No
  share modes = No


Mit folgenden Einträgen in der smb.conf gelangt man auch über Samba an empfangene und gesendete Faxe.


[fax_phone]
  comment = Empfangene Faxe und Anrufe
  path = /var/spool/capisuite/users/%U/received/

[fax_ausgehend]
  comment = Gesendete Faxe
  path = /var/spool/capisuite/done/


Jetzt noch in der Konsole:

root:~ # rcsmb reload

User anlegen

Yast -> Netzwerkgeräte -> Fax -> Hier können wir für jeden user einen eigenen Faxzugang mit eigener Fax- Nummer, Kennung und Kopfzeile anlegen.
Unter Aktion sollten wir MailAndSave aktivieren.

Natürlich müssen wir auch Samba als user bekannt sein.

So fügen wir Samba einen user hinzu:

root:~ # smbpasswd -a username
New SMB password:
Retype new SMB password:

root:~ # rcsmb reload


In unserer Windows Netzwerkumgebung finden wir jetzt unseren Faxgate – Drucker.

Netzwerkdrucker einrichten

Damit das Drucken aus dem lokalen Netz über Cups funktioniert ist folgendes erforderlich:

Bei suse10.2 muß /etc/cups/cupsd.conf nicht mehr bearbeitet werden.

Hier wird wie folgt vorgegangen:

-> Yast -> Hardware -> Drucker -> Andere -> Einstellungen für entfernten Zugriff ändern -> Aktivieren -> Weiter -> Beenden

Bis suse10.1 muß /etc/cups/cupsd.conf als root wie folgt bearbeitet werden: (Alt+F2 -> kdesu konqueror)

Bei ca. Zeilennummern 775 folgenden Abschnitt um einen Eintrag für das lokale Netz ergänzen.

<Location />
Order Deny,Allow
Deny From All
Allow From 127.0.0.1
Allow From 127.0.0.2
Allow From @LOCAL
</Location>


z.B: so Code:

<Location />
Order Deny,Allow
Deny From All
Allow From 127.0.0.1
Allow From 127.0.0.2
Allow From 192.168.0.*
Allow From 192.168.1.*
Allow From 192.168.2.*
Allow From @LOCAL
</Location>


Will man von Windows Clients aus drucken, müßen auch noch folgende Dateien bearbeitet werden:

/etc/cups/mime.convs
/etc/cups/mime.types

In beiden Dateien befindet sich ziemlich zum Schluß eine Zeile, die so beginnt: Code:

# application/octet-stream


Hier einfach das # entfernen und speichern.


Jetzt nochmal in der Konsole: Code:

root:/ # rccups restart


Jetzt können wir den Faxgate-Drucker auf den Clients wie folgt anlegen:

Von Windows aus: über Samba: Netzwerkumgebung -> Faxgate -Drucker anklicken, nach diversen Warnmeldungen öffnet sich der Druckerinstallations-Assistent ->Postscript Treiber auswählen (bei mir Apple LaserWriter 8500) -> OK

Wenn der Zugriff auf Samba von Win98-Clients erfolgen soll, muß der Win98-Client gemäß folgtender Anleitung eingerichtet werden.

http://lug.krems.cc/docu/samba/ch03_01.html

IPP funktioniert mit Win98 nicht.

oder über IPP: Systemsteuerung -> Drucker und Faxgeräte -> Drucker hinzufügen Jetzt erscheint wieder der Druckerinstallations-Assistent -> Weiter -> Netzwerkdrucker -> Weiter -> Verbindung mit einem Drucker im Internet usw. als URL folgendes eingeben:

http://192.168.1.22:631/printers/Faxgate


Von Linux aus: Yast -> Hardware -> Drucker -> Hinzufügen -> Warnung: neue queue? mit nein beantworten -> Anderes Setup, Weiter -> Anderer Drucker (URI), Weiter -> Als URI folgendes eingeben:

http://192.168.1.22:631/printers/Faxgate

-> Weiter -> Lokales Filtern durchführen deaktivieren -> Weiter

Benachrichtigung über mail konfigurieren

Standardmäßig wird durch die Einstellung MailAndSave, die wir unter Punkt 6 vorgenommen haben, jede Benachrichtigung im Mailpostfach des jeweiligen users abgelegt.

Wenn wir bei kmail ein lokales Postfach einrichten, können wir damit die Faxbenachrichtigung abholen.
(kmail -> Einstellungen -> Kmail einrichten -> Zugänge -> Empfang -> Hinzufügen -> Lokales Postfach -> OK -> Zugangsname - local -> OK)

Wennn wir im lokalen Netz die Benachrichtigung abholen wollen, sind folgende Schritte erforderlich.

  1. qpopper mit Yast installieren
  2. Yast -> Netzwerkdienste -> Netzwerkdienste (xinetd) -> aktivieren -> Dienst pop3 mit Server /usr/sbin/qpopper auf Status an setzen -> Beenden
  3. Mailaccounts auf den Clients einrichten.

E-Mail-Adresse = user@host.domain
Server Adresse = ip des Linuxrechners (auf dem capisuite läuft)
Benutzername = username auf dem Linuxrechner
Passwort = Passwort auf dem Linuxrechner


Der host und domain Teil der E-Mail Adresse ist gleichlautend mit dem was unter
-> Yast -> Netzwerkdienste -> DNS- und Hostname als Hostname und Domainname eingetragen ist.

Wenn wir außerhalb unseres lokalen Netzes über eingehende Faxe per e-Mail benachrichtigt werden wollen, finden wir hier eine gute Anleitung:
http://www.linux-club.de/faq/Diskussion:Capisuite_als_Faxserver

Faxen

Vom jedem beliebigen Client im lokalen Netz, auf dem wir den Faxegate Drucker eingerichtet haben, können wir jetzt aus jedem Textverarbeitungsprogramm heraus faxen indem wir die Faxnummer des Empfängers einfach wie folgt eingeben, und über unseren Faxgate Drucker ausdrucken.

Fax-Nr.: 0123-456789

Es dürfen keine / Zeichen oder andere Sonder zeichen vorkommen.
Ein + dagegen wird automatisch durch 00 ersetzt.

Auf jedem beliebigen Client des lokalen Netzes, an dem wir einen Mailaccount eingerichtet haben, können wir jetzt die Benachrichtigungsmail über das erfolgreiche Senden des Faxes, oder über eingegangene Faxe abholen.

Von Faxgate gibt es auch noch einen javabasierten Clienten, der aber leider ip- und damit hostgebunden ist. Das heißt der gleiche User kann immer nur auf dem voreingestellten gleichen Host benachrichtigt werden.

Mehr dazu auf http://home.arcor.de/ingo.goeppert/faxgate/

edit: Zum versenden von Serienfaxen aus OpenOffice.org bei -> Extras -> Optionen -> OpenOffice.org Writer -> Drucken -> Einzelne Druckjobs erzeugen aktivieren, sonst kriegt nur die erste Nummer das Fax. Unter Microsft Word hab ich leider keine Einstellung gefunden wie man einzelne Druckjobs erzeugen kann, vielleicht kann ja noch jemand einen Hinweis geben.

Ich hab vieles bewußt so erklärt, daß auch Linuxneulinge was damit anfangen können.

Ich hoffe damit dem ein oder anderen geholfen zu haben.

Ergänzuung

Auf der Diskussionsseite befindet sich noch ein Teil mit weiteren Infos zum einarbeiten.

Quellen und weiterführende Links



zurück zu Faxen und Telefonieren