Linux: Unterschied zwischen den Versionen

Aus OrgaMon Wiki
Zur Navigation springen Zur Suche springen
Keine Bearbeitungszusammenfassung
Zeile 1: Zeile 1:
Zur Verwendung des OrgaMon im Netzwerk, (also mit mehreren Arbeitsplätzen) empfehlen wir einen SuSE Linux Server zu verwenden. Diese Dokumentation beschreibt viele Apsekte dieses mächtigen Serverbestriebssystem im Zusammen mit dem OrgaMon. Auf dem Server stellt dann Dateiablage-Platz (via Samba) und einen Datenbankserver-Dienst (via Firebird) zur Verfügung.
Zur Verwendung des OrgaMon im Netzwerk, (also mit mehreren Arbeitsplätzen) empfehlen wir einen Server mit SuSE Linux Proffesional zu verwenden. Diese Dokumentation beschreibt viele Apsekte dieses mächtigen Serverbestriebssystem im Zusammen mit dem OrgaMon. Auf dem Server stellt dann Dateiablage-Platz (via Samba) und einen Datenbankserver-Dienst (via Firebird) zur Verf?


[[Linux.rsync|rsync als Backuplösung]]<br>
[[Linux.rsync|rsync als Backuplösung]]<br>
[[Linux.xntpd|immer genaue Uhrzeit (für alle)]]<br>
[[Linux.xntpd|immer genaue Uhrzeit]]<br>
[[Linux.samba|Festplatte im Netz (für alle)]]<br>
[[Linux.samba|Festplatte im Netz mit samba]]<br>
[[Linux.xinetd|xinetd als Redirector]]<br>
[[Linux.xinetd|xinetd als Port Redirector]]<br>
[[Linux.mysql|mysql Datenbank für php Projekte]]<br>
[[Linux.mysql|mysql - Datenbank]]<br>
[[Linux.firebird|firebird Datenbank für php Projekte]]<br>
[[Linux.firebird|firebird - Datenbank]]<br>
[[Linux.Installationsserver|Linux Systeme über das Netzwerk installieren]]<br>
[[Linux.Installationsserver|Linux Systeme über das Netzwerk installieren]]<br>
[[Linux.Wiki|Wiki Server Installation]]<br>
[[Linux.Wiki|Wiki Server Installation]]<br>
Zeile 26: Zeile 26:
  kwrite            // ein grafischer Text/Script-Editor! (Nein vi ist nicht mein Fall!!)
  kwrite            // ein grafischer Text/Script-Editor! (Nein vi ist nicht mein Fall!!)
  ps x              // ausgeben aller laufenden Programme
  ps x              // ausgeben aller laufenden Programme
                     // ev. mit z.B. "| grep smb" vervollständigen
                     // ev. mit z.B. "| grep smb" vervollst䮤igen
  mc                // dateimanager (wegen filefind)
  mc                // dateimanager (wegen filefind)
  df                // Diskfree, zeigt Belegung/Mounting der Festplatten an
  df                // Diskfree, zeigt Belegung/Mounting der Festplatten an
Zeile 47: Zeile 47:
Spezielles<br>
Spezielles<br>


  sensors            // Temperatur der CPU und Lüfterfunktion prüfen (Details weiter unten)
  sensors            // Temperatur der CPU und L?unktion pr?Details weiter unten)
  dmesg              // auflisten, was die Hardware so zu bieten hat
  dmesg              // auflisten, was die Hardware so zu bieten hat
    
    
Zeile 54: Zeile 54:
    
    
  ldd -v <programmname>  
  ldd -v <programmname>  
                     // kann auf einem System, auf dem alles läuft :-( gute auskunft
                     // kann auf einem System, auf dem alles l䵦t :-( gute auskunft
                     // geben was das "Programm" so alles noch mit lädt - bei einem  
                     // geben was das "Programm" so alles noch mit l䤴 - bei einem  
                     // firebird ist so ziemlich
                     // firebird ist so ziemlich
                     // interessant. Der "eigentliche" Server ist eingentlich  
                     // interessant. Der "eigentliche" Server ist eingentlich  
Zeile 61: Zeile 61:
                     // hochgezogen, wenn fb_inet_Server geladen wird.
                     // hochgezogen, wenn fb_inet_Server geladen wird.


Downloadquelle für fehlende Pakete: ftp.leo.org/pub/comp/os/unix/linux/suse/people/nashif/SuSE/SLES/x86
Downloadquelle f?lende Pakete: ftp.leo.org/pub/comp/os/unix/linux/suse/people/nashif/SuSE/SLES/x86
           oder bei rmpseek.com
           oder bei rmpseek.com


Zeile 71: Zeile 71:
Zitat [http://www.linux-fuer-alle.de/doc_show.php?docid=243]
Zitat [http://www.linux-fuer-alle.de/doc_show.php?docid=243]


Im Prinzip lädt man einfach nur das Kernelmodul "i2c_sensor" mit  
Im Prinzip l䤴 man einfach nur das Kernelmodul "i2c_sensor" mit  


   modprobe i2c_sensor  
   modprobe i2c_sensor  


Danach führt man das Script  
Danach f?an das Script  


   sensors-detect  
   sensors-detect  


aus. Bei dem Script habe ich eigentlich nur solange die Enter-Taste gedrückt, bis es durchgelaufen war. Natürlich habe ich die Ausgaben gelesen, aber ich wüsste nicht, warum ich schlauer sein sollte, als die Leute, die die Software entwickelt und sinnvolle Werte angenommen haben. Das Script erzeugt die Datei /etc/sysconfig/lm_sensors. Ist dies getan und hat das Script entsprechende Chips gefunden und dort eingetragen, dann kopiert man wie angegeben das Startscript rüber:
aus. Bei dem Script habe ich eigentlich nur solange die Enter-Taste gedr?bis es durchgelaufen war. Nat? habe ich die Ausgaben gelesen, aber ich w?nicht, warum ich schlauer sein sollte, als die Leute, die die Software entwickelt und sinnvolle Werte angenommen haben. Das Script erzeugt die Datei /etc/sysconfig/lm_sensors. Ist dies getan und hat das Script entsprechende Chips gefunden und dort eingetragen, dann kopiert man wie angegeben das Startscript r?


   cp /usr/share/doc/packages/sensors/prog/init/lm_sensors.init.suse /etc/init.d/lm_sensors  
   cp /usr/share/doc/packages/sensors/prog/init/lm_sensors.init.suse /etc/init.d/lm_sensors  


Wer möchte, dass nach jedem Neustart die Möglichkeit besteht, CPU-Temperatur und andere Messwerte zu Überwachen, der sollte noch  
Wer m?e, dass nach jedem Neustart die Möglichkeit besteht, CPU-Temperatur und andere Messwerte zu Ü¢erwachen, der sollte noch  


   chkconfig --add lm_sensors  
   chkconfig --add lm_sensors  


ausführen. Eigentlich ist damit alles getan. Nach einem entsprechenden Start mit  
ausf? Eigentlich ist damit alles getan. Nach einem entsprechenden Start mit  


   /etc/init.d/lm_sensors start  
   /etc/init.d/lm_sensors start  
Zeile 99: Zeile 99:
== Erster (Kalt-)Start ==
== Erster (Kalt-)Start ==


Rechner an, gleich ins System-Bios gehen, dazu <Entf> drücken,
Rechner an, gleich ins System-Bios gehen, dazu <Entf> dr?
wenn die "Drives"-Erkennung läuft. Im BIOS nun
wenn die "Drives"-Erkennung l䵦t. Im BIOS nun
->Advanced?!->Boot Device 0->
->Advanced?!->Boot Device 0->
von "HDD-0" auf "CDROM" umstellen,
von "HDD-0" auf "CDROM" umstellen,
Zeile 111: Zeile 111:
== Suse DVD bootet ... ==
== Suse DVD bootet ... ==


"Manual Installation" bestätigen. Bei den Softwarepaketen, bitte folgendes ändern: "+Server", "+Entwicklung", "+erfahrener Benutzer".  
"Manual Installation" bestä´©gen. Bei den Softwarepaketen, bitte folgendes 䮤ern: "+Server", "+Entwicklung", "+erfahrener Benutzer".  


System->System->Boot->SPLASH->no
System->System->Boot->SPLASH->no
das OS nur in den Textmodus (Console) booten lassen. Und den grafischen Login-Schirm unterdrücken:    
das OS nur in den Textmodus (Console) booten lassen. Und den grafischen Login-Schirm unterdr?    


a)
a)
Zeile 128: Zeile 128:
Mist: jetzt steht er zwar im Text Login aber per VNC kann man sich nicht mehr einloggen. Ich muss erst mit "init 5" in den Run-Level 5 wechseln. Warum?
Mist: jetzt steht er zwar im Text Login aber per VNC kann man sich nicht mehr einloggen. Ich muss erst mit "init 5" in den Run-Level 5 wechseln. Warum?


Aufsetzen eines Installations Servers, der die SuSE DVD als über das Netz Bootbares Medium anbietet:
Aufsetzen eines Installations Servers, der die SuSE DVD als ?as Netz Bootbares Medium anbietet:


mit Win32 nero den "Track speichern" mit dem Typ ISO
mit Win32 nero den "Track speichern" mit dem Typ ISO
Zeile 136: Zeile 136:
   mount -o loop suse92.iso /mein/Verzeichnis
   mount -o loop suse92.iso /mein/Verzeichnis


in das Dateisystem einhängen!
in das Dateisystem einh䮧en!


joe /etc/dhcp.conf
joe /etc/dhcp.conf
Zeile 148: Zeile 148:
2. Modul Software aufrufen
2. Modul Software aufrufen
3. Installationsquelle wechseln
3. Installationsquelle wechseln
4. Hinzufügen: FTP
4. Hinzuf?FTP
5. Folgendes genau so eintragen:
5. Folgendes genau so eintragen:


Zeile 181: Zeile 181:
framebuffer  
framebuffer  
beginnen.  
beginnen.  
Fügen Sie in den append Zeilen der Label default failsafe und apic die folgenden Einträge an:  
F?ie in den append Zeilen der Label default failsafe und apic die folgenden Eintr䧥 an:  
insmod=e100 Dieser Eintrag bewirkt, daß auf dem PXE-Client das Kernelmodul für eine Intel 100MBit/s Netzwerkkarte geladen wird. Dieser Eintrag ist abhängig von der Hardware Ihres Clients, und muß entsprechend geändert werden. Bei einer Broadcom GigaBit Netzwerkkarte würde dieser Eintrag insmod=bcm5700 lauten.  
insmod=e100 Dieser Eintrag bewirkt, daß auf dem PXE-Client das Kernelmodul f?e Intel 100MBit/s Netzwerkkarte geladen wird. Dieser Eintrag ist abh䮧ig von der Hardware Ihres Clients, und muß entsprechend ge䮤ert werden. Bei einer Broadcom GigaBit Netzwerkkarte w?ieser Eintrag insmod=bcm5700 lauten.  
netdevice=eth0 Dieser Eintrag spezifiziert das Netzwerkinterface des Clients, welches für die Netzwerkinstallation benutzt werden soll, und ist nur dann notwendig, wenn mehrere Netzwerkkarten in den Clients verbaut sind. Dieser Eintrag muß dann entsprechend angepaßt werden. Bei nur einer Netzwerkkarte kann dieser Eintrag komplett entfallen.  
netdevice=eth0 Dieser Eintrag spezifiziert das Netzwerkinterface des Clients, welches f? Netzwerkinstallation benutzt werden soll, und ist nur dann notwendig, wenn mehrere Netzwerkkarten in den Clients verbaut sind. Dieser Eintrag muß dann entsprechend angepaß´ werden. Bei nur einer Netzwerkkarte kann dieser Eintrag komplett entfallen.  
install=nfs://192.168.100.1/usr/local/dist/SLES8 Dieser Eintrag legt den nfs Server und die Installationsquelle für die Installation der Clients fest, und muß gegebenenfalls angepaßt werden.  
install=nfs://192.168.100.1/usr/local/dist/SLES8 Dieser Eintrag legt den nfs Server und die Installationsquelle f? Installation der Clients fest, und muß gegebenenfalls angepaß´ werden.  
Eine, für die SuSE Linux Enterprise Server 8 - Netzwerkinstallation, angepaßte /srv/tftpboot/pxelinux.cfg/default finden Sie hier:  
Eine, f? SuSE Linux Enterprise Server 8 - Netzwerkinstallation, angepaß´e /srv/tftpboot/pxelinux.cfg/default finden Sie hier:  
default linux
default linux


Zeile 234: Zeile 234:


     "swap"  mittlere Partition: da werden RAM Speicherbereiche rausgeschrieben,
     "swap"  mittlere Partition: da werden RAM Speicherbereiche rausgeschrieben,
             um Platz zu machen für wichtigere Daten.
             um Platz zu machen f?htigere Daten.
             Grösse= RAM * 2 oder mehr, aber immer größer als das RAM!
             Gr?= RAM * 2 oder mehr, aber immer gr? als das RAM!
     "linux" eigentlicher Betriebssystem Bereich und Anwender und
     "linux" eigentlicher Betriebssystem Bereich und Anwender und
             Benutzerbereich
             Benutzerbereich
Zeile 241: Zeile 241:
     Bei "Festplatte vor ..."
     Bei "Festplatte vor ..."
     den
     den
     [X] Benutzerdefiniert wählen!
     [X] Benutzerdefiniert w䨬en!
     3 Partitionen anlegen:
     3 Partitionen anlegen:


Zeile 254: Zeile 254:
   "Benutzername usw." (sorry weis nicht mehr genau wann das kommt).
   "Benutzername usw." (sorry weis nicht mehr genau wann das kommt).
   Rechnername: linus
   Rechnername: linus
   pwd für den root (=Administrator im win32 Dialekt) erst mal auch so eingeben
   pwd f? root (=Administrator im win32 Dialekt) erst mal auch so eingeben
   pwd: linus
   pwd: linus


   "Monitor ändern"
   "Monitor 䮤ern"
   EIZO-F56 aber beachten dass die vorgeschlagene Wiederholfrequenz
   EIZO-F56 aber beachten dass die vorgeschlagene Wiederholfrequenz
   herunterkorrigiert wird. etwa 70 Hz-72 Hz, was der jeweilige Monitor
   herunterkorrigiert wird. etwa 70 Hz-72 Hz, was der jeweilige Monitor
   verträgt.
   vertr䧴.
   "Hardware konfigurieren" wählen!
   "Hardware konfigurieren" w䨬en!
   ->Netzwerk,
   ->Netzwerk,
     erste Netzwerkkarte
     erste Netzwerkkarte
     100 MBit-Karte: KarteIP fest, zb. 192.168.100.72, Maske so ok
     100 MBit-Karte: KarteIP fest, zb. 192.168.100.72, Maske so ok
     "Rechnername und Nameserver" wählen!
     "Rechnername und Nameserver" w䨬en!
       ->name:    linus
       ->name:    linus
       ->domäne:  pcworld
       ->dom䮥:  pcworld
         NameServer: 194.25.2.132 (T-online)
         NameServer: 194.25.2.132 (T-online)
     zweite Netzwerkkarte
     zweite Netzwerkkarte
Zeile 276: Zeile 276:
   ->ISDN
   ->ISDN
     Euro-ISDN,Deutsch,t-online usw.
     Euro-ISDN,Deutsch,t-online usw.
     Zugangsdaten für den flat bereithalten
     Zugangsdaten f? flat bereithalten
   ->Sound
   ->Sound
     normales Setup->meist auf 100% Lautstärke anpassen, da wir sonst
     normales Setup->meist auf 100% Lautst䲫e anpassen, da wir sonst
     später nix mehr hören.
     spä´¥r nix mehr h?.


