| |
DL3RDR > WAMPES 09.06.95 14:50l 687 Lines 25016 Bytes #-11357 (0) @ DL
BID : 09650ADB0MWS
Read: DG5MLI DL2MFF DL3MCW DG7RAJ DG5MNC OE6RHT DG1HUN OE2WPO DD5GU DG7DAH
Read: DG4MLB DL5MHK DL8MDW DG1BSP DL0PY DG5MIW DG1JKN DG7RCE DG0ONH DL4MEA
Read: DL3MDI DL7ALE DB4UN DB1RAS GUEST DM3TT
Subj: WAMPES HOWTO deutsch
Path: DB0AAB<DB0KCP<DB0MWS
Sent: 950609/0959z @DB0MWS.#BAY.DEU.EU [Muenchen, JN58SD, OP: DL2RBI]
de DL3RDR @ DB0MWS.#BAY.DEU.EU (Martin)
to WAMPES @ DL
WAMPES-HOWTO (deutsch)
von: Martin Rast
E-Mail: Martin.Rast@cd1.lrz-muenchen.de
DL3RDR@DB0MWS.DEU.EU oder dl3rdr@db0mws.ampr.org
Deutsche Version vom 10.03.1995
German version as of 03/10/95
Verbesserungsvorschlaege und Berichtigungen sind jederzeit willkommen.
INHALT--------------------------------------------------------------------------
1. Einfuehrung
2. Installation
3. WAMPES Administration
4. Einbindung in das Betriebssystem
--------------------------------------------------------------------------------
0. Grundsaetzliches...
Die Beschreibung beschreibt WAMPES wie ich es auf meinem Rechner, einem
386DX40 installiert habe. Darueber hinaus noch die Erkenntnisse einiger
Hams, die mir bei meiner INstallation geholfen haben und einige konkrete
Tips, wie auch eine gewisse Inspiration beigesteuert haben.
Vor allem sind zu nennen:
Olaf Erb Autor von WAMPES fuer Linux
Robert DC4RU hat das komplizierteste System unter Linux/WAMPES
laufen, das ich kenne,
Harm DG7DAH db0mws.ampr.org-Administrator
Werner DL2RBI DB0MWS-Administrator
Ben DL6RAI lieferte viel Know-How bezueglich TCP/IP
Dadurch ist schon klar, dass alles, was unten steht, nur auf Linux-Systemen
getestet ist. Es ist jedoch nicht ausgeschlossen, dass es auf anderen
Architekturen auch funktioniert ;-)
Was braucht man fuer WAMPES:
- ein UNIX-System
- das WAMPES-Paket
- ein TNC (mit der Moeglichkeit, in den KISS-Modus zu schalten !!!)
--------------------------------------------------------------------------------
1. Einfuehrung
1.1. Wozu WAMPES ?
WAMPES ist fuer alle die das geegnete Paket, die ihr Hobby Amateurfunk mit
einem Unix-System verbinden wollen. Interessant ist das vor allem aus dem
Grund, weil ja das Unix-Betriebssystem schon viele Moeglichkeiten zur
Kommunikation mit anderen Rechnern bietet. Es liegt also nahe, das AX.25-
Netz mit dem Betriebssystem zu verbinden, so dass man diese Moeglichkeiten
des Systems und insbesondere die vielen interessanten Tools nutzen kann.
1.2. Was ist WAMPES ?
WAMPES ist ein Paket, das einen Aufsatz bzw. Zusatz zum Betriebssystem
bietet, um unter Unix PR-Betrieb zu machen.
Wie gesagt, WAMPES ist ein Zusatz, es wird NICHT (im Gegensatz zu anderen
Produkten) in den Kernel einkompiliert, dadurch hat es nicht ganz die
Naehe zum Betriebssystem wie andere Produkte, aber man kann mit WAMPES
sehr viel mehr "spielen" (will sagen einstellen), so dass es sich als
Einstieg ganz besonders gut eignet.
--------------------------------------------------------------------------------
2. Installation
2.1. Woher bekomme ich WAMPES ?
Die "offiziellen" Bezugsquellen sind laut README-File die folgenden:
ftp://ftp.ucsd.edu/hamradio/packet/tcpip/incoming oder
ftp://ftp.ucsd.edu/hamradio/packet/tcpip/wampes
(Fuer HP-Mitarbeiter steht noch mdddhd.fc.hd.com zur Verfuegung.)
Wer nicht unbedingt die 700k aus dem sonnigen Californien auf seine
Rechnung uebrtragen will, kann natuerlich auch aus Deutschland downloaden.
Ich habe "Archie" gefragt, und unter anderem folgende Antworten bekommen:
irz301.inf.tu-dresden.de (131.76.1.11)
ftp.une.edu.au (129.180.4.7)
ftp.switch.ch (130.59.1.40)
Die Versionsnummern sind teilweise etwas verwirrend, vielleicht schaue
man besser auf die Groesse in Bytes.
Meine derzeitige Version ist wampes-941123.tar.gz mit 716749 Byte.
2.2. Installation des Pakets
Man erstellt sich ein Verzeichnis /tcp und kopiert das Paket dort hinein.
(Ich mache immer ein Verzeichnis /usr/local/ham-radio/wampes941123 und dann
"ln -l /usr/local/ham-radio/wampes941123 /tcp", aber das ist nur eine
kleine Schoeheitskorrektur).
Dann:
gzip -d wampes-941123.tar.gz (oder auch uncompress falls noetig)
tar -xof wampes-941123.tar
Als naechstes wird die Software kompiliert. Da dabei auch die
Rufzeichendatenbank angelegt wird, sollte man sich vorher eintragen.
Falls man noch keine IP-Nummer fuer seinen Rechner hat, ist es spaetestens
jetzt Zeit, sich eine (unter Angabe des naechsten IP-Knotens) reservieren
zu lassen. Diese traegt man dann in /tcp/hosts ein.
Anschliessend:
make all
So jetzt kann man sich einen Kaffee kochen, denn das kompilieren geht zwar
relativ schnell, aber das Anlegen der Datenbank (man sieht bei Makelauf den
Befehl mkhostdb) dauert ein paar Minuten.
Hoffentlich ist nun alles erfolgreich gewesen !
Ansonsten: Viel Vergnuegen bei der Fehlersuche (der dann aber wohl am
Unix-System liegt) !
2.3. Das TNC
Das TNC haengt wohl schon an irgendeiner Schnittstelle. Um dieses nicht
immer "hart" kodieren zu muessen, binde ich es ueber einen Link ein (dann
ist es auch nachher in diesem HOWTO einfacher):
ln -s /dev/ttyS1 /dev/tnc0
Was ist passiert ? Man hat ein neues /dev-File erzeugt, ueber das dann das
TNC angesprochen wird (hier das erste TNC, also /dev/tnc0).
Bei mir haengt das TNC an der zweiten seriellen Schnittstelle (wie wohl
bei den meisten Leuten mit Maus), unter DOS hiesse das COM2.
Ist das TNC an der ersten seriellen Schnittstelle, so muss /dev/ttyS0 statt
/dev/ttyS1 stehen etc.
Jetzt schaue man noch in die Anleitung des TNC, wie man es in den KISS-Mode
bringt. Diese Umschaltung, bei mir ist es die Kombination ESC@K, schickt
man am besten bei jedem Systemstart bevor irgendwas mit WAMPES gemacht wird
an das TNC, also in /etc/rc.d/*.
2.4 /etc
WAMPES erzeugt beim Einloggen eines neuen Benutzers automatisch einen neuen
Login fuer diesen User (abschalten mit "login create off"). Dieser erhaelt
per default die Gruppen-ID 400; ich trage diese Gruppe in /etc/groups ein,
z.B. als hams so:
##/etc/group
root::0:root
bin::1:root,bin,daemon
daemon::2:root,bin,daemon
sys::3:root,bin,adm
adm::4:root,adm,daemon
tty::5:
disk::6:root,adm
lp::7:lp
mem::8:
kmem::9:
wheel::10:root
floppy::11:root
mail::12:mail
news::13:news
uucp::14:uucp
man::15:man
users::100:games
hams::400:games
nogroup::-1:
#/etc/group END
2.5 net.rc
Nun wird Schritt fuer Schritt das rc.net zusammengesetzt. Zuerst bringen wir
folgendes File in das Verzeichnis /tcp als net.rc. Es soll mal als erste
Version dienen, dass WAMPES erstmal startet.
#############################################################################
# Sample config for WAMPES, by Martin Rast DL3RDR
#############################################################################
# Here our ip address:
ip address 44.130.56.222
#############################################################################
# Hostname:
hostname dl3rdr
#############################################################################
# ax25 mycall:
ax25 mycall dl3rdr-9
#############################################################################
# Attach one serial, /dev/tnc0 with 9600 Baud and KISS:
# NOTE: Interfacename and the device must be the same!!
# Usage: attach asy 0 0 slip|vjslip|ax25ui|ax25i|kissui|kissi|nrs <label> 0 <mtu> <speed>
attach asy 0 0 kissi tnc0 0 256 9600
#############################################################################
# Important ip parm:
# time-to-live:
ip ttl 20
# Ip reasm timeout:
ip rtimer 2000
#############################################################################
# tcp parms:
# Initial round trip time
tcp irtt 30000
# Maximum segment size (196 for IP via NET/ROM)
tcp mss 196
# TCP Window
tcp window 2048
#############################################################################
# We want to see icmp messages:
icmp trace on
#############################################################################
# ax25 t1 timer ("frack"):
ax25 t1 12000
# ax25 retry limit:
ax25 retry 20
# Enable ax25 login:
start ax25
#############################################################################
# Some ax25 routes:
# (default to tnc0)
# tragen wir spaeter ein
#############################################################################
# IP routes:
# tragen wir spaeter ein
#############################################################################
# Arp's:
# tragen wir spaeter ein
#############################################################################
# Now some tcp/ip services:
start ftp
# Login via telnet:
start telnet
#
start discard
start echo
# We have a builtin domain server:
start domain
# This for remote exit/kick
start remote
# Special services, gated to unix-sockets:
#
# Conversd:
start tcpgate 3600 unix:/tcp/sockets/convers
# SMTP:
start tcpgate smtp
# Fingerd:
start tcpgate finger
# pop2-daemon:
start tcpgate pop2
# NNTP daemon:
start tcpgate nntp
#
# Remote-exit for hosts that knows this key:
remote -s exit_key
#############################################################################
# Kick the smtp timer every 120 seconds:
smtp timer 120
#############################################################################
# Use the unix resolver if a host isn't in /tcp/hosts:
domain usegethostby on
#############################################################################
# the esc character:
esc
#############################################################################
# trace all of tnc0 to tty7 (virtual console)
trace tnc0 111 /dev/tty7
#############################################################################
# Logging:
log /dev/tty7
#############################################################################
# Maybe we have some additional routes? Editing /tcp/net.rc causes an exit
# of the net-program! (this was introduced because of automatic updates)
#
source /tcp/net.rc.local
#
# End of net.rc
#
Es ist dem von Olaf Erb mitgelieferten ziemlich aehnlich, doch einige
Zeilen fehlen, hier werden wir spaeter was eintragen:
# tragen wir spaeter ein
NUN AENDERT JEDER, aber auch JEDER, die ersten drei Befehle ab, indem
er seine IP-Nummer und sein Call eintraegt.
VORSICHT: Wer das nicht macht, tritt als "Pirat" unter meinem Rufzeichen
auf !!!!
So, jetzt ist die letzte Gelegenheit, das TNC in den KISS-Mode zu bringen.
Nun erzeugen wir noch ein File /tcp/net.rc.local. Das hat folgenden Grund:
Jedesmal, wenn man etwas in net.rc aendert, startet WAMPES neu, und so
schreibt man einige sich oft aendernde Werte in das zweite File, das ganz
am Ende ausgefuehrt wird; welche Befehle das sind, muss jeder der Leser
fuer sich selbst feststellen, man tippt also:
touch /tcp/net.rc.local
Jetzt kommt der entscheidende Augenblick, wir starten WAMPES:
/tcp/net </dev/null &
WAMPES laeuft nun im Hintergrund, und die QRG sollte in das siebte
virutuelle Terminal umgeleitet werden (Anschauen mit Alt-F7).
Wir gehen nun in das Kontrollprogramm zu WAMPES mit
cnet
Es sollte ein Prompt erscheinen, etwa so:
dl3rdr>
Kommt hingegen eine Fehlermeldung, sollte man ueberpruefen, ob das WAMPES
richtig gestartet hat; falls nicht, so hat man wahrscheinlich das unbedingt
notwendige </dev/null vergessen...
Die erste, was man nun machen sollt, ist eine Statusanzeige, am besten mit
dl3rdr> status
oder
dl3rdr> s
Wie man hier sieht koennen die Befehle auch abgekuerzt werden.
Bevor wir nun zum PRen uebergehen, erst mal zum net.rc, was ist bisher
passiert ? Gehen wir die einzelnen Befehle durch:
ip address 44.130.56.222
stellt die IP-Adresse ein
hostname dl3rdr
dazu das call fuer TCP/IP
ax25 mycall dl3rdr-9
und das fuer AX.25 (so geht man dann auf die QRG)
attach asy 0 0 kissi tnc0 0 256 9600
jetzt binden wir das TNC ein, interessant ist hier der Parameter
"kissi", d.h. das TNC wird ueber KISS angesprochen, und die TCP-Pakete
werden ueber eine ECHTE AX.25 Verbindung uebertragen; staende anstelle
von "kissi" "kissui" werden nur UI-Frames geschickt, das stellen
wir spaeter ein, wenn die Tests erfolgreich waren, denn "kissui"
vermindert den Overhead (weniger als halb soviel Pakete !!!)
Einige IP-Parameter:
ip ttl 20
time-to-live
ip rtimer 2000
Ip reasm timeout
Einige TCP-Parameter:
tcp irtt 30000
Initial round trip time
tcp mss 196
Maximum segment size (196 for IP via NET/ROM)
tcp window 2048
TCP Window
icmp trace on
das zeigt uns die icmp-Messages an
Einige AX.25-Parameter:
ax25 t1 12000
der frack-timer
ax25 retry 20
retry limit
start ax25
das erlaubt anderen Hams das einloggen von aussen mit AX.25
Jetzt starten wir TCP-Services fuer die Aussenwelt
start ftp # ftp
start telnet # telnet
start discard
start echo
start domain # wir erlauben DNS
start remote
start tcpgate 3600 unix:/tcp/sockets/convers # convers (wird an Linux
start tcpgate smtp # smtp "durchgereicht")
start tcpgate finger # finger
start tcpgate pop2
start tcpgate nntp
remote -s exit_key
remote-exit
smtp timer 120
der SMTP-Prozess (senden) wird alle 120 Sekunden gestartet, wenn
etwas vorliegt
domain usegethostby on
die Hostnameaufloesung des Systems wird genommen, falls ein Host
nicht in /tcp/hosts
esc
diese Taste wird genommen, um aus den interaktiven Sessions wieder
auf die Befehlsebene zu kommen
trace tnc0 111 /dev/tty7
log /dev/tty7
Wir loggen und tracen die QRG nach /dev/tty7
source /tcp/net.rc.local
Ausfuehrung von net.rc.local
Das war's ! Was nun noch fehlt sind einige Parameter, die sehr von der
Struktur des PR-Netzes abhaengen. Wir probieren nun interaktiv aus, was
wir spaeter in das net.rc eintragen.
Grundsaetzlich gibt es zwei Moeglichkeiten:
a. Der TCP/IP-Host ist direkt ueber die QRG erreichbar,
b. er ist nur ueber einen Digi erreichbar.
Konkret haben wir hier in Muenchen folgende Situation:
DL3RDR-9 (dl3rdr.ampr.org)----------------------DB0MWS
| |
| |
DB0MWS-9 (db0mws.ampr.org) DB0AAB---------DB0FSG
|
|
DB0UNI-2 (db0uni.ampr.org)
So wird sich nun jeder seine passende Situation raussuchen koennen.
a. ist die Verbindung von mir zu db0mws.ampr.org
b. die zu db0uni.ampr.org
Wir werden spaeter darauf kommen, wie man das testet, welcher Fall bei
einem vorliegt, wenn man das nicht auf Anhieb weiss.
Jetzt machen wir zunaechst mal AX.25, dazu schalten wir das Funkgeraet AUS !
Und tippen:
dl3rdr> ax25 route add tnc0 default
Das heisst, wir schicken jedes AX.25-Paket per Default an das erste TNC0.
Das gilt nun fuer alle AX.25-Ziele, die nicht anders spezifiziert werden.
Nun geht's los:
dl3rdr> connect DL6RAI-2
oder irgendeine Station, die wir direkt erreichen koennen.
Wenn wir jetzt auf die QRG "umschalten" (mit Alt-F7) sollte als letztes
Paket ein AX.25-Paket DL3RDR-9->DL6RAI-2 stehen, und die Sende-LED des
TNC sollte aufgeleuchtet haben.
Nun verlassen wir die Session mit ctrl-C und koennen uns die dazugehoerigen
Parameter im WAMPES mit
dl3rdr> ax25 status
oder
dl3rdr> ax s
ansehen. Jetzt steht eine Verbindung DL3RDR-9->DL6RAI-2 als Conn pend, also
im Verbindungsaufbau.
Wenn soweit alles in Ordnung ist, dann schalten wir nun das Funkgeraet ein.
(Der ganze "Zirkus" war deshalb, weil man auf dem QRG-Fenster ziemlich
wenig sieht, wenn viel Traffic ist, also schalte ich in solchen Situationen
das Funkgeraet aus, damit ich in Ruhe das rausgehende Paket betrachten kann.)
Nun sollte auch inzwischen das "Connected" erschienen sein (sonst hilft ein
dl3rdr> kick
zu einem erneuten aussenden des Paketes), und ein
dl3rdr> session
zeigt die aktive Verbindung, in die man nun mit
dl3rdr> session 0
einsteigen kann. Wir disconnecten wieder entweder durch "quit" am Host, oder
dl3rdr> disconnect 0
(natuerlich, nachdem man die Session mit Ctrl-C verlassen hat.)
Dasselbe sollte nun auch ueber Digis gehen, z.B.
dl3rdr> connect db0fsg db0mws db0aab
Nun versuchen wir, unseren zukuenftigen TCP/IP-Host zu connecten, ich mache
das mit:
dl3rdr> connect db0mws-9
oder - im Fall b.
dl3rdr> connect db0uni-2 db0mws db0aab
Je nachdem, welche der beiden Moeglichkeiten klappt, hat man obigen Fall
a. oder b. und haelt sich im folgenden an die Beschreibung, die die
TCP/IP-Verbindung zu db0mws.ampr.org bzw db0uni.ampr.org beschreibt.
An dieser Stelle einen kleinen Hinweis: Wenn man einen Host connected, der
AX.25 und TCP/IP kann, muss man als AX.25-Client ein Return senden, damit
der Host merkt, dass man per AX.25 einsteigen will, und schon sollte man
eingeloggt sein.
Jetzt ist es Zeit, ein paar der inzwischen gesammelten Informationen
anzusehen (denn WAMPES interpretiert ziemlich viel, was so auf der
QRG daherkommt).
dl3rdr> ax25 dest
zeigt die gehoerten Destinationen der Pakete an,
dl3rdr> ax25 heard
die Heard-Liste
dl3rdr> ax25 route list
die AX.25-Routen.
Zumindest sollten unsere vorher connecteten Hosts drinstehen.
So, es geht weiter mit TCP/IP:
Erst mal muessen wir dem WAMPES sagen, wohin es die TCP/IP-Pakete schicken
soll, das geschied mit dem Befehl "arp". Das "arp" ist eigentlich eine
Moeglichkeit, Hardwareadressen einzustellen, wir stellen hier ein, das
die TCP/IP-Hardware eine AX.25-Verbindung ist, im Klartext bedeutet das,
dass jedes TCP/IP-Paket in ein AX.25-Paket "eingepackt" wird, beim
Zielrechner wird es wieder "ausgepackt".
Doch nun die Praxis:
dl3rdr> arp add db0mws ax25 DB0MWS-9
bzw.
dl3rdr> arp add db0uni ax25 DB0UNI-2
Man beachte, dass erst die IP-Adresse db0mws bzw. db0uni steht, danach,
dass diese IP-Pakete ueber ax25 an DB0MWS-9 bzw. DB0UNI-2 weitergereicht
werden.
Nun machen wir noch ein paar Einstellungen fuer das TCP/IP-Routing:
dl3rdr> route add db0mws
bzw.
dl3rdr> route add db0uni
Jetzt ist alles fertig, um das erste Mal "telnet" zu machen...
Here we go !
dl3rdr> telnet db0mws
bzw.
dl3rdr> telnet db0uni
Es sollte nun ein "SYN sent" erscheinen, und auf der QRG ein Paket
rausgehen, (nach dem connect zu DB0MWS-9 oder DB0UNI-2), das so
aussieht (oder aehnlich):
Datum tnc0 sent
KISS: crc-16 Data
AX25: DL3RDR-9->DB0UNI-2 v DB0MWS DB0AAB
IP: len 44 dl3rdr.ampr.org->db0mws.ampr.org
TCP: 1025->23 Seq nnnnnnnnn SYN Wnd 2048 MSS 196
Auf die gleiche Weise sollte nun der Host antworten, und es erscheint
ein "Estab" und schon laeuft auch TCP/IP.
Was hat uns das jetzt gebracht ?
Wir wissen nun, was wir in das File net.rc eintragen muessen, an den
Stellen, wo noch etwas fehlt.
Erstmal aendern wir das "kissi" in "kissui", um das "QRM" zu vermindern.
Jetzt trage wir alle Hosts ein, die wir kennen, und direkt ueber AX.25
ansprechen wollen; die anderen werden dann per default an den naechsten
TCP/IP-Host weitergeleitet. Also
AX.25-Sektion
ax25 route add default # default geht ueber tnc0
ax25 route add permanent DB0MWS-9
ax25 route add DB0UNI-2 DB0MWS DB0AAB
Routes, die nicht durch auf der QRG gehoerte Daten ueberschrieben werden
sollen, werden "permanent".
ARP-Sektion:
arp add db0mws ax25 DB0MWS-9
arp add db0uni ax25 DB0UNI-2
IP-Sektion
route add default tnc0 db0mws
route add db0mws tnc0
route add db0uni tnc0
Alles andere, was man nun festschreiben will, muss man hier machen,
z.B. dl1lid.ampr.org soll nicht via db0mws (default) sondern db0uni gehen, also
route add dl1lid tnc0 db0mws
Jetzt versuchen wir, ob alles geklappt hat, und starten WAMPES neu, dann
sollte alles OK sein, d.h. wir koennen alle eingestellten Hosts via
AX.25 und TCP/IP connecten.
--------------------------------------------------------------------------------
3. WAMPES Administration
3.1. Login von aussen
Eine Besonderheit gegenueber einem "normal" an ein Netz angeschlossenen Rechner
bietet WAMPES insofern, dass es ein reizvolles Feature fuer den Amateurfunk
bietet, indem es bewusst fremde (d.h. dem System unbekannte) User mit
einbezieht:
Gewoehlich zeigt sich ein UNIX-System nicht allzu freundlich gegenueber
fremden, nur die Moeglichkeit eines "guest", also eines Gastbenutzer bietet
sich (analog "anonymous" im ftp-Bereich). Bei WAMPES kann man mit dem "login"-
Kommando weitere Features einstellen; will man das normale UNIX-Verhalten,
so stellt man
dl3rdr> login auto off
dl3rdr> login create off
Defaultmaessig sind die beiden auf "on" geschaltet. Was machen sie im einzelnen:
"login auto" versucht, aus dem Call des AX.25- bzw. TCP/IP-Partners den
Benutzernamen zu erfarhen, d.h., wenn man dieses System connected wird man
unter seinem Call eingeloggt, hat man ein Passwort gesetzt, so wird dieses
abgefragt, wenn nicht, so ist man gleich eingeloggt. Klappt diese
Identifizierung nicht, so wird der in "login defaultuser" eingestellte Benutzer
eingeloggt.
Der Befehl "login create" bietet weiterhin die Moeglichkeit, einem neuen User
gleich einen Account zu installieren, d.h. er wird in /etc/passwd eingetragen
und bekommt ein Benutzerverzeichnis. Dabei verwendet er folgende
Voreinstellungen: Der Benutzer erhaelt die Gruppe "login gid" zugewiesen,
er bekommt eine (freie) ID zwischen "login minuid" und "login maxuid";
das Homedirectory wird ueber den Befehl "login homedir" bestimmt, die
Voreinstellung ist /home/funk (als Alternativen werden auch /users/funk und
noch ein paar andere empfohlen, was das beste ist wird wohl vom Systemtyp
anhaengen, ein Linux-Benutzer wird wohl mit dieser Voreinstellung leben
koennen, die anderen stellen es in net.rc um oder compilieren den gewuenschten
Default ins WAMPES ein). Wie nun die Benutzerverzeichnisse angelegt werden,
sieht man am besten an ein paar Beispielen, da noch zur Verbesserung des
Ueberblicks eine zusaezliche (Directory-) Hierarchie eingezogen wurde, also
/home/funk/db0.../db0mws
/home/funk/db0.../db0uni
/home/funk/dl3.../dl3rdr
/home/funk/dl6.../dl6rai
Die default-shell wird mit "login shell" eingestellt.
NETTIQUETTE: Wenn man nicht will, dass alle Benutzer automatisch einen
neuen Login erhalten, sollte man (ham-spirit !!!) einen Benutzer "guest"
einrichten, und die gleich in /etc/issue "bekanntgeben". Ausserdem sollte
im Amateurfunkbereich das File /etc/hosts.deny TABU SEIN !
(Was nicht heisst, dass man das System sichern sollte gegen Hacker, denn
man weiss ja nie, und jemand der "fdisk" machen kann (oder auch "mount"), kann
auch die DOS-Partitionen durcheinanderbringen. Also ein paar einfache
Sachen zur Systemsicherheit:
3.2. Systemsicherheit
Teilweise sind folgende Sachen nach der Installation schon gemacht (wie
3.2.2. im Gegensatz zu 3.2.2), trotzdem besser ueberpruefen !
3.2.1. root sollte ein Passwort haben (und kein einfaches !!!)
und dann: nie als root ueber die QRG einloggen
3.2.2. alle wichtigen Files sichern:
/etc/passwd und so weiter sollten nicht schreibbar fuer Benutzer sein
3.2.3. alle Befehle, die ein s-Bit gesetzt haben, ueberpruefen
3.2.4. vorsichtige richten ein quota ein (dann kann keiner das Filesystem
vollschreiben, so dass dann gar nichts mehr geht)
3.2.5. nicht immer alles mounten (z.B. wichtige DOS-Partitionen), und wenn
dann absichern, d.h. eventuell als read-only mounten oder die
Rechte fuer User der Gruppe 400 entsprechend setzen
--------------------------------------------------------------------------------
4. Einbindung in das Betriebssystem
4.1. Mail senden
Man geht hier (fast) so vor, wie im intro.txt beschrieben, ein paar
Kleinigkeiten habe sich jedoch geaendert:
Erst sollte man wissen, wer die ganze Mail von einem bekommen soll, bei mir
ist es db0mws.ampr.org. Man konfiguriert also so:
Das File /usr/lib/uucp/hdb_config bekommt als Eintrag diesen Host:
db0mws Never
Das ist fuer das Linux-System; Linux schreibt also die Mail in das UUCP-
Verzeichnis von db0mws. Linux soll aber nichts per uucp weiterleiten, denn
dass uebernimmt ja WAMPES.
Jetzt muss WAMPES noch wissen, wo ausgehende Mails stehen, das definiert man
im File /tcp/mail.conf
db0mws:smtp:tcp:db0mws smtp
Analog geht man fuer jeden anderen Host vor, dem man Mail schicken will.
4.2. Mail empfangen mit SMTP
Nachdem wir schon im net.rc ein "start tcpgate smtp" eingetragen haben,
muss man hier nichts machen; will man etwas aendern, so liegt dieses nicht
im WAMPES, sondern man muss das SMTP administrieren, als ob man gar kein
WAMPES haette. (Der Befehl "start tcpgate smtp" macht das WAMPES transparent
fuer eingehende Nachrichten).
4.3. POP3
Hier besorgt man sich erstmal einen POP3-Client.
Jetzt beginnt eine etwas groessere "Fummelei", da ich einiges umschreiben
musste (fuer WAMPES statt Internet). Im Prinzip ist es aber recht einfach.
Irgendwo im Client-Quellcode befindet sich ein Aufruf der Routine build_saddr.
Hier sollte als erster Parameter "unix:/tcp/.sockets/netcmd" (als String,
also in Anfuehrungszeichen) stehen. Jetzt sollte man sicherstellen, dass
der POP3-Client auch das richtige Datumsformat einstellt, wenn er sich
im Mailfile verewigt (das Mailfile enthaelt den Pfad, den die Mail genommen
hat, also steht auch der WAMPES-Client drin; meiner war z.B. fuer eine
SUN, da ist das Format offenbar anders, und die Mailreader nehmen das Datum,
um die verschiedenen Mails im Mailfile zu trennen, also ist das richtige
Format ziemlich wichtig). Das Format lautet:
DAY Month day hh:mm:ss tz year
z.B. Fri Mar 10 14:43:37 GMT 1995
Man muss also "nur" noch den entsprechenden printf()-Befehl finden, um
das zu aendern.
Jetzt sollte nach dem Neucompilieren alles funktionieren.
--------------------------------------------------------------------------------
**END
Read previous mail | Read next mail
| |