Inhalt

3. Gateway

3.1 Allgemein

Zunächst möchte ich darauf hinweisen dass dieser Rechner als Gateway bezeichnet wird, er aber weitere Funktionen wie Fax-Emfang und -Versand und Anrufbeantworter bietet.

Es wird im ersten Abschnitt zunächst die Vorbereitung und Installation beschrieben, in den weiteren Abschnitten wird auf die eigentliche Konfiguration bzw. die Installation spezieller Software eingegangen.

Um die Konfiguration zu vervollständigen bitte auch die Punkte unter Allgemein beachten und übernehmen!

Möchte man die Integrität des Dateisystems mittels Tripwire überprüfen bzw. den Rechner im Rahmen der Installation darauf vorbereiten (später hat es eigentlich kaum Sinn) ist zu beachten das der Rechner im Single-User Betrieb benutzt wird bis mittels Tripwire die entsprechende Datenbank erstellt wurde. Dies ist z.B. gewährleistet indem man niemanden physikalisch an dem Rechner arbeiten lässt und diesen auch noch nicht physikalisch an ein Netzwerk anschliesst. Dies ist natürlich verhältnismässig extrem für einen Rechner z.B. in einer WG, allerdings sollte man zumindest darauf achten dass der Rechner bis zu diesem Zeitpunkt nicht mit dem Internet verbunden ist.

3.2 Vorbereitung

Zunächst sollte man sich die unter Software aufgeführten Updates und Programme/Dateien besorgen und je nach Möglichkeit auf einem anderen Rechner speichern um z.B. per NFS später darauf zugreifen zu können oder auf CD brennen usw.. Natürlich kann man die Dateien auch während bzw. nach der Installation herunterladen, allerdings muss man dann ggf. mit einem nicht ganz sicheren System ins Netz. Um nicht selbst die Pakete während der Installation auswählen zu müssen kann man die Konfigurationsdatei gateway.sel (siehe Software ) benutzen. Die Datei auf eine Diskette kopieren (empfohlen wenn in dem Gateway ein Diskettenlaufwerk zur Verfügung steht) oder ausdrucken.

Weiter wird von folgender Hardware-Konfiguration ausgegangen:

- P200MMX

- 16MB RAM

- 400MB HDD

- Ethernet Interface 10Mbit - NE2000 kompatibel - PCI

- AVM Fritz! Classic - ISA - I/O 0x240 - IRQ 4 (gejumpert)

- CD-ROM-Laufwerk oder NFS-Server im LAN als Installationsquelle

- FDD falls kein CD-ROM-Laufwerk vorhanden oder dieses nicht bootfähig ist bzw. wenn man die Datei gateway.sel per Diskette einlesen möchte

3.3 Installation mittels Yast1