== vor dem ersten Start(Logout,beenden,neustarten) ==
== vor dem ersten Start(Logout,beenden,neustarten) ==
Zeile 300: Zeile 300:
   X vnc serie: xap
   X vnc serie: xap


   Folgende Pakete müssen deinstalliert werden:
   Folgende Pakete m?deinstalliert werden:


   7.3
   7.3
Zeile 320: Zeile 320:


   suche und setze die beiden werte wie angegeben, Ist diese Option durch ein
   suche und setze die beiden werte wie angegeben, Ist diese Option durch ein
   "#" auskommentiert, den "#" weglöschen und dadurch die Option aktiv machen.
   "#" auskommentiert, den "#" wegl?en und dadurch die Option aktiv machen.


     mtu 1492
     mtu 1492
Zeile 330: Zeile 330:


   suche und setze die beiden werte wie angegeben, Ist diese Option durch ein
   suche und setze die beiden werte wie angegeben, Ist diese Option durch ein
   "#" auskommentiert, den "#" weglöschen und dadurch die Option aktiv machen.
   "#" auskommentiert, den "#" wegl?en und dadurch die Option aktiv machen.


     mtu 1492
     mtu 1492
     mru 1492
     mru 1492


== Netzwerk Verbindung prüfen ==
== Netzwerk Verbindung pr?=


Ein erfolgreicher PING ist Grundlage aller weiteren Forschungen bei Netzwerkproblemen.
Ein erfolgreicher PING ist Grundlage aller weiteren Forschungen bei Netzwerkproblemen.
Zeile 344: Zeile 344:
   ping 192.168.115.90
   ping 192.168.115.90


Steht die Verbindung, so stellt sich die Frage der Zuverlässigkeit und Geschwindigkeit. Ruhige Momente im Netzwerk sollten genutzt werden, um mit "iperf" die Up/Down Geschwindigkeiten zu ermitteln.
Steht die Verbindung, so stellt sich die Frage der Zuverlä³³igkeit und Geschwindigkeit. Ruhige Momente im Netzwerk sollten genutzt werden, um mit "iperf" die Up/Down Geschwindigkeiten zu ermitteln.


  // auf dem Server
  // auf dem Server
Zeile 354: Zeile 354:
Das Programm gibts es hier: http://dast.nlanr.net/projects/Iperf/
Das Programm gibts es hier: http://dast.nlanr.net/projects/Iperf/


Beispielhaft habe ich 2 TDSL Verträge ausgemessen. Man sieht ganz deutlich, dass bei gleichzeitiger Nutzung von up und down Stream die Bandbreite zum Teil dramatisch einbricht. Hier scheint besonders die Leitungsqualität eine Rolle zu spielen.
Beispielhaft habe ich 2 TDSL Vertr䧥 ausgemessen. Man sieht ganz deutlich, dass bei gleichzeitiger Nutzung von up und down Stream die Bandbreite zum Teil dramatisch einbricht. Hier scheint besonders die Leitungsqualit䴠eine Rolle zu spielen.


  TDSL 1500 - 84.163.90.168 (raib181)
  TDSL 1500 - 84.163.90.168 (raib181)
Zeile 378: Zeile 378:


   (als (Benutzernamen=)root eingelogged?!)
   (als (Benutzernamen=)root eingelogged?!)
   Adv.Edit (notepad ähnlich) starten (im "StarT"-Menü, Editoren->Advanced Editor)
   Adv.Edit (notepad 䨮lich) starten (im "StarT"-Men?toren->Advanced Editor)
   a) /etc/rc.config:
   a) /etc/rc.config:
       START_ATALK="no" auf START_ATALK="yes"
       START_ATALK="no" auf START_ATALK="yes"
Zeile 385: Zeile 385:
   b) /etc/atalk/atalkd.conf
   b) /etc/atalk/atalkd.conf
       eth0  auf    eth1
       eth0  auf    eth1
       # nur ändern, wennn 100 Mbit-Karte eth1 ist (Network/Basic -> Network card configuration)
       # nur 䮤ern, wennn 100 Mbit-Karte eth1 ist (Network/Basic -> Network card configuration)
   c) /etc/atalk/AppleVolumes.default
   c) /etc/atalk/AppleVolumes.default
       Zeile ganz unten mit nur der Tilde
       Zeile ganz unten mit nur der Tilde
       ~
       ~
       rauslöschen!
       rausl?en!
       neue Zeile (auch ganz unten)
       neue Zeile (auch ganz unten)
       /freigabe/mac "user" options:noadouble
       /freigabe/mac "user" options:noadouble
Zeile 398: Zeile 398:
       rcatalk start
       rcatalk start


       -> nach ca. 1 minute müsste "linus" sichtbar sein, ev. als
       -> nach ca. 1 minute m?"linus" sichtbar sein, ev. als
       linus/linus verbinden!
       linus/linus verbinden!


Zeile 410: Zeile 410:
       ===
       ===


       raib ist ein RAID 5 Array aus 3 unabhängigen firebird servern und einem Master.
       raib ist ein RAID 5 Array aus 3 unabh䮧igen firebird servern und einem Master.
       Zum einsatz kommt ein (selbstgebautes) Server Blade mit 4 Rechnern. Dazu muss
       Zum einsatz kommt ein (selbstgebautes) Server Blade mit 4 Rechnern. Dazu muss
       nach erfolgreicher Installation der Hardware-Scan beim booten (hwscan) deaktiviert
       nach erfolgreicher Installation der Hardware-Scan beim booten (hwscan) deaktiviert
Zeile 431: Zeile 431:
== Firebird Datenbank Crash? ==
== Firebird Datenbank Crash? ==


     konkrete Verwendung einzelner Befehle für fix, backup und restore.
     konkrete Verwendung einzelner Befehle f?, backup und restore.
     siehe ibreorg.bat in der Anlage. (der ist leider für Win32-DOS-Box!)
     siehe ibreorg.bat in der Anlage. (der ist leider f?32-DOS-Box!)
     die Befehle müssten auch unter linux so gehen. der Pfad ist aber
     die Befehle m? auch unter linux so gehen. der Pfad ist aber


     /opt/interbase/bin/gbak ....
     /opt/interbase/bin/gbak ....
Zeile 467: Zeile 467:
     REM 3) restore base
     REM 3) restore base
     REM
     REM
     REM zusätzlich noch "-i" wenn Indizes deaktiviert werden sollen
     REM zusä´ºlich noch "-i" wenn Indizes deaktiviert werden sollen
     REM
     REM
     %IBBIN%gbak -r -v -p 8192 -user "SYSDBA" -password "masterkey" %1_neu.gbk %1_neu.gdb
     %IBBIN%gbak -r -v -p 8192 -user "SYSDBA" -password "masterkey" %1_neu.gbk %1_neu.gdb
Zeile 480: Zeile 480:
     ===========
     ===========


     a) Backup-möglich aber fail beim Restore: wegen inkonsistenter Indizes
     a) Backup-m?ch aber fail beim Restore: wegen inkonsistenter Indizes
     ich habe mal erlebt, das foreign Key nicht mehr konsistent waren, und deshalb
     ich habe mal erlebt, das foreign Key nicht mehr konsistent waren, und deshalb
     der restore abgebrochen hat. Alle Indizes kann man jedoch als inaktiv restoren,
     der restore abgebrochen hat. Alle Indizes kann man jedoch als inaktiv restoren,
     (Option -i )
     (Option -i )
     nach löschen /clearen der "Schuldigen" kann man alle indizes wieder aktivieren,
     nach l?en /clearen der "Schuldigen" kann man alle indizes wieder aktivieren,
     wieder ein backup, wieder ein restore -> alles wieder gut.
     wieder ein backup, wieder ein restore -> alles wieder gut.
     (Sourcecode dazu im HeBuAdmin Projekt)
     (Sourcecode dazu im HeBuAdmin Projekt)
     damit der HebuAdmin alle indizes sehen kann braucht er "out.txt". Das ist die
     damit der HebuAdmin alle indizes sehen kann braucht er "out.txt". Das ist die
     Ausgabe eines erfolgreichen restores, der alle indizes enthält.
     Ausgabe eines erfolgreichen restores, der alle indizes enth䬴.
     Unter linux gibt man die Ausgabe von gbak mit 2>/freigabe/out.txt in eine Datei
     Unter linux gibt man die Ausgabe von gbak mit 2>/freigabe/out.txt in eine Datei
     aus.
     aus.
Zeile 497: Zeile 497:
     internal gds software consistency check (partner index description not found (175))
     internal gds software consistency check (partner index description not found (175))


     dieser Fehler tritt beim löschen eines Datensatzes auf, der eventuell durch einen
     dieser Fehler tritt beim l?en eines Datensatzes auf, der eventuell durch einen
     foreign key einer anderen Tabelle referenziert werden könnte. Ist dieser key
     foreign key einer anderen Tabelle referenziert werden k?e. Ist dieser key
     deactiviert so kann keine Aussage getroffen werden, ob das löschen ok ist, dieser
     deactiviert so kann keine Aussage getroffen werden, ob das l?en ok ist, dieser
     interne Fehler ist die Folge!!
     interne Fehler ist die Folge!!


Zeile 551: Zeile 551:
         $IPTABLES -X
         $IPTABLES -X


         # Verbindungen fr Testzwecke am eigenen Rechner ber das Loopback. Einige
         # Verbindungen f?r Testzwecke am eigenen Rechner ?ber das Loopback. Einige
         # lokale Prozesse wie BIND verwenden das Loopback fr die interne Kommunikation
         # lokale Prozesse wie BIND verwenden das Loopback f?r die interne Kommunikation
         $IPTABLES -A OUTPUT -o lo -j ACCEPT
         $IPTABLES -A OUTPUT -o lo -j ACCEPT
         $IPTABLES -A INPUT -i lo -j ACCEPT
         $IPTABLES -A INPUT -i lo -j ACCEPT


         # Alle externen Verbindungsversuche und ander Merkwrdigkeiten werden hier
         # Alle externen Verbindungsversuche und ander Merkw?rdigkeiten werden hier
         # aufgefangen, im SYSLOG vermerkt und dann unsch„dlich gemacht
         # aufgefangen, im SYSLOG vermerkt und dann unsch?dlich gemacht
         $IPTABLES -N nirwana
         $IPTABLES -N nirwana
         # $IPTABLES -A nirwana -p TCP -j LOG --log-prefix "NIRWANA: TCP "
         # $IPTABLES -A nirwana -p TCP -j LOG --log-prefix "NIRWANA: TCP "
Zeile 570: Zeile 570:
         $IPTABLES -I FORWARD -p tcp --tcp-flags SYN,RST SYN -j TCPMSS --clamp-mss-to-pmtu
         $IPTABLES -I FORWARD -p tcp --tcp-flags SYN,RST SYN -j TCPMSS --clamp-mss-to-pmtu


         # Für alle bestehenden ein- und ausgehenden Verbindungen. Dritte Regel
         # F?e bestehenden ein- und ausgehenden Verbindungen. Dritte Regel
         # verhindert alle Verbindungen die Auáen kommen
         # verhindert alle Verbindungen die Au᥮ kommen
         $IPTABLES -A FORWARD -i $DEV_LOC -o $DEV_EXT -m state --state ESTABLISHED,RELATED -j ACCEPT
         $IPTABLES -A FORWARD -i $DEV_LOC -o $DEV_EXT -m state --state ESTABLISHED,RELATED -j ACCEPT
         $IPTABLES -A FORWARD -i $DEV_EXT -o $DEV_LOC -m state --state ESTABLISHED,RELATED -j ACCEPT
         $IPTABLES -A FORWARD -i $DEV_EXT -o $DEV_LOC -m state --state ESTABLISHED,RELATED -j ACCEPT
Zeile 606: Zeile 606:




__zukünfiges thema: lokales umlenken lokaler Port traffics. Z.b. aller verkehr aus dem Internet
__zuk?s thema: lokales umlenken lokaler Port traffics. Z.b. aller verkehr aus dem Internet
     soll umgeleitet werden von "80" auf "8080".
     soll umgeleitet werden von "80" auf "8080".


Zeile 628: Zeile 628:
           Jason
           Jason


__zukünfiges thema: Bandbreiten verteilung: siehe artikel in c't 01/03. Kommt aber
__zuk?s thema: Bandbreiten verteilung: siehe artikel in c't 01/03. Kommt aber
     sicher stablier ab "suse 8.2", das es kernel >2.4.19 erfordert.
     sicher stablier ab "suse 8.2", das es kernel >2.4.19 erfordert.


Zeile 635: Zeile 635:
       chmod 755 /root/myfirewall.sh
       chmod 755 /root/myfirewall.sh


       macht man dieses Script ausführbar. Nun starten ...
       macht man dieses Script ausf?. Nun starten ...


       /root/myfirewall.sh
       /root/myfirewall.sh
Zeile 650: Zeile 650:
                   "start" und "stop" auswerten kann.
                   "start" und "stop" auswerten kann.


     d) Eintrag in /etc/rc.config ändern: IP_FORWARD="no" auf "yes"
     d) Eintrag in /etc/rc.config 䮤ern: IP_FORWARD="no" auf "yes"
       Eintrag wirksam machen mit SuSEconfig
       Eintrag wirksam machen mit SuSEconfig


Zeile 657: Zeile 657:
   * win32 outlook express clients sollen bei der email-Konten-Einstellung den
   * win32 outlook express clients sollen bei der email-Konten-Einstellung den
     Eintrag "smtp-Server:" von dem "wirklichen" Server auf die IP des Linux-Servers
     Eintrag "smtp-Server:" von dem "wirklichen" Server auf die IP des Linux-Servers
     umstellen können. POP Eintrag MUSS bleiben.
     umstellen k?n. POP Eintrag MUSS bleiben.
   * Der Linux Server muss ausgehende Mails mit 100 MBit/s annehmen, und
   * Der Linux Server muss ausgehende Mails mit 100 MBit/s annehmen, und
     lokal zwischenspeichern.
     lokal zwischenspeichern.
   * Der smtp Dienst von Linux muss eine autentifizierung des Users verlangen.
   * Der smtp Dienst von Linux muss eine autentifizierung des Users verlangen.
     (wie bei heutigen smtps üblich, mit dem gleichen Konto/pwd wie für pop3)
     (wie bei heutigen smtps ?, mit dem gleichen Konto/pwd wie f?3)
   * Der Linux Server sollte als "relay" fungieren, und die mail somit völlig
   * Der Linux Server sollte als "relay" fungieren, und die mail somit v?g
     unangetastet lassen.
     unangetastet lassen.
   * Durch die Identifizierung mit dem smtp "Konto-Name" muss der Linux Server
   * Durch die Identifizierung mit dem smtp "Konto-Name" muss der Linux Server
     ermitteln (in einer config-Datei) wer der wirkliche smtp Server im Internet
     ermitteln (in einer config-Datei) wer der wirkliche smtp Server im Internet
     ist. Der Server muss nun (in aller Ruhe) dafür sorgen dass die Mail zugestellt
     ist. Der Server muss nun (in aller Ruhe) daf?gen dass die Mail zugestellt
     wird. Es sollte kein "fester" relay-smtp für "alle" email-Konten benutzt werden.
     wird. Es sollte kein "fester" relay-smtp f?ot;alle" email-Konten benutzt werden.




Zeile 683: Zeile 683:
   ---------------
   ---------------


   Postfix wird bei der Version 8.2 standardmäßig installiert. Zur Überprüfung, ob postfix
   Postfix wird bei der Version 8.2 standardm䟩g installiert. Zur Ü¢erpr? ob postfix
   installiert und aktiv ist, wie folgt vorgehen:
   installiert und aktiv ist, wie folgt vorgehen:


Zeile 692: Zeile 692:


   In der nun angezeigten Liste sollte ein Eintrag postfix vorhanden sein. Ist dieser als aktiv
   In der nun angezeigten Liste sollte ein Eintrag postfix vorhanden sein. Ist dieser als aktiv
   gekennzeichnet und für die Runlevels 3 und 5 konfiguriert, ist alles Ok. Sollte der Eintrag
   gekennzeichnet und f? Runlevels 3 und 5 konfiguriert, ist alles Ok. Sollte der Eintrag
   postfix nicht vorhanden sein, muß das Programm evtl. nachinstalliert werden:
   postfix nicht vorhanden sein, muß das Programm evtl. nachinstalliert werden:


           - Runlevel-Editor ggf. wieder beenden
           - Runlevel-Editor ggf. wieder beenden
           - Aus dem YAST2-Kontrollzentrum "Software" auswählen
           - Aus dem YAST2-Kontrollzentrum "Software" ausw䨬en
           - Auswahl "Software installieren oder löschen"
           - Auswahl "Software installieren oder l?en"
           - Im Kombinationsfeld Filter den Eintrag "Suche" auswählen und im Suchfeld
           - Im Kombinationsfeld Filter den Eintrag "Suche" ausw䨬en und im Suchfeld
             postfix eingeben und auf die Schaltfläche "Suche" klicken
             postfix eingeben und auf die Schaltfl䣨e "Suche" klicken
           - in der Paketliste postfix auswählen und auf Schaltfläche "Akzeptieren" klicken
           - in der Paketliste postfix ausw䨬en und auf Schaltfl䣨e "Akzeptieren" klicken


   ----------------
   ----------------
Zeile 707: Zeile 707:


   Da SuSE versucht alle wichtigen Programme direkt aus YAST oder YAST2 heraus automatisch  
   Da SuSE versucht alle wichtigen Programme direkt aus YAST oder YAST2 heraus automatisch  
   zu konfigurieren, wir aber das Mail-System unseren Bedürfnissen explizit anpassen wollen,
   zu konfigurieren, wir aber das Mail-System unseren Bed?sen explizit anpassen wollen,
   muß die automatische Konfiguration für postfix abgeschaltet werden:
   muß die automatische Konfiguration f?tfix abgeschaltet werden:
           - Im YAST2-Kontrollzentrum "System|Editor für /etc/sysconfig-Dateien" auswählen
           - Im YAST2-Kontrollzentrum "System|Editor f?c/sysconfig-Dateien" ausw䨬en
           - Dann Auswahl "Network|Mail|General"
           - Dann Auswahl "Network|Mail|General"
           - Ändern des Eintrages "MAIL_CREATE_CONFIG" von yes auf no und Sysconfig-Editor  
           - Ä®dern des Eintrages "MAIL_CREATE_CONFIG" von yes auf no und Sysconfig-Editor  
             beenden
             beenden


Zeile 718: Zeile 718:
   Datei "main.cf" anpassen
   Datei "main.cf" anpassen


   Datei /etc/postfix/main.cf mit einem Editor öffnen. Die Einträge wie folgt ändern
   Datei /etc/postfix/main.cf mit einem Editor ?en. Die Eintr䧥 wie folgt 䮤ern
   oder das '#'-Zeichen entfernen :
   oder das '#'-Zeichen entfernen :


Zeile 742: Zeile 742:
   ---------------------------------------------------------------------------------
   ---------------------------------------------------------------------------------


   Folgende Erweiterung für DNS eintragen  
   Folgende Erweiterung f? eintragen  


   #--------------------------------------------------------------------------------
   #--------------------------------------------------------------------------------
Zeile 750: Zeile 750:




   Bei den E-Mail-Clients muß nun der neue SMTP-Server eingetragen werden.
   Bei den E-Mail-Clients muß nun der neue SMTP-Server eingetragen werden.


   Bei Outlook und Outlook-Express unter "Extras|Konten" die Registerkarte "E-Mail" auswählen.
   Bei Outlook und Outlook-Express unter "Extras|Konten" die Registerkarte "E-Mail" ausw䨬en.
   Dann mit einem Doppelklick die Eigenschaften des gewünschte Mailkontos öffnen. Auf der
   Dann mit einem Doppelklick die Eigenschaften des gew?e Mailkontos ?en. Auf der
   Registerkarte Server bei "Postausgang (SMTP)" die IP-Adresse des neuen Mail-Relays
   Registerkarte Server bei "Postausgang (SMTP)" die IP-Adresse des neuen Mail-Relays
   eintragen.
   eintragen.
Zeile 761: Zeile 761:
  Hier: Der eMail-Ausgangsstrom soll uns nicht die Bandbreite des Web-Shop mindern.
  Hier: Der eMail-Ausgangsstrom soll uns nicht die Bandbreite des Web-Shop mindern.


   * Noch nicht Teil dieses Budgets - aber bitte im Hinterkopf behalten: Durch Einträge
   * Noch nicht Teil dieses Budgets - aber bitte im Hinterkopf behalten: Durch Eintr䧥
     mit Hilfe von iptabels kann ab Kernel 2.4.20 die bandbreite gewisser dienste
     mit Hilfe von iptabels kann ab Kernel 2.4.20 die bandbreite gewisser dienste
     vorbestimmt werden. Ich suche mal den Artikel in der c't. Wir starten, wenn
     vorbestimmt werden. Ich suche mal den Artikel in der c't. Wir starten, wenn
Zeile 769: Zeile 769:


DNS-Adressen wechseln ganz im Gegensatz zu HTML-Inhalten nicht so
DNS-Adressen wechseln ganz im Gegensatz zu HTML-Inhalten nicht so
häufig. Deshalb will ich keinen vollständigen Proxy einsetzten. Aber ich
h䵦ig. Deshalb will ich keinen vollst䮤igen Proxy einsetzten. Aber ich
will nicht, dass jede (wiederholte) DNS Anfrage ins Internet rausgepustet
will nicht, dass jede (wiederholte) DNS Anfrage ins Internet rausgepustet
wird! Bis sich alle Datenbanken weltweit angeglichen haben kann schon mal
wird! Bis sich alle Datenbanken weltweit angeglichen haben kann schon mal
ein halber Tag vergehen, also können wir auch guten gewissens DNS anfragen
ein halber Tag vergehen, also k?n wir auch guten gewissens DNS anfragen
cache, etwa mit einer Haltbarkeit der cache inhalte von 10 min ?!. Deshalb
cache, etwa mit einer Haltbarkeit der cache inhalte von 10 min ?!. Deshalb
ist ein Caching unbedenklich, und auch besonders lohnend, da einige UDP/TCP
ist ein Caching unbedenklich, und auch besonders lohnend, da einige UDP/TCP
Verbindungsaufbau-Vorgänge lokal abgewickelt werden können!
Verbindungsaufbau-Vorg䮧e lokal abgewickelt werden k?n!
Die Idee liegt nahe, hey man könnte den Linux-Server doch auch als
Die Idee liegt nahe, hey man k?e den Linux-Server doch auch als
Name-Server (DNS-relay) einsetzen. Egal welcher Provider dann angewählt ist
Name-Server (DNS-relay) einsetzen. Egal welcher Provider dann angew䨬t ist
(=welcher nameserver auch immer angegeben werden muss) der lokale DNS-Server
(=welcher nameserver auch immer angegeben werden muss) der lokale DNS-Server
leitet alle Anfragen immer  an die richtige Adresse (nämlich an den Nameserver
leitet alle Anfragen immer  an die richtige Adresse (nä­¬ich an den Nameserver
draussen im INternet) weiter. Wie die jeweiligen namenserver heissen steht ja
draussen im INternet) weiter. Wie die jeweiligen namenserver heissen steht ja
in der /etc/resolv.conf. Die Clients müssen nix mehr umstellen (im Feld
in der /etc/resolv.conf. Die Clients m?nix mehr umstellen (im Feld
Nameserver)! Gateway UND Nameserver haben dann die gleiche Zieladresse. Hier ist die Lösung:  
Nameserver)! Gateway UND Nameserver haben dann die gleiche Zieladresse. Hier ist die L?g:  


Zuerst werden die Pakete [bind9] aus der Serie [n] sowie die [bind9-utils]  
Zuerst werden die Pakete [bind9] aus der Serie [n] sowie die [bind9-utils]  
Zeile 878: Zeile 878:


  Jetzt ist noch in der Datei "/etc/resolv.conf" anzugeben, dass man zur  
  Jetzt ist noch in der Datei "/etc/resolv.conf" anzugeben, dass man zur  
  Namensauflösung den lokalen DNS-Server benutzt.
  Namensaufl?g den lokalen DNS-Server benutzt.


  ------------------------------------------------------------------------
  ------------------------------------------------------------------------
Zeile 888: Zeile 888:


   
   
Damit die "/etc/resolv.conf" nicht bei jeder Einwahl wieder überschrieben
Damit die "/etc/resolv.conf" nicht bei jeder Einwahl wieder ?hrieben
wird muss der Parameter  
wird muss der Parameter  


Zeile 897: Zeile 897:




Damit wieder alles seine Richtigkeit hat muss nun SuSEconfig ausgeführt werden (nicht sicher, ob das notwendig ist)
Damit wieder alles seine Richtigkeit hat muss nun SuSEconfig ausgef?erden (nicht sicher, ob das notwendig ist)


  SuSEconfig
  SuSEconfig
Zeile 904: Zeile 904:




  Nun müssen die neuen Gegebenheiten der Firewall mitgeteilt werden. Folgende  
  Nun m?die neuen Gegebenheiten der Firewall mitgeteilt werden. Folgende  
  Zeilen werden im Script "/root/fwdsl.start" nach der Sektion  
  Zeilen werden im Script "/root/fwdsl.start" nach der Sektion  


  "# E-Mail zum relayen"  
  "# E-Mail zum relayen"  


  hinzugefügt.
  hinzugef?  --------------------------------------------------------------------------------
 
  --------------------------------------------------------------------------------
   # DNS-Forwarding
   # DNS-Forwarding


Zeile 922: Zeile 920:




   Zum Abschluß werden auf den Windows-Clients in den Netzwerkeinstellungen bei den
   Zum Abschluß werden auf den Windows-Clients in den Netzwerkeinstellungen bei den
   TCP/IP-Eigenschaften unter Gateway und DNS die IP-Adresse des LINUX-Servers
   TCP/IP-Eigenschaften unter Gateway und DNS die IP-Adresse des LINUX-Servers
   angegeben.
   angegeben.
Zeile 928: Zeile 926:
== Fernwartung einiger Rechner im Netz von aussen via InterNet via VNC ==
== Fernwartung einiger Rechner im Netz von aussen via InterNet via VNC ==


     (beide Systeme (Zielsystem & Remotesystem) müssen eigentlich nur im InterNet
     (beide Systeme (Zielsystem & Remotesystem) m?eigentlich nur im InterNet
     sein! Der eine z.B. via ISDN, der andere z.B. via DSL, super natürlich: beide via DSL)
     sein! Der eine z.B. via ISDN, der andere z.B. via DSL, super nat?: beide via DSL)


     auf jedem Win32-Ziel-Rechner installiert man den VNC-Server:
     auf jedem Win32-Ziel-Rechner installiert man den VNC-Server:
     (freier download unter www.tightvnc.com) Das myfirewall-Script muss
     (freier download unter www.tightvnc.com) Das myfirewall-Script muss
     für je einen Rechner um eine Script-Zeile erweitert werden.
     f?einen Rechner um eine Script-Zeile erweitert werden.


     Es gibt auch einen Viewer(Client) für den MAC
     Es gibt auch einen Viewer(Client) f? MAC
     http://sourceforge.net/projects/cotvnc/
     http://sourceforge.net/projects/cotvnc/


     # VNC für Brutus, Displaynummer=0 oder nix angeben
     # VNC f?tus, Displaynummer=0 oder nix angeben
     $IPTABLES -A PREROUTING -t nat -p tcp -i $DEV_EXT --dport 5900 -j DNAT --to 192.168.115.1:5900
     $IPTABLES -A PREROUTING -t nat -p tcp -i $DEV_EXT --dport 5900 -j DNAT --to 192.168.115.1:5900
     # VNC für Fred, Displaynummer=1
     # VNC f?d, Displaynummer=1
     $IPTABLES -A PREROUTING -t nat -p tcp -i $DEV_EXT --dport 5901 -j DNAT --to 192.168.115.3:5900
     $IPTABLES -A PREROUTING -t nat -p tcp -i $DEV_EXT --dport 5901 -j DNAT --to 192.168.115.3:5900
     # VNC für joe
     # VNC f?
     $IPTABLES -A PREROUTING -t nat -p tcp -i $DEV_EXT --dport 5902 -j DNAT --to 192.168.115.8:5900
     $IPTABLES -A PREROUTING -t nat -p tcp -i $DEV_EXT --dport 5902 -j DNAT --to 192.168.115.8:5900
     # usw. ...
     # usw. ...
Zeile 949: Zeile 947:
     Adresse im InterNet (Rechter Mausklick auf die HomePage, Quelltext anzeigen, IP-Adresse
     Adresse im InterNet (Rechter Mausklick auf die HomePage, Quelltext anzeigen, IP-Adresse
     rauskopieren). Beim einloggen gibt man neben der (aktuellen) IP die Displaynummer an, also
     rauskopieren). Beim einloggen gibt man neben der (aktuellen) IP die Displaynummer an, also
     217.217.20.118:1 (für z.B. fred) und das passwort wie immer. ACHTUNG: immer auf beiden
     217.217.20.118:1 (f?. fred) und das passwort wie immer. ACHTUNG: immer auf beiden
     Seiten 16 bit farben (= High-Color) verwenden! Den Rechner, den man fernwarten will:
     Seiten 16 bit farben (= High-Color) verwenden! Den Rechner, den man fernwarten will:
     sollte ganz ganz schnell sein (ich meine das ernst), und ne super schnelle 2D Grafikkarte
     sollte ganz ganz schnell sein (ich meine das ernst), und ne super schnelle 2D Grafikkarte
     haben (z.B. Matrox G450). Der Rechner mit dem man fernwarten will: Der dreht leider eigentlich
     haben (z.B. Matrox G450). Der Rechner mit dem man fernwarten will: Der dreht leider eigentlich
     (fast) immer Däumchen, der kann ruhig alt und schwach sein!!! Hier sollte nur eine gute Anbindung
     (fast) immer Däµ­chen, der kann ruhig alt und schwach sein!!! Hier sollte nur eine gute Anbindung
     ans Internet sichergestellt werden! Hilfreich: etwas größere Auslösung wie das Ziel-System, aber
     ans Internet sichergestellt werden! Hilfreich: etwas gr?e Ausl?g wie das Ziel-System, aber
     auch High-Color! Wichtig: Passwörter möglichst >8 Zeichen.
     auch High-Color! Wichtig: Passw?r m?chst >8 Zeichen.


     VNC - Remote Control des Servers mit Hilfe von z.B. einer Windows-Maschine.
     VNC - Remote Control des Servers mit Hilfe von z.B. einer Windows-Maschine.
     Für Leute, die nicht in den Serverraum laufen möchten, oder kein Geld mehr
     F?te, die nicht in den Serverraum laufen m?en, oder kein Geld mehr
     für einen Monitor am Linux-Rechner haben, weil das Betriebssystem so teuer war ;-)
     f?en Monitor am Linux-Rechner haben, weil das Betriebssystem so teuer war ;-)


     vnc-paket installieren (mit Yast 2)
     vnc-paket installieren (mit Yast 2)