Den Rechner von der 2. CD starten. Ist es nicht möglich von CD-ROM zu starten muss zuvor unter DOS/Windows9x eine Startdiskette erstellt werden. Dazu das Programm setup.exe von der 1. CD starten und den Anweisungen folgen. Dann von dieser Diskette starten. Es wird die Installation gestartet. Sprache, Bildschirm und Tastatur auswählen. Kernelmodule automatisch laden oder, falls dies nicht möglich ist, Kernelmodule manuell laden (NE2000-Karten z.B. lassen sich normalerweise ohne Probleme manuell laden). Installation/System starten und dann Installation/Update starten auswählen. Jetzt muss das Quellmedium ausgewählt werden, normalerweise ist dies das CD-ROM-Laufwerk (z.B. /dev/hdb für ein Laufwerk als Slave am 1. IDE-Kontroller oder /dev/scd2 für ein SCSI-Laufwerk mit der ID 2). Mann kann aber natürlich auch über FTP oder NFS usw. installieren. Die folgenden Einstellungen entsprechend vornehmen. Unbedingt Yast1 als Yast-Version und die Installation im Expertenmodus auswählen. Danach die Festplatte partitionieren: eine min. 300MB grosse primäre Partition vom Typ Linux Native und eine ca. 32MB grosse primäre Partition vom Typ Linux SWAP anlegen. Die Ziel-Partition/Dateisysteme wie folgt festlegen: die min. 300MB grosse ext2-Partition (z.B. hda1 für die erste Partition auf dem Master-Laufwerk am 1. IDE-Kontroller oder sda1 für die erste Partition auf der SCSI-Fesplatte mit der ID 0) wird auf / gemountet und normal oder auf Wunsch mit Prüfen formatiert. Jetzt die Installation festlegen, dazu die Konfiguration von Diskette laden (siehe Vorbereitung ) oder falls kein Diskettenlaufwerk zur Verfügung steht mittels der ausgedruckten Konfigurationsdatei die Pakete manuell (de-)selektieren, am einfachsten funktioniert dies wenn man zuvor das SuSE Minimal System lädt. Wenn der Installationsumfang festgelegt wurde die Installation starten. Zuletzt in das Hauptmenü wechseln und die Installation abschliessen bzw. Yast beenden. Es muss noch der Kernel ausgewählt werden, bei obiger Hardwarekonfiguration wird der Pentium optimierte Kernel verwendet. Danach wird der LILO konfiguriert, als Ziel den Master-Boot-Sektor und als Wartezeit 5 Sekunden einstellen, dies ist lange genug um, falls notwendig, eine Auswahl zu treffen, dauert aber nicht zu lange wenn der Rechner z.B. ohne Tastatur und ohne Bildschirm gestartet wird, also keine Eingabe möglich ist. Der Name der Konfiguration ist frei wählbar, ich benutze normalerweise suse, dann weiss ich im Falle eines missglückten Kernelupdates o.ä. definitiv welcher der SuSE Kernel ist. Die zu bootende (Root-) Partition ist bei obiger Partitionierung und Zuweisung der Ziel-Partition /dev/hda1 oder /dev/sda1. Der Kernel ist /boot/vmlinuz. Die Einstellungen bzgl. der Zeitzone usw. erklären sich von selbst. Dem Rechner muss natürlich ein Rechnername und ein Domainname gegeben werden, diese Namen sind ebenfalls frei zu vergeben. Das Netzwerk als echtes Netzwerk konfigurieren, als IP-Adresse muss eine Adresse aus dem für private Netzwerke reservierten Bereich vergeben werden, z.B. 192.168.1.2. Diese IP-Adresse wird auch als Default-Gateway eingetragen. Die Frage ob inetd gestartet werden soll mit ja beantworten. Es muss dann der DNS-Server eingetragen werden, dabei darauf achten dass in der unteren Zeile die zuvor vergebene lokale Domain eingetragen ist damit Hostnamen innerhalb dieser Domain nicht vom DNS-Server aufgelöst werden. Bei der Sendmail Konfiguration Rechner mit permanenter Netzanbindung auswählen. Zuletzt muss das Root-Passwort vergeben werden, siehe Passworte . Danach wollen noch Maus und Modem eingerichtet werden, dies einfach abbrechen. Das Basissystem steht. Jetzt ist ein guter Zeitpunkt den Rechner neu zu starten und im BIOS lediglich den Start von Festplatte einzutragen, dies verhindert dass, evtl. auch versehentlich, von Diskette bzw. CD-ROM gestartet wird.

3.4 Updates einspielen

Die zuvor von SuSE heruntergeladenen Updates einspielen (siehe Software ). Dazu mittels init 1 den Runlevel wechseln und Yast aufrufen (yast eingeben) -> Installation festlegen/starten -> Pakete einspielen -> die Quelle auswählen -> in das Verzeichnis wechseln in dem sich die Updates befinden. Nur die Updates einspielen deren «veraltete» Versionen bereits installiert sind. Ist ein Paket bereits installiert, die Version unterscheidet sich jedoch von der neuen Datei, ist in den eckigen Klammern ein o eingetragen, ist die Version identisch ist ein i eingetragen. Die Pakete die mit o gekennzeichnet sind zur Installation markieren und diese dann durchführen. /sbin/lilo aufrufen. Da einige Pakete aktualisiert werden die zum Basis-System gehören nach der Installation den Rechner neu starten.