Zeile 974: Zeile 972:
     ========
     ========


     Damit der VNC- Server beim booten allein gestartet wird, genügt ein Eintrag in /etc/rc.d/rc.
     Damit der VNC- Server beim booten allein gestartet wird, gen?n Eintrag in /etc/rc.d/rc.
     Die Zeile, die ganz unten (Suse 8.0: vor "exit 0") ergänzt werden muß lautet:
     Die Zeile, die ganz unten (Suse 8.0: vor "exit 0") erg䮺t werden muß lautet:


                   su -l root -c "vncserver -cc 3 :1 -alwaysshared"
                   su -l root -c "vncserver -cc 3 :1 -alwaysshared"
Zeile 985: Zeile 983:
     ========
     ========


     ** Obige Methode läuft nicht mehr unter Suse 8.1.
     ** Obige Methode l䵦t nicht mehr unter Suse 8.1.


     Bemerkung: Es war mal bei 8.0 notwendig an einer Maschine, die den vncserver nicht
     Bemerkung: Es war mal bei 8.0 notwendig an einer Maschine, die den vncserver nicht
Zeile 994: Zeile 992:
     ========
     ========


     YaST2 / System / Editor für /etc/sysconfig-Dateien / Desktop / Display Manager:
     YaST2 / System / Editor f?c/sysconfig-Dateien / Desktop / Display Manager:
     Die Variable DisplayManager_Remote_Access auf yes setzen.
     Die Variable DisplayManager_Remote_Access auf yes setzen.
     Auf der Konsole rcxdm restart eingeben.
     Auf der Konsole rcxdm restart eingeben.
     YaST2 / Netzwerkdienste / Netzwerkdienste (inetd) aufmachen und die 4
     YaST2 / Netzwerkdienste / Netzwerkdienste (inetd) aufmachen und die 4
     Einträge mit "VNC" im Namen aktivieren.
     Eintr䧥 mit "VNC" im Namen aktivieren.
     Andere Computer (auch Windows-Maschinen) können nun über den Browser den
     Andere Computer (auch Windows-Maschinen) k?n nun ?en Browser den
     VNC-Server ansprechen. Dazu benötigt er Java.
     VNC-Server ansprechen. Dazu ben?t er Java.
     Die URL lautet: http://Vncserver-Rechner:5810.
     Die URL lautet: http://Vncserver-Rechner:5810.


     Wer auf der Client-Seite nicht im Webbrowser arbeiten will, benutzt den VNCViewer.
     Wer auf der Client-Seite nicht im Webbrowser arbeiten will, benutzt den VNCViewer.
     Für diese Anwendung lautet nun der angefragte Hostname "Vncserver-Rechner:10"
     F?se Anwendung lautet nun der angefragte Hostname "Vncserver-Rechner:10"
     oder "Vncserver-Rechner:11", auch wieder mit IP-Adresse des Zielsystems möglich,
     oder "Vncserver-Rechner:11", auch wieder mit IP-Adresse des Zielsystems m?ch,
     z.B. 192.168.115.93:10.
     z.B. 192.168.115.93:10.


Zeile 1.020: Zeile 1.018:
     (es soll niemand mehr sagen das sei schwierig!)
     (es soll niemand mehr sagen das sei schwierig!)


     nur für Suse 7.2 notwendig, (HISTORISCH - NICHT NOTWENDIG AB 7.3):
     nur f?e 7.2 notwendig, (HISTORISCH - NICHT NOTWENDIG AB 7.3):


     Einspielen des Kernels 2.4.7
     Einspielen des Kernels 2.4.7


     Dies ist notwendig, da masquerading irgend einen Bug hat. Auch hat sich das
     Dies ist notwendig, da masquerading irgend einen Bug hat. Auch hat sich das
     einspielen als sehr heilsam für das ganze System herausgestellt. (Auch TDSL!)
     einspielen als sehr heilsam f? ganze System herausgestellt. (Auch TDSL!)


     downloaden des Kernels (als rpm) von
     downloaden des Kernels (als rpm) von
Zeile 1.035: Zeile 1.033:
     Quelle (nun den obigen rpm lokalisieren)
     Quelle (nun den obigen rpm lokalisieren)
     markieren mit Leertaste, damit installiert wird
     markieren mit Leertaste, damit installiert wird
     <F10> zum Installieren drücken
     <F10> zum Installieren dr?    YaST beenden, ein cleanup wird durchgef?  mk_initrd <ENTER>
    YaST beenden, ein cleanup wird durchgeführt
    mk_initrd <ENTER>
     lilo <ENTER>
     lilo <ENTER>
     -> system neu booten!!!
     -> system neu booten!!!
Zeile 1.050: Zeile 1.046:
     Moment im Internet sichtbar ist, und patched die html-Seiten drausen
     Moment im Internet sichtbar ist, und patched die html-Seiten drausen
     im InterNet, um die aktuelle IP Adresse den surfern draussen unterzujubeln.
     im InterNet, um die aktuelle IP Adresse den surfern draussen unterzujubeln.
     Mehr Infos über RouteIP im InterNet www.cargobay.de**
     Mehr Infos ?outeIP im InterNet www.cargobay.de**
     Mehr Infos über keepcon im InterNet www.cargobay.de
     Mehr Infos ?eepcon im InterNet www.cargobay.de


     ** RouteIP wird langfristig durch keepcon ersetzt.
     ** RouteIP wird langfristig durch keepcon ersetzt.
Zeile 1.064: Zeile 1.060:


       Windows XP Professional zeigt nach eigenem Neustart den samba-share
       Windows XP Professional zeigt nach eigenem Neustart den samba-share
       als "gestört" an (rotes kleines "X" im Symbol). Der erste Zugriff
       als "gest?quot; an (rotes kleines "X" im Symbol). Der erste Zugriff
       erfolgt im Windows Explorer dann auch nach eine langen Denkpause.
       erfolgt im Windows Explorer dann auch nach eine langen Denkpause.


       * Umstellen von "security=share" auf "security=user" im smb.conf
       * Umstellen von "security=share" auf "security=user" im smb.conf
         brachte nichts! (incl. der ganzen Arbeit, die damit zusammenhängt
         brachte nichts! (incl. der ganzen Arbeit, die damit zusammenh䮧t
         (User anlegen)).
         (User anlegen)).
       * Umstellen der "Richtlinien" wie es die Newsgroups vorgeben brachte
       * Umstellen der "Richtlinien" wie es die Newsgroups vorgeben brachte
         auch nichts!
         auch nichts!


         Start->Ausführen->gpedit.msc
         Start->Ausf?>gpedit.msc


         Computerkonfig->Windows-Einstellungen->Sicherheitseinstellungen->Lokale Richtlininen->
         Computerkonfig->Windows-Einstellungen->Sicherheitseinstellungen->Lokale Richtlininen->
         Sicherheitsoptionen
         Sicherheitsoptionen


         Microsoft-Netzwerk (client): Unverschlüsseltes Kennwort an SMB-Server von Drittanbietern senden
         Microsoft-Netzwerk (client): Unverschl?es Kennwort an SMB-Server von Drittanbietern senden


       Idee: ev. alles auf einen echten samba PDC umstellen!
       Idee: ev. alles auf einen echten samba PDC umstellen!
       todo: gpedit.msc mal beschreiben!
       todo: gpedit.msc mal beschreiben!


  Die Lösung: der Firewall auf dem samba Server sperrte den Port 445. Dieser ist
  Die L?g: der Firewall auf dem samba Server sperrte den Port 445. Dieser ist
             jedoch für die Kommunikation notwendig. Hier die Gesamtbeschreibung
             jedoch f? Kommunikation notwendig. Hier die Gesamtbeschreibung
             die ich mit Hilfe von Walter Mautner erstellt habe.
             die ich mit Hilfe von Walter Mautner erstellt habe.


   > Eventuell noch Port 445 dazugeben.
   > Eventuell noch Port 445 dazugeben.


  Walter! Das war die Lösung (freu), Win XP versucht scheinbar vorrangig am
  Walter! Das war die L?g (freu), Win XP versucht scheinbar vorrangig am
  Port 445 rumzuposaunen. Nur wenn ein hartnäckiger User auf den Windows
  Port 445 rumzuposaunen. Nur wenn ein hartn䣫iger User auf den Windows
  Explorer einschlägt springt er auf den Port 137ff um!
  Explorer einschl䧴 springt er auf den Port 137ff um!




Zeile 1.109: Zeile 1.105:
   selbstgemacht via iptables).
   selbstgemacht via iptables).
   Weil wir gerne alles kontrollieren wirkt diese auch auf das intene Netz:
   Weil wir gerne alles kontrollieren wirkt diese auch auf das intene Netz:
   Pflichtbewust wurden jedoch die smb Ports 136,137,138,445 geöffnet, damit
   Pflichtbewust wurden jedoch die smb Ports 136,137,138,445 ge?et, damit
   die Clients mit samba sprechen können.
   die Clients mit samba sprechen k?n.


   Alles ging -- ausser bei Windows XP Prof Clients, diese hatten beim ersten
   Alles ging -- ausser bei Windows XP Prof Clients, diese hatten beim ersten
Zeile 1.119: Zeile 1.115:
   sofort nach einem Neustart des Clients). Danach wieder diese Denkpause.
   sofort nach einem Neustart des Clients). Danach wieder diese Denkpause.


   Die Lösung war: XP Prof SP1 versucht eine Kontaktaufnahme mit dem
   Die L?g war: XP Prof SP1 versucht eine Kontaktaufnahme mit dem
   Samba-Server auf Port 80 (in Worten !achtzig!). Wir hatten das als "Angriff"
   Samba-Server auf Port 80 (in Worten !achtzig!). Wir hatten das als "Angriff"
   aus dem internen Netz gewertet und geDROPed. (Auf port 80 haben wir keinen
   aus dem internen Netz gewertet und geDROPed. (Auf port 80 haben wir keinen
   dienst auf unserem Server!). Bis XP gemerkt hatte, dass auf port 80 nix
   dienst auf unserem Server!). Bis XP gemerkt hatte, dass auf port 80 nix
   geht, machte es einen Kurzschlaf (eben diese 8 Sekunden). Jetzt, nachdem wir
   geht, machte es einen Kurzschlaf (eben diese 8 Sekunden). Jetzt, nachdem wir
   (grmpf!) halt Port 80 geöffnet haben geht alles ohne Zeitverzögerung.
   (grmpf!) halt Port 80 ge?et haben geht alles ohne Zeitverz?ung.
   Unnötig zu sagen das dieses Verhalten ausschließlich XP hat!
   Unn? zu sagen das dieses Verhalten ausschlie߬ich XP hat!
   "
   "


Zeile 1.138: Zeile 1.134:
   * DROP: Paket vernichten, keine Benachrichtigung des Absenders.
   * DROP: Paket vernichten, keine Benachrichtigung des Absenders.


   * REJECT: Ähnlich DROP wird das Paket abgewiesen, jedoch erhält der Absender
   * REJECT: Ĩnlich DROP wird das Paket abgewiesen, jedoch erh䬴 der Absender
   eine Antwort auf das Paket.
   eine Antwort auf das Paket.


Zeile 1.146: Zeile 1.142:
   "
   "


  Beim Verbindungsversuch vom Windows XP Explorer zum Samba-Server ist mir aufgefallen, daß der XP-Client über den Port
  Beim Verbindungsversuch vom Windows XP Explorer zum Samba-Server ist mir aufgefallen, daß der XP-Client ?en Port
  1039 bzw 1040 eine Verbindung zum Port 80 des Linux-Servers aufzubauen versucht (sichtbar gemacht mit
  1039 bzw 1040 eine Verbindung zum Port 80 des Linux-Servers aufzubauen versucht (sichtbar gemacht mit
  tail -f /var/log/messages auf der Linux-Box. Hier werden die Drops, die der Kernel verursacht, protokolliert). Nach
  tail -f /var/log/messages auf der Linux-Box. Hier werden die Drops, die der Kernel verursacht, protokolliert). Nach
  Öffnen des Ports 80 für Pakete vom internen Netz gab es keine Wartezeiten beim Verbindungsaufbau mehr.
  Ö¦fnen des Ports 80 f?ete vom internen Netz gab es keine Wartezeiten beim Verbindungsaufbau mehr.


  Im folgenden ein Auszug aus dem aktuellen Firewall-Skript. Dabei sind die letzten beiden Zeilen von Bedeutung.
  Im folgenden ein Auszug aus dem aktuellen Firewall-Skript. Dabei sind die letzten beiden Zeilen von Bedeutung.
Zeile 1.199: Zeile 1.195:
== ATX-Netzteile ==
== ATX-Netzteile ==


  Das beschriebene Linux-System wird überwiegend als Server benutzt. Es muss
  Das beschriebene Linux-System wird ?egend als Server benutzt. Es muss
  sichergestellt sein, dass nach einem Stromausfall das System selbst wieder
  sichergestellt sein, dass nach einem Stromausfall das System selbst wieder
  hochfährt.
  hochf䨲t.


  * In der Regel kann man bei modernen ATX - Boards im BIOS einstellen was
  * In der Regel kann man bei modernen ATX - Boards im BIOS einstellen was
   im "Power Fail" Fall, gemacht werden soll. "Always ON" würde hier die
   im "Power Fail" Fall, gemacht werden soll. "Always ON" w?ier die
   richtige Einstellung lauten.
   richtige Einstellung lauten.


Zeile 1.212: Zeile 1.208:


   1) Das ATX-Netzteil besitzt einen breiten Spannungsstecker, der im Main-
   1) Das ATX-Netzteil besitzt einen breiten Spannungsstecker, der im Main-
       board steckt. Hier ist das !grüne Kabel! (von dem es nur eines gibt) ca.
       board steckt. Hier ist das !gr?bel! (von dem es nur eines gibt) ca.
       1 cm oberhalb des Steckers abzuschneiden (1cm deshalb, damit man ggf.
       1 cm oberhalb des Steckers abzuschneiden (1cm deshalb, damit man ggf.
       die alte Funktion wieder herstellen kan).
       die alte Funktion wieder herstellen kan).
   2) Von einem unbenutzen Stromstecker ist eines der mittleren schwarzen
   2) Von einem unbenutzen Stromstecker ist eines der mittleren schwarzen
       Kabel nahe am Stecker abzuscheiden.
       Kabel nahe am Stecker abzuscheiden.
   3) Beide Kabel nun durch alle Kabelbinder hindurch zurückziehen damit sie
   3) Beide Kabel nun durch alle Kabelbinder hindurch zur?hen damit sie
       ab dem Netzteilaustritt freiliegen. Nun beide abisolieren, und die
       ab dem Netzteilaustritt freiliegen. Nun beide abisolieren, und die
       blanken Ende "verzwirblen". Mit Isolierband die blanke Stelle isolieren
       blanken Ende "verzwirblen". Mit Isolierband die blanke Stelle isolieren
       und das neue Kabelpaar schön an vorhandene Kabelstränge mit Kabelbinder
       und das neue Kabelpaar sch?n vorhandene Kabelstr䮧e mit Kabelbinder
       fixieren.
       fixieren.


Zeile 1.235: Zeile 1.231:


  eingeben. Sofort waren die Dateien in /root/usb/ sichtbar. Ich speicherte was drauf mit  
  eingeben. Sofort waren die Dateien in /root/usb/ sichtbar. Ich speicherte was drauf mit  
  "cp". Zog den Stick raus: Wieder eine Enttäuschung: auf dem Win XP war die Datei nicht
  "cp". Zog den Stick raus: Wieder eine Enttäµ³chung: auf dem Win XP war die Datei nicht
  sichtbar. Also wurde die Datei nicht wirklich geschrieben (HEUL!)? Also versuchte
  sichtbar. Also wurde die Datei nicht wirklich geschrieben (HEUL!)? Also versuchte
  ich vor dem Rausziehen beim nächsten mal unzumounten.
  ich vor dem Rausziehen beim n䣨sten mal unzumounten.


  umount /dev/sda
  umount /dev/sda


  (soviel zu Thema hotplug!) OK, das ging dann. Mein Wunsch war, beim Einsetzen des
  (soviel zu Thema hotplug!) OK, das ging dann. Mein Wunsch war, beim Einsetzen des
  USB-Sticks das Lied darauf (.mp3) abzuspielen. In meiner Naivität plazierte ich einfach
  USB-Sticks das Lied darauf (.mp3) abzuspielen. In meiner Naivitä´ plazierte ich einfach
  ein Script Namens /etc/hotplug/usb/usbfs. Es passierte natürlich nichts. grmpf!
  ein Script Namens /etc/hotplug/usb/usbfs. Es passierte nat? nichts. grmpf!


  In fstab habe ich aber eine Zeile eingetragen, die mir das USB-Device auf den Desktop
  In fstab habe ich aber eine Zeile eingetragen, die mir das USB-Device auf den Desktop
  gezaubert hat (was mir nix bringt!). Mein Spieltrieb animierte mich durch umount das
  gezaubert hat (was mir nix bringt!). Mein Spieltrieb animierte mich durch umount das
  device auszuhängen. Das Desktop Symbol blieb - es lies sich auch fehlerfrei anklicken,
  device auszuh䮧en. Das Desktop Symbol blieb - es lies sich auch fehlerfrei anklicken,
  was einen Mount verursachte!
  was einen Mount verursachte!


  Also ein Script via hotplug zu starten wenn der usb reingeteckt wird gebe ich
  Also ein Script via hotplug zu starten wenn der usb reingeteckt wird gebe ich
  hiermit auf!
  hiermit auf!

Version vom 27. Juli 2005, 09:46 Uhr

Zur Verwendung des OrgaMon im Netzwerk, (also mit mehreren Arbeitsplätzen) empfehlen wir einen Server mit SuSE Linux Proffesional zu verwenden. Diese Dokumentation beschreibt viele Apsekte dieses mächtigen Serverbestriebssystem im Zusammen mit dem OrgaMon. Auf dem Server stellt dann Dateiablage-Platz (via Samba) und einen Datenbankserver-Dienst (via Firebird) zur Verf?

rsync als Backuplösung
immer genaue Uhrzeit
Festplatte im Netz mit samba
xinetd als Port Redirector
mysql - Datenbank
firebird - Datenbank
Linux Systeme über das Netzwerk installieren
Wiki Server Installation

Linux Grundwissen

Archive

bunzip2 <file>     // auspacken einer .bz2 Datei
gzip -d <file>     // auspacken einer .gz Datei
tar -xf <file>     // auspacken einer .tar Datei

System

halt               // Ausschalten (Herunterfahren)
reboot             // Neustart
joe                // ein textbasierter Editor
# !/bin/bash       // erste Zeile von Shell-Scripten 
kwrite             // ein grafischer Text/Script-Editor! (Nein vi ist nicht mein Fall!!)
ps x               // ausgeben aller laufenden Programme
                   // ev. mit z.B. "| grep smb" vervollst䮤igen
mc                 // dateimanager (wegen filefind)
df                 // Diskfree, zeigt Belegung/Mounting der Festplatten an
                   // Summer der Bytes freien Festplattenplatzes
du -s -h /pfad     // Summe aller Bytes in einem Pfades angeben
uname -a           // anzeige der aktuellen Kernel Version
uptime             // Anzeiger der Last und der Betriebsstunden

Netzwerk

/var/lib/dhcp/db/dchp.leases // Ermittlung der MAC Adressen angeschlossener Systeme
 

Traditionelles

./configure        // typische 3er Befehlskette zum compilieren&installieren eines open source
make               // projektes.
make install
 

Spezielles

sensors            // Temperatur der CPU und L?unktion pr?Details weiter unten)
dmesg              // auflisten, was die Hardware so zu bieten hat
 
play /opt/kde3/share/sounds/KDE_Beep_Beep.wav  
                   // Ausgabe von Musik
  
ldd -v <programmname> 
                   // kann auf einem System, auf dem alles l䵦t :-( gute auskunft
                   // geben was das "Programm" so alles noch mit l䤴 - bei einem 
                   // firebird ist so ziemlich
                   // interessant. Der "eigentliche" Server ist eingentlich 
                   // "libfbembedd.so", dieser wird
                   // hochgezogen, wenn fb_inet_Server geladen wird.

Downloadquelle f?lende Pakete: ftp.leo.org/pub/comp/os/unix/linux/suse/people/nashif/SuSE/SLES/x86

         oder bei rmpseek.com

Temperaturen überwachen mit sensors

1) Paket "sensors" muss installiert sein 2) Folgender "Setup" muss durchlaufen werden:

Zitat [1]

Im Prinzip l䤴 man einfach nur das Kernelmodul "i2c_sensor" mit

 modprobe i2c_sensor 

Danach f?an das Script

 sensors-detect 

aus. Bei dem Script habe ich eigentlich nur solange die Enter-Taste gedr?bis es durchgelaufen war. Nat? habe ich die Ausgaben gelesen, aber ich w?nicht, warum ich schlauer sein sollte, als die Leute, die die Software entwickelt und sinnvolle Werte angenommen haben. Das Script erzeugt die Datei /etc/sysconfig/lm_sensors. Ist dies getan und hat das Script entsprechende Chips gefunden und dort eingetragen, dann kopiert man wie angegeben das Startscript r?

 cp /usr/share/doc/packages/sensors/prog/init/lm_sensors.init.suse /etc/init.d/lm_sensors 

Wer m?e, dass nach jedem Neustart die Möglichkeit besteht, CPU-Temperatur und andere Messwerte zu Ü¢erwachen, der sollte noch

 chkconfig --add lm_sensors 

ausf? Eigentlich ist damit alles getan. Nach einem entsprechenden Start mit

 /etc/init.d/lm_sensors start 

kann durch Aufruf von

 sensors 

der Gesundheitszustand der Hardware abgefragt werden.

Erster (Kalt-)Start

Rechner an, gleich ins System-Bios gehen, dazu <Entf> dr? wenn die "Drives"-Erkennung l䵦t. Im BIOS nun ->Advanced?!->Boot Device 0-> von "HDD-0" auf "CDROM" umstellen, damit der Rechner von der DVD bootet. (das geht bei jedem BIOS anders) ->Suse 7.3 DVD rein

   (oder 8.0, sorry dann alles bissel anders: aber besser!!)
  ->Save and exit
  ...Rechner bootet neu, und macht den ersten (Warm-)Start

Suse DVD bootet ...

"Manual Installation" best䴩gen. Bei den Softwarepaketen, bitte folgendes 䮤ern: "+Server", "+Entwicklung", "+erfahrener Benutzer".

System->System->Boot->SPLASH->no das OS nur in den Textmodus (Console) booten lassen. Und den grafischen Login-Schirm unterdr?

a)

 joe /etc/inittab 
 aus
 id:5:initdefault
 macht man
 id:3:initdefault

b) in den Bootoptionen soll er einfach im Textmodus bleiben:

vga=normal splash=0


Mist: jetzt steht er zwar im Text Login aber per VNC kann man sich nicht mehr einloggen. Ich muss erst mit "init 5" in den Run-Level 5 wechseln. Warum?

Aufsetzen eines Installations Servers, der die SuSE DVD als ?as Netz Bootbares Medium anbietet:

mit Win32 nero den "Track speichern" mit dem Typ ISO das ISO Image auf den DHCP Server stellen das Image mit

 mount -o loop suse92.iso /mein/Verzeichnis

in das Dateisystem einh䮧en!

joe /etc/dhcp.conf

filename "pxelinix.0";

md /srv/tftpboot

Installationsquelle wechseln 1. YaST starten 2. Modul Software aufrufen 3. Installationsquelle wechseln 4. Hinzuf?FTP 5. Folgendes genau so eintragen:

Protokoll: [X] FTP Servername: ftp.gwdg.de Verzeichnis auf dem Server: pub/linux/suse/ftp.suse.com/suse/i386/9.2 Authentifikation: [X] Anonymous

syslinux installieren!

Konfiguration des tftp Servers


Erstellen Sie (falls es noch nicht existiert) das Verzeichnis /srv/tftpboot und /srv/tftpboot/pxelinux.cfg Wechseln Sie in das Verzeichnis Ihres Installationsrepositorys und kopieren Sie durch die Eingabe von: cp -a boot/loader/linux boot/loader/initrd boot/loader/message boot/loader/memtest /srv/tftpboot die Dateien linux initrd message memtest in das Verzeichnis /srv/tftpboot. Installieren Sie das Paket syslinux. Ist auf dem Installationsserver der SuSE Linux Enterprise Server 8 installiert, so laden Sie sich das Paket von: ftp.suse.com/pub/suse/i386/8.2/suse/i586/syslinux-1.62-375.i586.rpm herunter, und installieren es mit: rpm -Uhv syslinux-1.62-375.i586.rpm Ist auf dem Installationsserver eine SuSE Linux Version 8.1 oder 8.2 installiert, so installieren Sie das Paket mit YaST2 direkt von Ihren Installations-CDs. Kopieren Sie die Datei /usr/share/syslinux/pxelinux.0 durch die Eingabe von: cp -a /usr/share/syslinux/pxelinux.0 /srv/tftpboot in das Verzeichnis /srv/tftpboot. Wechseln Sie in das Verzeichnis Ihres Installationsrepositorys und kopieren Sie durch die Eingabe von: cp -a boot/loader/isolinux.cfg /srv/tftpboot/pxelinux.cfg/default die Datei isolinux.cfg nach /srv/tftpboot/pxelinux.cfg/default Editieren Sie die Datei /srv/tftpboot/pxelinux.cfg/default und entfernen Sie die Zeilen die mit: gfxboot readinfo framebuffer beginnen. F?ie in den append Zeilen der Label default failsafe und apic die folgenden Eintr䧥 an: insmod=e100 Dieser Eintrag bewirkt, daߠauf dem PXE-Client das Kernelmodul f?e Intel 100MBit/s Netzwerkkarte geladen wird. Dieser Eintrag ist abh䮧ig von der Hardware Ihres Clients, und muߠentsprechend ge䮤ert werden. Bei einer Broadcom GigaBit Netzwerkkarte w?ieser Eintrag insmod=bcm5700 lauten. netdevice=eth0 Dieser Eintrag spezifiziert das Netzwerkinterface des Clients, welches f? Netzwerkinstallation benutzt werden soll, und ist nur dann notwendig, wenn mehrere Netzwerkkarten in den Clients verbaut sind. Dieser Eintrag muߠdann entsprechend angepaߴ werden. Bei nur einer Netzwerkkarte kann dieser Eintrag komplett entfallen. install=nfs://192.168.100.1/usr/local/dist/SLES8 Dieser Eintrag legt den nfs Server und die Installationsquelle f? Installation der Clients fest, und muߠgegebenenfalls angepaߴ werden. Eine, f? SuSE Linux Enterprise Server 8 - Netzwerkinstallation, angepaߴe /srv/tftpboot/pxelinux.cfg/default finden Sie hier: default linux

  1. default

label linux

 kernel linux
 append initrd=initrd ramdisk_size=65536 insmod=e100 install=nfs://192.168.100.1/usr/local/dist/SLES8
  1. failsafe

label failsafe

 kernel linux
 append initrd=initrd ramdisk_size=65536 ide=nodma apm=off acpi=off insmod=e100 install=nfs://192.168.100.1/usr/local/dist/SLES8
  1. apic

label apic

 kernel linux
 append initrd=initrd ramdisk_size=65536 apic insmod=e100 install=nfs://192.168.100.1/usr/local/dist/SLES8
  1. manual

label manual

 kernel linux
 append initrd=initrd ramdisk_size=65536 manual=1
  1. rescue

label rescue

 kernel linux
 append initrd=initrd ramdisk_size=65536 rescue=1
  1. memory test

label memtest

 kernel memtest
  1. hard disk

label harddisk

 kernel linux
 append SLX=0x202

implicit 0 display message prompt 1 timeout 100

Festplatte einrichten

   Also wir machen 3 Partitionen:
   "boot"  kleine Mini-Partition: damit das booten immer klappt (ext2 oder ext3-Dateisystem)
   "swap"  mittlere Partition: da werden RAM Speicherbereiche rausgeschrieben,
           um Platz zu machen f?htigere Daten.
           Gr?= RAM * 2 oder mehr, aber immer gr? als das RAM!
   "linux" eigentlicher Betriebssystem Bereich und Anwender und
           Benutzerbereich
   Bei "Festplatte vor ..."
   den
   [X] Benutzerdefiniert w䨬en!
   3 Partitionen anlegen:
   0..2      Linux native  (ext2 oder ext3)       mounting-point "/boot"
   3..84     Linux swap    -----        ----------------------
   85..5004  Linux native  (!reiserfs!) mounting-point "/"
  2. Platte mal noch offen lassen

"Standard mit Office" installieren

  "Benutzername usw." (sorry weis nicht mehr genau wann das kommt).
  Rechnername: linus
  pwd f? root (=Administrator im win32 Dialekt) erst mal auch so eingeben
  pwd: linus
  "Monitor 䮤ern"
  EIZO-F56 aber beachten dass die vorgeschlagene Wiederholfrequenz
  herunterkorrigiert wird. etwa 70 Hz-72 Hz, was der jeweilige Monitor
  vertr䧴.
  "Hardware konfigurieren" w䨬en!
  ->Netzwerk,
    erste Netzwerkkarte
    100 MBit-Karte: KarteIP fest, zb. 192.168.100.72, Maske so ok
    "Rechnername und Nameserver" w䨬en!
     ->name:    linus
     ->dom䮥:  pcworld
       NameServer: 194.25.2.132 (T-online)
    zweite Netzwerkkarte
    10 MBit-Karte: KarteIP fest, zb. 192.168.99.72, Maske so ok
                                     (anderes logisches Netzwerk!)
    "Rechnername und Nameserver" diesmal nicht notwendig!
  ->ISDN
    Euro-ISDN,Deutsch,t-online usw.
    Zugangsdaten f? flat bereithalten
  ->Sound
    normales Setup->meist auf 100% Lautst䲫e anpassen, da wir sonst
    spä´¥r nix mehr h?.

vor dem ersten Start(Logout,beenden,neustarten)

  ins bios gehen (Taste <Entf>), Bootlaufwerk
  von "CDROM" auf "HDD-0" umstellen! Damit der Rechner niemals versehentlich
  von CD-bootet.
  immer als root einloggen

Pakete nachinstallieren

  (als (Benutzernamen=)root eingelogged?!)
  [suse->]system->configuration->yast 2->Software deinstallieren/installieren
                                         (Software install/remove)
  ->ev. Pakete "suchen" knopf, names des Paketes angeben
    doppelklick auf das paket
  X samba	serie: n
  X netatalk	serie: n
  X vnc	serie: xap
  Folgende Pakete m?deinstalliert werden:
  7.3
  ===
  D Personal-Firewall
  D SuSE-Firewall
  D ipchains