3.5 ISDN konfigurieren

Yast aufrufen (yast eingeben). Administration des Systems -> Hardware integrieren -> ISDN Hardware konfigurieren: I4L starten markieren, in Deutschland Euro-ISDN einstellen, die eingesetzte Karte (in unserem Fall AVM Fritz Classic) auswählen, die Rescourcen eingeben (i/o: 0x240 - irq: 4) und die Einstellungen speichern, ggf. vorher testen. Mittels Esc im Menü einen Schritt zurück gehen und Netzwerk konfigurieren -> Netzwerk Grundkonfiguration auswählen. Es ist bereits die Nummer [0] als Ethernet Interface eingetragen. Für Nummer [1] mittels F5 das Device ISDN SyncPP auswählen und mit F6 eine IP-Adresse vergeben, z.B. 192.168.1.3, diese IP-Adresse ebenfalls für Default-Gateway eintragen da sich der Rechner später automatisch über dieses Interface einwählen soll. Der Haken bei Dynamische IP-Adresse muss eingesetzt bleiben, ebenso kann die IP-Adresse des PtP-Partners beim eingetragenen Wert belassen werden. Mit F4 das Device aktivieren. Danach mit F8 die ISDN-Parameter einrichten: Die eigene MSN wird incl. Vorwahl eingetragen, z.B. 030123456 für eine Nummer in Berlin. In das Feld für die anzurufende Nummer wird die Einwahl-Nummer des Internet-Providers eingetragen. Wichtig ist das der Punkt Nur angegebene Nummer erlaubt markiert bleibt, sonst können sich u.U. andere Rechner auf diesen Rechner einwählen. Als Wählmodus Auto auswählen, die Idle-Time in Sekunden (nach dieser Zeit wird die Verbindung automatisch getrennt wenn sie nicht genutzt wurde) und die Anzahl der max. Wählversuche eingeben. ISDN Callback Konfiguration auf off stellen. Die Benutzerdaten eintragen, die Einstellungen speichern (F10) und den Yast beenden. Mittels init 1 und danach init2 die Runlevel wechseln, danach ist das ISDN-Device startfähig, der Rechner wählt sich jetzt automatisch ein sobald eine IP-Anfrage vorliegt die nicht im lokalen Netzwerk aufgelöst werden kann. Manuell kann man die Einwahl mittels isdnctrl dial ippp0 starten bzw. mittels isdnctrl hangup ippp0 die Verbindung trennen.

3.6 IP-Masquerading

Damit der Rechner auch wirklich als Gateway genutzt werden kann, sich also andere Rechner im lokalen Netzwerk über diesen Rechner in das Internet verbinden können wird IP-Masquerading genutzt. Hierzu in die Datei /sbin/init.d/boot.local folgendes eintragen (einfach an das Ende der Datei anfügen):

/sbin/modprobe ip_masq_ftp
echo "1" > /proc/sys/net/ipv4/ip_forward
/sbin/ipchains -P forward DENY
/sbin/ipchains -A forward -s 192.168.1.0/255.255.255.0 -j MASQ

In /etc/rc.config folgendes ändern:

IP_FORWARD=no
zu
IP_FORWARD=yes

SuSEconfig ausführen und den Rechner neu starten. Auf den Clients die IP-Adresse des Ethernet Interfaces des Gateways (192.168.1.2) als Gateway eintragen. Dort nicht vergessen ebenfalls den/die DNS-Server einzutragen.