T-DSL, leider muss geschraubt werden.

 (nicht mehr ab SuSE 9.0)
  Details auf http://sdb.suse.de/en/sdb/html/cg_pmtu2.html.
  a) editiere folgende Datei, (hier z.B. mit KWrite)
    kwrite /etc/ppp/options
  suche und setze die beiden werte wie angegeben, Ist diese Option durch ein
  "#" auskommentiert, den "#" wegl?en und dadurch die Option aktiv machen.
    mtu 1492
    mru 1492
  b) editiere folgende Datei, (hier z.B. mit KWrite)
   kwrite /etc/ppp/peers/pppoe
  suche und setze die beiden werte wie angegeben, Ist diese Option durch ein
  "#" auskommentiert, den "#" wegl?en und dadurch die Option aktiv machen.
    mtu 1492
    mru 1492

= Netzwerk Verbindung pr?

Ein erfolgreicher PING ist Grundlage aller weiteren Forschungen bei Netzwerkproblemen.

  auf einem win32 Rechner jetzt den Linux Server anpingen (per IP, nicht den )
  mehr Details siehe 22)
  ping 192.168.115.90

Steht die Verbindung, so stellt sich die Frage der Zuverlä³³igkeit und Geschwindigkeit. Ruhige Momente im Netzwerk sollten genutzt werden, um mit "iperf" die Up/Down Geschwindigkeiten zu ermitteln.

// auf dem Server
iperf -i
// auf dem Client
iperf -c <ServerHostName> -d

Das Programm gibts es hier: http://dast.nlanr.net/projects/Iperf/

Beispielhaft habe ich 2 TDSL Vertr䧥 ausgemessen. Man sieht ganz deutlich, dass bei gleichzeitiger Nutzung von up und down Stream die Bandbreite zum Teil dramatisch einbricht. Hier scheint besonders die Leitungsqualit䴠eine Rolle zu spielen.

TDSL 1500 - 84.163.90.168 (raib181)

[ ID]  Interval       Transfer     Bandwidth (einzeln)
[Down]  0.0-10.4 sec  1.80 MBytes  1.45 Mbits/sec (189 Kbits/sec UP)
[ ID]  Interval       Transfer     Bandwidth (zeitgleich)
[Down]  0.0-13.7 sec   392 KBytes   234 Kbits/sec
[ Up]   0.0-13.5 sec   296 KBytes   179 Kbits/sec 

TDSL 2000 - 84.163.236.231 (raib92)

[ ID]  Interval       Transfer     Bandwidth (einzeln)
[Down]  0.0-10.4 sec  2.41 MBytes  1.95 Mbits/sec (379 Kbits/sec UP)
[ ID]  Interval       Transfer     Bandwidth (zeitgleich)
[Down]  0.0-10.6 sec  2.06 MBytes  1.63 Mbits/sec
[ Up]   0.0-11.1 sec   408 KBytes   302 Kbits/sec

Netatalk-konfiguration (zugriff auf einen Linux Share via MAC)

wenn alle MAC - Clients OSX haben, ist dies nicht mehr notwendig. 
Dann sollten auch die MACs wia SMB-Protokoll verbinden.
  (als (Benutzernamen=)root eingelogged?!)
  Adv.Edit (notepad 䨮lich) starten (im "StarT"-Men?toren->Advanced Editor)
  a) /etc/rc.config:
     START_ATALK="no" auf START_ATALK="yes"
     Eintrag wirksam machen mit SuSEconfig
  b) /etc/atalk/atalkd.conf
     eth0  auf    eth1
     # nur 䮤ern, wennn 100 Mbit-Karte eth1 ist (Network/Basic -> Network card configuration)
  c) /etc/atalk/AppleVolumes.default
     Zeile ganz unten mit nur der Tilde
     ~
     rausl?en!
     neue Zeile (auch ganz unten)
     /freigabe/mac "user" options:noadouble
  d) terminal fenster starten (muschel)
     cd /freigabe
     mkdir mac
     chmod 0777 -R /mac
     rcatalk start
     -> nach ca. 1 minute m?"linus" sichtbar sein, ev. als
     linus/linus verbinden!
  e) Diagnose
     nbplkup

Einsatz als firebird-raib

     8.0
     ===
     raib ist ein RAID 5 Array aus 3 unabh䮧igen firebird servern und einem Master.
     Zum einsatz kommt ein (selbstgebautes) Server Blade mit 4 Rechnern. Dazu muss
     nach erfolgreicher Installation der Hardware-Scan beim booten (hwscan) deaktiviert
     werden, da diese Rechner ohne Keyboard und Maus laufen. hwscan stoppt sonst
     das Hochfahren und bringt einen Maus-Auswahldialog.

DVD ist weg - und man muss Software nachinstallieren:

 Unter YaSt2, Software, Softwarequelle, eine FTP Quelle anlegen
 Servername: ftp.gwdg.de 
 Verzeichnis: pub/linux/suse/ftp.suse.com/suse/i386/9.0 
 8.2
 ===
 Verzeichnis: pub/linux/suse/ftp.suse.com/suse/i386/8.2 

Firebird Datenbank Crash?

   konkrete Verwendung einzelner Befehle f?, backup und restore.
   siehe ibreorg.bat in der Anlage. (der ist leider f?32-DOS-Box!)
   die Befehle m? auch unter linux so gehen. der Pfad ist aber
   /opt/interbase/bin/gbak ....
   --- snip
   @echo off
   REM -------------------------------------------------
   REM Reparatur einer inkonsistenten FireBird Datenbank
   REM
   REM (c) Andreas Filsinger, www.cargobay.de
   REM -------------------------------------------------
   REM
   REM Usage
   REM
   REM reorg <Pfad und Name der Datenbank OHNE ".gdb">
   REM
   REM --------------------------------------------
   REM
   REM ACHTUNG: richtigen Pfad ermitteln, indem Sie nach der
   REM          Datei gbak.exe suchen lassen. Und hier eintragen:
   REM
   SET IBBIN=D:\programme\borland\interbase\bin\
   REM
   REM --------------------------------------------
   REM 1) fix erros
   REM
   %IBBIN%gfix -mend -full -ignore -user "SYSDBA" -password "masterkey" %1.gdb
   REM --------------------------------------------
   REM 2) backup fixed base
   REM
   %IBBIN%gbak -backup -v -ignore -garbage -user "SYSDBA" -password "masterkey" %1.gdb %1_neu.gbk
   REM --------------------------------------------
   REM 3) restore base
   REM
   REM zusä´ºlich noch "-i" wenn Indizes deaktiviert werden sollen
   REM
   %IBBIN%gbak -r -v -p 8192 -user "SYSDBA" -password "masterkey" %1_neu.gbk %1_neu.gdb
   REM --------------------------------------------
   REM 4) check new one
   REM
   %IBBIN%gfix -v -f -user "SYSDBA" -password "masterkey" %1_neu.gdb
   REM --------------------------------------------
   --- snap
   Bemerkungen
   ===========
   a) Backup-m?ch aber fail beim Restore: wegen inkonsistenter Indizes
   ich habe mal erlebt, das foreign Key nicht mehr konsistent waren, und deshalb
   der restore abgebrochen hat. Alle Indizes kann man jedoch als inaktiv restoren,
   (Option -i )
   nach l?en /clearen der "Schuldigen" kann man alle indizes wieder aktivieren,
   wieder ein backup, wieder ein restore -> alles wieder gut.
   (Sourcecode dazu im HeBuAdmin Projekt)
   damit der HebuAdmin alle indizes sehen kann braucht er "out.txt". Das ist die
   Ausgabe eines erfolgreichen restores, der alle indizes enth䬴.
   Unter linux gibt man die Ausgabe von gbak mit 2>/freigabe/out.txt in eine Datei
   aus.
   firebird-Erkenntnis
   ===================
   internal gds software consistency check (partner index description not found (175))
   dieser Fehler tritt beim l?en eines Datensatzes auf, der eventuell durch einen
   foreign key einer anderen Tabelle referenziert werden k?e. Ist dieser key
   deactiviert so kann keine Aussage getroffen werden, ob das l?en ok ist, dieser
   interne Fehler ist die Folge!!

Routing, Masquerading und Firewall

     Alle Arbeitsplatz-Rechner sicher und einfach ins InterNet zu bringen
     ist hierbei vorrangiges Ziel.
   a) Skript "myfirewall.sh" (in der Anlage sicherlich aktueller als dieser Snapshot)
      nach /root kopieren.
   --- snip
       # !/bin/bash
       IPTABLES=/usr/sbin/iptables
       DEV_LOC=eth0
       DEV_EXT=ppp0
       DNS_EXT=194.25.2.129
       # for IF in $DEV_LOC $DEV_EXT do
       # Kernelmodule laden
       echo "1" > /proc/sys/net/ipv4/conf/eth0/rp_filter
       echo "0" > /proc/sys/net/ipv4/conf/eth0/accept_redirects
       echo "0" > /proc/sys/net/ipv4/conf/eth0/accept_source_route
       echo "0" > /proc/sys/net/ipv4/conf/eth0/bootp_relay
       echo "1" > /proc/sys/net/ipv4/conf/eth0/log_martians
       echo "1" > /proc/sys/net/ipv4/conf/$DEV_EXT/rp_filter
       echo "0" > /proc/sys/net/ipv4/conf/$DEV_EXT/accept_redirects
       echo "0" > /proc/sys/net/ipv4/conf/$DEV_EXT/accept_source_route
       echo "0" > /proc/sys/net/ipv4/conf/$DEV_EXT/bootp_relay
       echo "1" > /proc/sys/net/ipv4/conf/$DEV_EXT/log_martians


       # done
       echo "1" > /proc/sys/net/ipv4/icmp_echo_ignore_broadcasts
       echo "1" > /proc/sys/net/ipv4/icmp_ignore_bogus_error_responses
       echo "5" > /proc/sys/net/ipv4/icmp_destunreach_rate
       echo "5" > /proc/sys/net/ipv4/icmp_echoreply_rate
       echo "5" > /proc/sys/net/ipv4/icmp_paramprob_rate
       echo "10" > /proc/sys/net/ipv4/icmp_timeexceed_rate
       # Zu Anfang alles verbieten (Default Policy)
       $IPTABLES -P INPUT ACCEPT
       $IPTABLES -P OUTPUT ACCEPT
       $IPTABLES -P FORWARD ACCEPT
       # Alle Regelketten, die sich noch im Speicher befinden k"nnten, l"schen
       $IPTABLES -F
       $IPTABLES -t nat -F
       $IPTABLES -X
       # Verbindungen f?r Testzwecke am eigenen Rechner ?ber das Loopback. Einige
       # lokale Prozesse wie BIND verwenden das Loopback f?r die interne Kommunikation
       $IPTABLES -A OUTPUT -o lo -j ACCEPT
       $IPTABLES -A INPUT -i lo -j ACCEPT
       # Alle externen Verbindungsversuche und ander Merkw?rdigkeiten werden hier
       # aufgefangen, im SYSLOG vermerkt und dann unsch?dlich gemacht
       $IPTABLES -N nirwana
       # $IPTABLES -A nirwana -p TCP -j LOG --log-prefix "NIRWANA: TCP "
       # $IPTABLES -A nirwana -p UDP -j LOG --log-prefix "NIRWANA: UDP "
       # $IPTABLES -A nirwana -p ICMP -j LOG --log-prefix "NIRWANA: ICMP "
       # $IPTABLES -A nirwana -p TCP -j DROP
       # Kernelmodule masq und forwarding aktivieren (dyn. IP vom Provider)
       echo "1" > /proc/sys/net/ipv4/ip_dynaddr
       echo "1" > /proc/sys/net/ipv4/ip_forward
       $IPTABLES -t nat -A POSTROUTING -o $DEV_EXT -j MASQUERADE
       $IPTABLES -I FORWARD -p tcp --tcp-flags SYN,RST SYN -j TCPMSS --clamp-mss-to-pmtu
       # F?e bestehenden ein- und ausgehenden Verbindungen. Dritte Regel
       # verhindert alle Verbindungen die Au᥮ kommen
       $IPTABLES -A FORWARD -i $DEV_LOC -o $DEV_EXT -m state --state ESTABLISHED,RELATED -j ACCEPT
       $IPTABLES -A FORWARD -i $DEV_EXT -o $DEV_LOC -m state --state ESTABLISHED,RELATED -j ACCEPT
       # $IPTABLES -A FORWARD -i $DEV_EXT -o $DEV_LOC -m state --state NEW,INVALID -j nirwana
       # Zugriff auf internen WEB-Server
       # $IPTABLES -A PREROUTING -t nat -p tcp -i $DEV_EXT --dport 80 -j DNAT --to 192.168.115.8:80
       $IPTABLES -t nat -A PREROUTING -i $DEV_EXT -p tcp --dport 80 -j DNAT --to 192.168.115.8:80
       $IPTABLES -t nat -A PREROUTING -i $DEV_EXT -p tcp --dport 5900 -j DNAT --to 192.168.115.1:5900
       # WinMx auf fred!
       $IPTABLES -t nat -A PREROUTING -i $DEV_EXT -p tcp --dport 6699 -j DNAT --to 192.168.115.3:6699
       $IPTABLES -t nat -A PREROUTING -i $DEV_EXT -p udp --dport 6257 -j DNAT --to 192.168.115.3:6257
       # Ping ins Internet erlauben, eingehende werden von der NIRWANA-Rule abgefangen
       $IPTABLES -A FORWARD -o $DEV_EXT -p ICMP --icmp-type echo-request -j ACCEPT
       # DNS
       $IPTABLES -A FORWARD -o $DEV_EXT -p tcp --sport 1024:65535 --dport domain -d $DNS_EXT -m state --state NEW -j ACCEPT
       # HTTP
       $IPTABLES -A FORWARD -o $DEV_EXT -p tcp --sport 1024:65535 --dport http -m state --state NEW -j ACCEPT
       # $IPTABLES -A FORWARD -o $DEV_EXT -p tcp --sport 1024:65535 --dport https -m state --state NEW -j ACCEPT
       # FTP
       # $IPTABLES -A FORWARD -o $DEV_EXT -p tcp --sport 1024:65535 --dport ftp -m state --state NEW -j ACCEPT
       # $IPTABLES -A FORWARD -o $DEV_EXT -p tcp --sport 1024:65535 --dport 1024:65535 -m state --state NEW -j ACCEPT
       # Alle Pakete, die bis hierher kommen nach nirwana
       $IPTABLES -A INPUT -j nirwana
       $IPTABLES -A OUTPUT -j nirwana
       $IPTABLES -A FORWARD -j nirwana
   --- snap


__zuk?s thema: lokales umlenken lokaler Port traffics. Z.b. aller verkehr aus dem Internet

   soll umgeleitet werden von "80" auf "8080".
       iptables -t nat -A PREROUTING -p tcp --dport 80 -i eth0 -j REDIRECT \
       --to-ports 8080
       iptables -t nat -A OUTPUT -p tcp --dport 80 -m owner \! --uid-owner 13 \
       -j REDIRECT --to-ports 8080
       Should work. I tested it on my own firewall, although I just tested it
       with netcat, not a real proxy.
       Locally generated packets don't go through the PREROUTING chain, so you
       have to manipulate them in OUTPUT, and you also have to differentiate
       them from the proxy's outgoing packets, hence the match against uid 13
       (proxy), taken from /etc/passwd.
       Unfortunately, you'll have to enable owner match support in your kernel
       for the second line to work, so you might have to recompile (it's one of
       the features labelled experimental).
         Jason

__zuk?s thema: Bandbreiten verteilung: siehe artikel in c't 01/03. Kommt aber

   sicher stablier ab "suse 8.2", das es kernel >2.4.19 erfordert.
   b) mit
      chmod 755 /root/myfirewall.sh
      macht man dieses Script ausf?. Nun starten ...
      /root/myfirewall.sh
   c) Automatischer Start der Firewall beim booten ...
      Als root einloggen und folgende Zeilen eingeben:
      ln -s /root/myfirewall.sh /etc/init.d/rc2.d/S30myfirewall <RETURN>
      ln -s /root/myfirewall.sh /etc/init.d/rc3.d/S30myfirewall <RETURN>
      ln -s /root/myfirewall.sh /etc/init.d/rc5.d/S30myfirewall <RETURN>
      fehlt noch: "K" links, myfirewall sollte echtes Script werden, das
                  "start" und "stop" auswerten kann.
   d) Eintrag in /etc/rc.config 䮤ern: IP_FORWARD="no" auf "yes"
      Eintrag wirksam machen mit SuSEconfig

lokaler SMTP Forwarder

 * win32 outlook express clients sollen bei der email-Konten-Einstellung den
   Eintrag "smtp-Server:" von dem "wirklichen" Server auf die IP des Linux-Servers
   umstellen k?n. POP Eintrag MUSS bleiben.
 * Der Linux Server muss ausgehende Mails mit 100 MBit/s annehmen, und
   lokal zwischenspeichern.
 * Der smtp Dienst von Linux muss eine autentifizierung des Users verlangen.
   (wie bei heutigen smtps ?, mit dem gleichen Konto/pwd wie f?3)
 * Der Linux Server sollte als "relay" fungieren, und die mail somit v?g
   unangetastet lassen.
 * Durch die Identifizierung mit dem smtp "Konto-Name" muss der Linux Server
   ermitteln (in einer config-Datei) wer der wirkliche smtp Server im Internet
   ist. Der Server muss nun (in aller Ruhe) daf?gen dass die Mail zugestellt
   wird. Es sollte kein "fester" relay-smtp f?ot;alle" email-Konten benutzt werden.


 ---------------------------------------------------------------------------------------
 Aufsetzen des Mailservers postfix
 ---------------------------------------------------------------------------------------
 Andre Wolff 24.4.2003
 ---------------------------------------------------------------------------------------


 ---------------
 1. Installation
 ---------------
 Postfix wird bei der Version 8.2 standardm䟩g installiert. Zur ܢerpr? ob postfix
 installiert und aktiv ist, wie folgt vorgehen:
         - Aufrufen des YAST2-Kontrollzentrum
         - Auswahl System
         - Den Runlevel-Editor starten
         - Auf "Runlevel-Eigenschaften..." klicken
 In der nun angezeigten Liste sollte ein Eintrag postfix vorhanden sein. Ist dieser als aktiv
 gekennzeichnet und f? Runlevels 3 und 5 konfiguriert, ist alles Ok. Sollte der Eintrag
 postfix nicht vorhanden sein, muß das Programm evtl. nachinstalliert werden:
         - Runlevel-Editor ggf. wieder beenden
         - Aus dem YAST2-Kontrollzentrum "Software" ausw䨬en
         - Auswahl "Software installieren oder l?en"
         - Im Kombinationsfeld Filter den Eintrag "Suche" ausw䨬en und im Suchfeld
           postfix eingeben und auf die Schaltfl䣨e "Suche" klicken
         - in der Paketliste postfix ausw䨬en und auf Schaltfl䣨e "Akzeptieren" klicken
 ----------------
 2. Konfiguration
 ----------------
 Da SuSE versucht alle wichtigen Programme direkt aus YAST oder YAST2 heraus automatisch 
 zu konfigurieren, wir aber das Mail-System unseren Bed?sen explizit anpassen wollen,
 muß die automatische Konfiguration f?tfix abgeschaltet werden:
         - Im YAST2-Kontrollzentrum "System|Editor f?c/sysconfig-Dateien" ausw䨬en
         - Dann Auswahl "Network|Mail|General"
         - Įdern des Eintrages "MAIL_CREATE_CONFIG" von yes auf no und Sysconfig-Editor 
           beenden


 Datei "main.cf" anpassen
 Datei /etc/postfix/main.cf mit einem Editor ?en. Die Eintr䧥 wie folgt 䮤ern
 oder das '#'-Zeichen entfernen :
         myhostname = smtp.hebu.de
         mydomain = hebu.de
         mynetworks = 192.168.100.0/24,127.0.0.0/8
         smtpd_banner  = $myhostname ESMTP
         relay_domains = $mydestination, <dom1>, <dom2>, ...


 Anpassen des Firewall-Skriptes
 Eintrag in /root/fwdsl.start nach dem Eintrag "Samba aus dem internen Netz":
 #--------------------------------------------------------------------------------
 # E-Mail zum relayen
 $IPTABLES -A INPUT  -i $DEV_INT  -s $INT_NET -p TCP --sport $HIGH_PORT --dport 25 -m state --state NEW,ESTABLISHED,RELATED -j ACCEPT
 $IPTABLES -A INPUT  -i $DEV_INT  -s $INT_NET -p TCP --sport 25 --dport 25 -m state --state NEW,ESTABLISHED,RELATED -j ACCEPT
 $IPTABLES -A OUTPUT -o $DEV_ISDN -p TCP --sport $HIGH_PORT --dport 25 -m state --state NEW,ESTABLISHED,RELATED -j ACCEPT
 $IPTABLES -A OUTPUT -o $DEV_ISDN -p TCP --sport 25 --dport 25 -m state --state NEW,ESTABLISHED,RELATED -j ACCEPT
 ---------------------------------------------------------------------------------
 Folgende Erweiterung f? eintragen 
 #--------------------------------------------------------------------------------
 $IPTABLES -A OUTPUT -o $DEV_ISDN -m state --state NEW -p UDP --sport $HIGH_PORT  --dport domain -j ACCEPT
 $IPTABLES -A OUTPUT -o $DEV_ISDN -m state --state NEW -p TCP --sport $HIGH_PORT  --dport domain -j ACCEPT
 #--------------------------------------------------------------------------------


 Bei den E-Mail-Clients muß nun der neue SMTP-Server eingetragen werden.
 Bei Outlook und Outlook-Express unter "Extras|Konten" die Registerkarte "E-Mail" ausw䨬en.
 Dann mit einem Doppelklick die Eigenschaften des gew?e Mailkontos ?en. Auf der
 Registerkarte Server bei "Postausgang (SMTP)" die IP-Adresse des neuen Mail-Relays
 eintragen.

Bandbreiten Management

Hier: Der eMail-Ausgangsstrom soll uns nicht die Bandbreite des Web-Shop mindern.
 * Noch nicht Teil dieses Budgets - aber bitte im Hinterkopf behalten: Durch Eintr䧥
   mit Hilfe von iptabels kann ab Kernel 2.4.20 die bandbreite gewisser dienste
   vorbestimmt werden. Ich suche mal den Artikel in der c't. Wir starten, wenn
   Suse 8.2 bei mir vorliegt (ist vorbestellt!)

lokaler DNS Forwarder

DNS-Adressen wechseln ganz im Gegensatz zu HTML-Inhalten nicht so h䵦ig. Deshalb will ich keinen vollst䮤igen Proxy einsetzten. Aber ich will nicht, dass jede (wiederholte) DNS Anfrage ins Internet rausgepustet wird! Bis sich alle Datenbanken weltweit angeglichen haben kann schon mal ein halber Tag vergehen, also k?n wir auch guten gewissens DNS anfragen cache, etwa mit einer Haltbarkeit der cache inhalte von 10 min ?!. Deshalb ist ein Caching unbedenklich, und auch besonders lohnend, da einige UDP/TCP Verbindungsaufbau-Vorg䮧e lokal abgewickelt werden k?n! Die Idee liegt nahe, hey man k?e den Linux-Server doch auch als Name-Server (DNS-relay) einsetzen. Egal welcher Provider dann angew䨬t ist (=welcher nameserver auch immer angegeben werden muss) der lokale DNS-Server leitet alle Anfragen immer an die richtige Adresse (nä­¬ich an den Nameserver draussen im INternet) weiter. Wie die jeweiligen namenserver heissen steht ja in der /etc/resolv.conf. Die Clients m?nix mehr umstellen (im Feld Nameserver)! Gateway UND Nameserver haben dann die gleiche Zieladresse. Hier ist die L?g:

Zuerst werden die Pakete [bind9] aus der Serie [n] sowie die [bind9-utils] installiert.

chkconfig --add named 

Danach in der Datei "/etc/named.conf" folgende, mit den Pfeilen markierten Anpassungen eintragen:

-------------------------------------------------------------------------
 
      options {
       ->     auth-nxdomain no;
              # The directory statement defines the name server's
              # working directory
              directory "/var/named";
              # The forwarders record contains a list of servers to
              # which queries should be forwarded. Enable this line and
              # modify the IP-address to your provider's name server.
              # Up to three servers may be listed.
              # forwarders { 10.11.12.13; 10.11.12.14; };
      ->     forwarders { 194.25.2.129; 212.185.248.148; };
              # Enable the next entry to prefer usage of the name
              # server declared in the forwarders section.
      ->     forward first;
              # The listen-on record contains a list of local network
              # interfaces to listen on. Optionally the port can be
              # specified. Default is to listen on all interfaces found
              # on your system. The default port is 53.
              # listen-on port 53 { 127.0.0.1; };
              # The listen-on-v6 record enables or disables listening
              # on IPV6 interfaces. Allowed values are 'any' and 'none'
              # or a list of addresses. IPv6 can only be used with
              # kernel 2.4 in this release.
              listen-on-v6 { any; };
              # The next three statements may be needed if a firewall
              # stands between the local server and the internet.
              # query-source address * port 53;
              # transfer-source * port 53;
              # notify-source * port 53;
          # The allow-query record contains a list of networks or
         # IP-addresses to accept and deny queries from. The
          # default is to allow queries from all hosts.
          # allow-query { 127.0.0.1; };
          # If notify is set to yes (default), notify messages are
         # sent to other name servers when the the zone data is
         # changed. Instead of setting a global 'notify' statement
       # in the 'options' section, a separate 'notify' can be
       # added to each zone definition.
       notify no;
      };
 # The following three zone definitions don't need any modification.
 # The first one defines localhost while the second defines the
 # reverse lookup for localhost. The last zone "." is the
 # definition of the root name servers.
  zone "localhost" in {
        type master;
        file "localhost.zone";
 };
 zone "0.0.127.in-addr.arpa" in {
        type master;
        file "127.0.0.zone";
 };
 zone "." in {
        type hint;
        file "root.hint";
 };
 # You can insert further zone records for your own domains below.
 ---------------------------------------------------------------------


Jetzt ist noch in der Datei "/etc/resolv.conf" anzugeben, dass man zur 
Namensaufl?g den lokalen DNS-Server benutzt.
------------------------------------------------------------------------

   search
   nameserver 127.0.0.1
------------------------------------------------------------------------


Damit die "/etc/resolv.conf" nicht bei jeder Einwahl wieder ?hrieben wird muss der Parameter

joe /etc/sysconfig/network/config
 
MODIFY_RESOLV_CONF_DYNAMICALLY=no
MODIFY_NAMED_CONF_DYNAMICALLY=yes      # Dadurch werden die "forwarders" in der"/etc/named.conf" bei jeder Einwahl aktualisiert


Damit wieder alles seine Richtigkeit hat muss nun SuSEconfig ausgef?erden (nicht sicher, ob das notwendig ist)

SuSEconfig



Nun m?die neuen Gegebenheiten der Firewall mitgeteilt werden. Folgende 
Zeilen werden im Script "/root/fwdsl.start" nach der Sektion 
"# E-Mail zum relayen" 
hinzugef?  --------------------------------------------------------------------------------
  # DNS-Forwarding
   $IPTABLES -A INPUT  -i $DEV_INT  -s $INT_NET -p TCP --sport $HIGH_PORT --dport 53 -m state --state NEW,ESTABLISHED,RELATED -j
   $IPTABLES -A INPUT  -i $DEV_INT  -s $INT_NET -p UDP --sport $HIGH_PORT --dport 53 -m state --state NEW,ESTABLISHED,RELATED -j
   $IPTABLES -A OUTPUT -o $DEV_ISDN -p TCP --sport $HIGH_PORT --dport 53 -m state --state NEW,ESTABLISHED,RELATED -j ACCEPT
   $IPTABLES -A OUTPUT -o $DEV_ISDN -p UDP --sport $HIGH_PORT --dport 53 -m state --state NEW,ESTABLISHED,RELATED -j ACCEPT
 ------------------------------------------------------------------------


 Zum Abschluß werden auf den Windows-Clients in den Netzwerkeinstellungen bei den
 TCP/IP-Eigenschaften unter Gateway und DNS die IP-Adresse des LINUX-Servers
 angegeben.

Fernwartung einiger Rechner im Netz von aussen via InterNet via VNC

   (beide Systeme (Zielsystem & Remotesystem) m?eigentlich nur im InterNet
   sein! Der eine z.B. via ISDN, der andere z.B. via DSL, super nat?: beide via DSL)
   auf jedem Win32-Ziel-Rechner installiert man den VNC-Server:
   (freier download unter www.tightvnc.com) Das myfirewall-Script muss
   f?einen Rechner um eine Script-Zeile erweitert werden.
   Es gibt auch einen Viewer(Client) f? MAC
   http://sourceforge.net/projects/cotvnc/
   # VNC f?tus, Displaynummer=0 oder nix angeben
   $IPTABLES -A PREROUTING -t nat -p tcp -i $DEV_EXT --dport 5900 -j DNAT --to 192.168.115.1:5900
   # VNC f?d, Displaynummer=1
   $IPTABLES -A PREROUTING -t nat -p tcp -i $DEV_EXT --dport 5901 -j DNAT --to 192.168.115.3:5900
   # VNC f?
   $IPTABLES -A PREROUTING -t nat -p tcp -i $DEV_EXT --dport 5902 -j DNAT --to 192.168.115.8:5900
   # usw. ...
   die aktuelle IP (die man "daheim" angeben muss) ermittelt man aus der gepachten IP-
   Adresse im InterNet (Rechter Mausklick auf die HomePage, Quelltext anzeigen, IP-Adresse
   rauskopieren). Beim einloggen gibt man neben der (aktuellen) IP die Displaynummer an, also
   217.217.20.118:1 (f?. fred) und das passwort wie immer. ACHTUNG: immer auf beiden
   Seiten 16 bit farben (= High-Color) verwenden! Den Rechner, den man fernwarten will:
   sollte ganz ganz schnell sein (ich meine das ernst), und ne super schnelle 2D Grafikkarte
   haben (z.B. Matrox G450). Der Rechner mit dem man fernwarten will: Der dreht leider eigentlich
   (fast) immer Däµ­chen, der kann ruhig alt und schwach sein!!! Hier sollte nur eine gute Anbindung
   ans Internet sichergestellt werden! Hilfreich: etwas gr?e Ausl?g wie das Ziel-System, aber
   auch High-Color! Wichtig: Passw?r m?chst >8 Zeichen.
   VNC - Remote Control des Servers mit Hilfe von z.B. einer Windows-Maschine.
   F?te, die nicht in den Serverraum laufen m?en, oder kein Geld mehr
   f?en Monitor am Linux-Rechner haben, weil das Betriebssystem so teuer war ;-)
   vnc-paket installieren (mit Yast 2)
   Terminal Session starten
   vncserver eingeben, pwd vergeben
   von irgendeiner anderen Maschine einloggen:
   192.168.115.72:1
   -pwd eingeben
   Es muss ein Terminal-Fenster erscheinen, dort kan man nun
   kde
   eingeben wenn man eine kde-session starten will...
   Suse 7.x
   ========
   Damit der VNC- Server beim booten allein gestartet wird, gen?n Eintrag in /etc/rc.d/rc.
   Die Zeile, die ganz unten (Suse 8.0: vor "exit 0") erg䮺t werden muߠlautet:
                 su -l root -c "vncserver -cc 3 :1 -alwaysshared"
   Suse 8.0
   ========
   Suse 8.1
   ========
   ** Obige Methode l䵦t nicht mehr unter Suse 8.1.
   Bemerkung: Es war mal bei 8.0 notwendig an einer Maschine, die den vncserver nicht
   mehr allein startet, wieder keyboard und monitor anzuschliesen, um sich "echt"
   (in kde) einzuloggen, danach lief wieder alles super.
   Suse 8.2
   ========
   YaST2 / System / Editor f?c/sysconfig-Dateien / Desktop / Display Manager:
   Die Variable DisplayManager_Remote_Access auf yes setzen.
   Auf der Konsole rcxdm restart eingeben.
   YaST2 / Netzwerkdienste / Netzwerkdienste (inetd) aufmachen und die 4
   Eintr䧥 mit "VNC" im Namen aktivieren.
   Andere Computer (auch Windows-Maschinen) k?n nun ?en Browser den
   VNC-Server ansprechen. Dazu ben?t er Java.
   Die URL lautet: http://Vncserver-Rechner:5810.
   Wer auf der Client-Seite nicht im Webbrowser arbeiten will, benutzt den VNCViewer.
   F?se Anwendung lautet nun der angefragte Hostname "Vncserver-Rechner:10"
   oder "Vncserver-Rechner:11", auch wieder mit IP-Adresse des Zielsystems m?ch,
   z.B. 192.168.115.93:10.