Anm.: Bitte NICHT das IP-Masquerading mit einer Firewall verwechseln! Obige Einrichtung sollte so nicht bestehen bleiben möchte wann wirklich ein möglichst einbruchsicheres System haben, dazu ist eine genaue Anpassung der Filter-Regeln z.B. mittels ipchains notwendig bzw. die Installation eines Proxy-Servers!

3.7 CAPI4Linux

Um neben den digitalen Diensten mittels ISDN4Linux auch analoge Dienste wie Fax mittels der ISDN-Hardware nutzen zu können benötigt man CAPI-Treiber. Diese werden für die AVM kompatiblen Kontroller von AVM angeboten (siehe Software ). Zunächst das Archiv fcclassic-suse7.0-03.09.02.tar.gz mittels tar -xzvf fcclassic-suse7.0-03.09.02.tar.gz entpacken. In das neu erstellte Unterverzeichnis fritz wechseln (der Datei- bzw. Verzeichnisname kann je nach eingesetzter Hardware unterscheiden) und ./install ausführen. In /etc/capi.conf die Werte für I/O und IRQ in die Zeile des entsprechenden Gerätetyps eintragen, die entsprechende Zeile ist wird bereits angezeigt, im Falle der AVM Fritz Classic beginnt die Zeile mit fcclassic. Nicht vergessen das Kommentarzeichen (#) zu entfernen. Die Datei sieht dann z.B. so aus:

# card          file    proto   io      irq     mem     cardnr  options
#b1isa          b1.t4   DSS1    0x150   7       -       -       P2P
#b1pci          b1.t4   DSS1    -       -       -       -
#c4             c4.bin  DSS1    -       -       -       -
#c4             -       DSS1    -       -       -       -
#c4             -       DSS1    -       -       -       -       P2P
#c4             -       DSS1    -       -       -       -       P2P
#t1isa          t1.t4   DSS1    0x340   9       -       0
#t1pci          t1.t4   DSS1    -       -       -       -
#fcpci          -       -       -       -       -       -
fcclassic       -       -       0x240   4       -       -
#                               -----   --
# 1) I/O-Adresse hier eintragen ____|   |
# 2) IRQ-Nummer hier eintragen _________/
# 3) Kommentar vor "fcclassic" entfernen

Yast aufrufen -> Hardware in System integrieren -> ISDN Hardware Konfiguration: Als Hardware die ausgewählte AVM Fritz Classic durch AVM B1 PCI ersetzen, auch wenn eine ISA Karte eingesetzt ist muss die PCI Version ausgewählt werden! Yast beenden. depmod -a ausführen und in /etc/modules.conf folgenden Eintrag suchen:

#alias char-major-43    hisax
#alias char-major-44    hisax
#alias char-major-45    hisax

Die Kommentarzeichen entfernen und hisax durch capidrv ersetzen:

alias char-major-43    capidrv
alias char-major-44    capidrv
alias char-major-45    capidrv

Anm.: Es kann sein dass hisax bereits durch off ersetzt wurde, dann off durch capidrv ersetzen.

Das geänderte Skript i4l_hardware (siehe Software ) nach /sbin/init.d/ kopieren, zuvor ein Backup der vorhandenen Datei i4l_hardware anlegen. Die Rechte mittels chmod 0744 /sbin/init.d/i4l_hardware richtig setzen. SuSEconfig ausführen und den Rechner neu starten.

3.8 CAPI4Hylafax

Zunächst mittels Hylafax alle notwendigen Konfigurationen vornehmen, dazu faxsetup starten. Alle Einstellungen mit den Default Werten bestätigen, ausser die Konfiguration des Modems, diese abbrechen. Das Archiv capi4hylafax-01.01.01.tar.gz (siehe Software ) mittels tar -xzvf capi4hylafax-01.01.01.tar.gz entpacken. In das neu erstellte Unterverzeichnis capi4hylafax-01.01.01 wechseln und ./install -c aufrufen. Danach die Datei /var/spool/fax/etc/config.faxCAPI editieren, folgende Einträge sollten vorgenommen werden (andere Einträge sind möglich, bitte die entsprechenden Kommentare in der Datei beachten):

LogFile:                /var/log/faxrcvd.log
# Kann frei vergeben werden
LogFileMode:            0600
# Kann je nach Bedarf eingestellt werden

In der Untersektion faxCAPI:

FaxNumber:              +4930123456
# Wird der Gegenstelle als Fax-Nummer mitgeteilt
LocalIdentifier:        Abs.: Tux
# Wird als Absender angegeben
OutgoingMSN:            123456
# MSN über die Faxe gesendet werden
NumberPrefix:           0
# Nummer die gewählt werden muss um ein «Amt» zu bekommen
# (z.B. bei Nebenstellenanlagen)
AcceptSpeach:           0
# Sollte 0 sein, sonst werden auch Telefongespräche angenommen
IncomingMSN:            999999
# Sollte fiktiv sein da der Faxempfang nicht mittels hylafax bewerkstelligt wird

In /etc/rc.config folgendes ändern:

START_HYLAFAX=no
zu
START_HYLAFAX=yes

In /etc/inittab kontrollieren ob folgender Eintrag vorhanden ist bzw. falls nicht diesen hinzufügen:

fr:23:once:/usr/local/bin/c2faxrecv

SuSEconfig ausführen und den Rechner neu starten. Mittels sendfax -d 030654321 /tmp/fax.txt kann jetzt die Datei /tmp/fax.txt (es muss keine Text-Datei sein) an die Fax-Nummer 030654321 gefaxt werden.

3.9 capircvd

Capircvd ist ein Tool welches Faxempfang bzw. Anrufbeantworter zur Verfügung stellt. Das Archiv sff-1.0.patched.tgz (siehe Software ) entpacken und in das neu erstellte Unterverzeichnis sff-1.0 wechseln. make und danach make install ausführen. Das Archiv capircvd-0.2.36.tar.gz entpacken und in das neu erstellte Unterverzeichnis capircvd-0.2.36 wechseln. Das Configure-Skript starten: ./configure --with-iprefix=49 --with-nprefix=30 wobei für iprefix die internationale Vorwahl (für Deutschland 049) und für nprefix die nationale Vorwahl (für Berlin 030), jeweils ohne führende 0, eingesetzt wird. Dann make bzw. make install ausführen. Danach die Datei /etc/capircvd/capircvd.conf editieren, die einzelnen Sektionen fangen je mit = an:

=global
iprefix         49
nprefix         30
# s.o.

=controller1
maxfax          1
# es wird max. ein B-Kanal genutzt

=default
# die Einträge unter default löschen oder kommentieren

# jetzt beginnen die lokalen Sektionen der einzelnen MSN

=4930123457
# MSN des Telefons
mode            voice
# es werden Telefonanrufe entgegen genommen (Anrufbeantworter)
delay           25
# Zeit bis Anrufannahme in Sekunden
announcement    AB_Ansage.alaw
# AB-Ansage als Audio-Datei im Format alaw
# Diese Datei muss sich unter /var/spool/capircvd/ befinden
record          later
# Es wird nach der Ansage aufgenommen, oder
# record        off
# Es wird nur die Ansage abgespielt, keine Aufnahme möglich
handler         /usr/bin/capircvd.handler
# Skript das nach Anrufannahme ausgeführt wird
recipient       voice-fax@rechner.im.lan
# An diese E-Mail wird eine Mail incl. der aufgenommenen Datei geschickt
filename        Von_%2$s_am_%8$d.%7$d.%6$d_um%9$d.%10$d.alaw
# Die Datei die erstellt und an obige Email geschickt wird hat folgenden Namen:
# Von_Tel.Nr._am_Datum_um_Uhrzeit.alaw

=4930123456
# MSN des Fax
mode            fax
# es werden Faxe entgegen genommen
delay           1
# s.o.
handler         /usr/bin/capircvd.handler
# s.o.
recipient       voice-fax@rechner.im.lan
# s.o.
mailformat      inline_jpg
# Format unter welchem das Fax per Mail geschickt wird
filename        Von_%2$s_am_%8$d.%7$d.%6$d_um%9$d.%10$d.sff
# s.o.
faxid           +49_30_123456
# Wird dem Absender angegeben

Anm.: Bzgl. recipient siehe Benutzerverwaltung des File-Server .

Alle anderen Einträge auskommentieren bzw. löschen soweit nicht anders gewünscht, auch die Sektionen =controller2, =admin usw..

In /etc/inittab folgendes eintragen:

crcv:2:respawn:/usr/sbin/capircvd -D 0 &> /dev/null

Anrufbeantworter Ansagen müssen sich im Format .alaw im Verzeichnis /var/spool/capircvd/ befinden. Bei der Installation werden dort einige Dateien abgelegt, diese sind jedoch nicht tauglich und können normalerweise gelöscht werden. Ich habe bisher leider kein Tool gefunden mit dem man unter Linux Audio-Dateien in dieses Format konvertieren kann, es gibt jedoch ein Windows Tool dafür, siehe unter .alaw Dateien erstellen . Die Konvertierung der aufgenommenen Dateien nach .wav ist mittels isdn2wav möglich und wird automatisch vom Skript /usr/bin/capircvd.handler durchgeführt wenn ein Anruf aufgezeichnet wurde. SuSEconfig aufrufen und den Rechner neu starten.

3.10 .alaw Dateien erstellen

Mir ist momentan kein Tool bekannt mittels dem man Audio-Dateien unter Linux in das Format .alaw konvertieren kann. Das DOS/Windows Tool wav2pcm (siehe Software ) sollte aber auch unter wine laufen.

3.11 Automatische Startseite des Providers unterdrücken

Manche Internet-Provider haben ihre Einwahl-Server so konfiguriert dass, egal welcher URL aufgerufen werden soll, als erste Seite nach der Einwahl ein bestimmter URL angezeigt wird, z.B. die Homepage des Providers. Dies kann man unterdrücken indem in der Datei /etc/ppp/ip-up folgender Eintrag vorgenommen wird (einfach am Ende anfügen):

/usr/bin/wget --spider www.url.org

www.url.org muss dabei durch den URL ersetzt werden der sonst vom Provider vorgegeben wird.

3.12 Remote Administration mittels ipcopy

Der Server wird so konfiguriert dass man sich per ssh (und nur per ssh) einloggen kann (siehe Unnötige bzw. unsichere Dienste deaktivieren ). Dies funktioniert (soweit man nicht man mittels ipchains die Paket-Filterung anders eingerichtet hat) sowohl aus dem lokalen Netzwerk als auch aus dem Internet. Das einzige Problem ist dass man die IP-Adresse des ISDN Interfaces benötigt um sich über das Internet einzuloggen, da diese normalerweise dynamisch vergeben wird, also nach jeder Einwahl eine andere ist, kann dies ein Problem darstellen. Das Skript ipcopy behebt dieses Problem insoweit als dass, je nach Konfiguration, die aktuelle IP-Adresse entweder einmalig nach der Einwahl oder in einem bestimmten Rythmus, z.B. alle 5 Minuten, in eine Textdatei auf einen FTP-Server kopiert wird. Dazu die Datei ipcopy_v0.2.tar.gz (siehe Software ) entpacken und in den neu erstellten Unterordner ipcopy_v0.2 wechseln. ./install.sh aufrufen und die Installation bzw. Konfiguration durchführen.

3.13 Abschluss

Nicht vergessen die unter Allgemein aufgeführten Einstellungen vorzunehmen, wie z.B. die Tripwire -Datenbank zu initialisieren!


Inhalt