Eine andere Linux-Maschine will ins Internet

     1) YAST2 ->network ->routing ->Standart-Gateway=IP des Servers
     2) YAST2 ->advanced network ->DNS ->IP des Servers

Kernel Updates

   (es soll niemand mehr sagen das sei schwierig!)
   nur f?e 7.2 notwendig, (HISTORISCH - NICHT NOTWENDIG AB 7.3):
   Einspielen des Kernels 2.4.7
   Dies ist notwendig, da masquerading irgend einen Bug hat. Auch hat sich das
   einspielen als sehr heilsam f? ganze System herausgestellt. (Auch TDSL!)
   downloaden des Kernels (als rpm) von
   ftp.suse.com/pub/suse/i386/update/7.2/kernel/2.4.7/k_deflt-2.4.7-25.i386.rmp
   Terminal-Fenster starten, eingeben
   YaST <ENTER>
   "paketverwaltung (update,install,auf..)"
   Paket einspielen
   Quelle (nun den obigen rpm lokalisieren)
   markieren mit Leertaste, damit installiert wird
   <F10> zum Installieren dr?    YaST beenden, ein cleanup wird durchgef?   mk_initrd <ENTER>
   lilo <ENTER>
   -> system neu booten!!!



keepcon, RouteIP.exe, ein kleiner Einstieg

   Dieses linux / win32 program ermittelt die aktuelle IP Adresse wie unser Server im
   Moment im Internet sichtbar ist, und patched die html-Seiten drausen
   im InterNet, um die aktuelle IP Adresse den surfern draussen unterzujubeln.
   Mehr Infos ?outeIP im InterNet www.cargobay.de**
   Mehr Infos ?eepcon im InterNet www.cargobay.de
   ** RouteIP wird langfristig durch keepcon ersetzt.
   keepcon siehe "http://www.cargobay.de/keepcon.html"


samba & firewall & Windows

Mit samba 2.2.5 und Windows XP Professional Service Pack 1 machten wir folgende
Beobachtung:
     Windows XP Professional zeigt nach eigenem Neustart den samba-share
     als "gest?quot; an (rotes kleines "X" im Symbol). Der erste Zugriff
     erfolgt im Windows Explorer dann auch nach eine langen Denkpause.
     * Umstellen von "security=share" auf "security=user" im smb.conf
       brachte nichts! (incl. der ganzen Arbeit, die damit zusammenh䮧t
       (User anlegen)).
     * Umstellen der "Richtlinien" wie es die Newsgroups vorgeben brachte
       auch nichts!
       Start->Ausf?>gpedit.msc
       Computerkonfig->Windows-Einstellungen->Sicherheitseinstellungen->Lokale Richtlininen->
       Sicherheitsoptionen
       Microsoft-Netzwerk (client): Unverschl?es Kennwort an SMB-Server von Drittanbietern senden
     Idee: ev. alles auf einen echten samba PDC umstellen!
     todo: gpedit.msc mal beschreiben!
Die L?g: der Firewall auf dem samba Server sperrte den Port 445. Dieser ist
            jedoch f? Kommunikation notwendig. Hier die Gesamtbeschreibung
            die ich mit Hilfe von Walter Mautner erstellt habe.
 > Eventuell noch Port 445 dazugeben.
Walter! Das war die L?g (freu), Win XP versucht scheinbar vorrangig am
Port 445 rumzuposaunen. Nur wenn ein hartn䣫iger User auf den Windows
Explorer einschl䧴 springt er auf den Port 137ff um!


Port 53=DNS
Port 1900=
XP's Windows Messenger is attempting to communicate to an Internet host. To block Windows Messenger's broadcasts:
 Hive: HKEY_LOCAL_MACHINE
 Key: Software\Microsoft\DirectPlayNATHelp\DPNHUPnP
 Name: UPnPMode
 Type: REG_DWORD
 Value: 2 disabled
 With UPnPMode=2, Universal Plug and Play Network Address Translation (NAT) traversal discovery does not occur.
 (newsgroupbeitrag) "
 Unser Liebling (=Linux-Server) fungiert nicht nur als Samba-Sklave sondern
 auch als DSL-Router. Somit wurde flux eine firewall installiert (auch
 selbstgemacht via iptables).
 Weil wir gerne alles kontrollieren wirkt diese auch auf das intene Netz:
 Pflichtbewust wurden jedoch die smb Ports 136,137,138,445 ge?et, damit
 die Clients mit samba sprechen k?n.
 Alles ging -- ausser bei Windows XP Prof Clients, diese hatten beim ersten
 Zugriff auf einen Share z.B. im Explorer doppelklick auf den
 Laufwerksbuchstaben eine "Wartezeit" von ca. 8 Sekunden (hey, das ist
 verdammt lange). Danach war alles in Butter. Bis zu dem Moment, wo etwa 15
 Minuten kein Zugriff auf diesen Share auf diesem Client erfolgte (oder
 sofort nach einem Neustart des Clients). Danach wieder diese Denkpause.
 Die L?g war: XP Prof SP1 versucht eine Kontaktaufnahme mit dem
 Samba-Server auf Port 80 (in Worten !achtzig!). Wir hatten das als "Angriff"
 aus dem internen Netz gewertet und geDROPed. (Auf port 80 haben wir keinen
 dienst auf unserem Server!). Bis XP gemerkt hatte, dass auf port 80 nix
 geht, machte es einen Kurzschlaf (eben diese 8 Sekunden). Jetzt, nachdem wir
 (grmpf!) halt Port 80 ge?et haben geht alles ohne Zeitverz?ung.
 Unn? zu sagen das dieses Verhalten ausschlie߬ich XP hat!
 "
 (newsgroupbeitrag) "
 einen DROP zu machen war wirklich gemein. Zumal man ja im internen
 Netz nicht unbedingt "Paket-Antwort-Bandbreite" sparen muss.
 http://www.pl-forum.de/t_netzwerk/iptables.html
 [ ...
 * DROP: Paket vernichten, keine Benachrichtigung des Absenders.
 * REJECT: Ĩnlich DROP wird das Paket abgewiesen, jedoch erh䬴 der Absender
 eine Antwort auf das Paket.
  ... ]
 -> bleibt die Frage? Was will XP am Port 80?
 "
Beim Verbindungsversuch vom Windows XP Explorer zum Samba-Server ist mir aufgefallen, daß der XP-Client ?en Port
1039 bzw 1040 eine Verbindung zum Port 80 des Linux-Servers aufzubauen versucht (sichtbar gemacht mit
tail -f /var/log/messages auf der Linux-Box. Hier werden die Drops, die der Kernel verursacht, protokolliert). Nach
Ö¦fnen des Ports 80 f?ete vom internen Netz gab es keine Wartezeiten beim Verbindungsaufbau mehr.
Im folgenden ein Auszug aus dem aktuellen Firewall-Skript. Dabei sind die letzten beiden Zeilen von Bedeutung.
Das passende firewall Script Auszug.


# --------------------------------------------------------------------------------
# Samba aus dem internen Netz
$IPTABLES -A INPUT  -i $DEV_INT -s $INT_NET -p UDP --sport 135 --dport 135 -m state --state NEW,ESTABLISHED,RELATED -j ACCEPT
$IPTABLES -A OUTPUT -o $DEV_INT -d $INT_NET -p UDP --sport 135 --dport 135 -m state --state NEW,ESTABLISHED,RELATED -j ACCEPT
$IPTABLES -A INPUT  -i $DEV_INT -s $INT_NET -p UDP --sport 137 --dport 137 -m state --state NEW,ESTABLISHED,RELATED -j ACCEPT
$IPTABLES -A OUTPUT -o $DEV_INT -d $INT_NET -p UDP --sport 137 --dport 137 -m state --state NEW,ESTABLISHED,RELATED -j ACCEPT
$IPTABLES -A INPUT  -i $DEV_INT -s $INT_NET -p UDP --sport 138 --dport 138 -m state --state NEW,ESTABLISHED,RELATED -j ACCEPT
$IPTABLES -A OUTPUT -o $DEV_INT -d $INT_NET -p UDP --sport 138 --dport 138 -m state --state NEW,ESTABLISHED,RELATED -j ACCEPT
$IPTABLES -A INPUT  -i $DEV_INT -s $INT_NET -p UDP --sport 445 --dport 445 -m state --state NEW,ESTABLISHED,RELATED -j ACCEPT
$IPTABLES -A OUTPUT -o $DEV_INT -d $INT_NET -p UDP --sport 445 --dport 445 -m state --state NEW,ESTABLISHED,RELATED -j ACCEPT


$IPTABLES -A INPUT  -i $DEV_INT -s $INT_NET -p TCP --sport $HIGH_PORT --dport 135 -m state --state NEW,ESTABLISHED,RELATED -j ACCEPT
$IPTABLES -A OUTPUT -o $DEV_INT -d $INT_NET -p TCP --sport 135 --dport $HIGH_PORT -m state --state NEW,ESTABLISHED,RELATED -j ACCEPT
$IPTABLES -A INPUT  -i $DEV_INT -s $INT_NET -p TCP --sport $HIGH_PORT --dport 139 -m state --state NEW,ESTABLISHED,RELATED -j ACCEPT
$IPTABLES -A OUTPUT -o $DEV_INT -d $INT_NET -p TCP --sport 139 --dport $HIGH_PORT -m state --state NEW,ESTABLISHED,RELATED -j ACCEPT
$IPTABLES -A INPUT  -i $DEV_INT -s $INT_NET -p TCP --sport $HIGH_PORT --dport 445 -m state --state NEW,ESTABLISHED,RELATED -j ACCEPT
$IPTABLES -A OUTPUT -o $DEV_INT -d $INT_NET -p TCP --sport 445 --dport $HIGH_PORT -m state --state NEW,ESTABLISHED,RELATED -j ACCEPT
# XP-Explorer versucht Verbindung von HIGH_PORT auf port 80 des Linux-Servers! Warum?!?
$IPTABLES -A INPUT  -i $DEV_INT -s $INT_NET -p TCP --sport $HIGH_PORT --dport 80 -m state --state NEW,ESTABLISHED,RELATED -j ACCEPT
$IPTABLES -A OUTPUT -o $DEV_INT -d $INT_NET -p TCP --sport 80 --dport $HIGH_PORT -m state --state NEW,ESTABLISHED,RELATED -j ACCEPT
# --------------------------------------------------------------------------------
Die passenden Ports in der Zusammenfassung
 netbios-ns      137/udp     # NETBIOS Name Service
 netbios-dgm     138/udp     # NETBIOS Datagram Service
 netbios-ssn     139/tcp     # NETBIOS Session Service
 microsoft-ds    445/udp     # Direct-Hosted Service
 microsoft-ds    445/tcp     # Direct-Hosted Service
 http            80/tcp    www www-http           # World Wide Web
                                                  # nur bei XP Clients notwendig
---------------------------------------------------------
* ES FOLGT DER REVISION INFO TEIL IM FORMAT
*   Rev x.xxx ([ "vonDatum" "-" ] "bisDatum") <DeinName>
---------------------------------------------------------

ATX-Netzteile

Das beschriebene Linux-System wird ?egend als Server benutzt. Es muss
sichergestellt sein, dass nach einem Stromausfall das System selbst wieder
hochf䨲t.
* In der Regel kann man bei modernen ATX - Boards im BIOS einstellen was
  im "Power Fail" Fall, gemacht werden soll. "Always ON" w?ier die
  richtige Einstellung lauten.
* Bei machen Boards ist diese Einstellung nicht vorhanden (K7SOM) oder
  sie funktioniert nicht (div. Soltek Boards). In diesem Fall ist durch
  einen einfachen Eingriff diese Funktion sichergestellt.
  1) Das ATX-Netzteil besitzt einen breiten Spannungsstecker, der im Main-
     board steckt. Hier ist das !gr?bel! (von dem es nur eines gibt) ca.
     1 cm oberhalb des Steckers abzuschneiden (1cm deshalb, damit man ggf.
     die alte Funktion wieder herstellen kan).
  2) Von einem unbenutzen Stromstecker ist eines der mittleren schwarzen
     Kabel nahe am Stecker abzuscheiden.
  3) Beide Kabel nun durch alle Kabelbinder hindurch zur?hen damit sie
     ab dem Netzteilaustritt freiliegen. Nun beide abisolieren, und die
     blanken Ende "verzwirblen". Mit Isolierband die blanke Stelle isolieren
     und das neue Kabelpaar sch?n vorhandene Kabelstr䮧e mit Kabelbinder
     fixieren.
  Effekt: Das ATX-Netzteil startet IMMER in den "Full Power" Modus egal, ob
          dies durch das Board signalisiert wird oder nicht.

USB Devices (Memory, Flash, MP3 Player) unter Linux

Nach reinstecken des SONY Microfault 32 MByte Sticks ging erst mal nix. Ich sah zwar, dass das LED
des Memory Sticks vertraut blinkte. Doch bekam ich keinen Zugriff. Ich musste
md /root/usb
mount -t vfat /dev/sda /root/usb
eingeben. Sofort waren die Dateien in /root/usb/ sichtbar. Ich speicherte was drauf mit 
"cp". Zog den Stick raus: Wieder eine Enttäµ³chung: auf dem Win XP war die Datei nicht
sichtbar. Also wurde die Datei nicht wirklich geschrieben (HEUL!)? Also versuchte
ich vor dem Rausziehen beim n䣨sten mal unzumounten.
umount /dev/sda
(soviel zu Thema hotplug!) OK, das ging dann. Mein Wunsch war, beim Einsetzen des
USB-Sticks das Lied darauf (.mp3) abzuspielen. In meiner Naivitä´ plazierte ich einfach
ein Script Namens /etc/hotplug/usb/usbfs. Es passierte nat? nichts. grmpf!
In fstab habe ich aber eine Zeile eingetragen, die mir das USB-Device auf den Desktop
gezaubert hat (was mir nix bringt!). Mein Spieltrieb animierte mich durch umount das
device auszuh䮧en. Das Desktop Symbol blieb - es lies sich auch fehlerfrei anklicken,
was einen Mount verursachte!
Also ein Script via hotplug zu starten wenn der usb reingeteckt wird gebe ich
hiermit auf!