Linux I. Linux Workstation Linux für Menschen II. Linux Server Linux für Maschinen
Was ist Linux? 3 Beispiel 3 Anwendungen 4 Hilfe 5 Geschichte 6 Politik 6 Systemnahe Software 7 Workstation@Home Linux zu Hause 8 Workstation@RRZN 9 vmware 10 Administration@home 11 Server (nicht nur unter Linux) 12 Beispielkonfigurationen 13 Uni 15 Sicherheit 18 Administration@server 19 cfengine 20 Realisierungen 22 Pflege 24 Rest 25 Abbildungen 26
Was ist Linux? freier Unix Klone hauptsächlich auf PCs für Workstations, Notebooks, PDAs, Server und Cluster geeignet bestehend aus Linux Kernel, GNU Tools, BSD Netz und weiterer Software Beispiel Knoppix 3.3 CD, 1.7GB komprimiert auf CD Grösse nebenwirkungsfrei Start, Oberfläche X, KDE Beispiele Konqueror, Dateien/Verzeichnisse, Verzeichnisstruktur www.rrzn.uni hannover.de OpenOffice Konfiguration Konsole Arbeiten als Administrator root sudo su Installation auf Festplatte knx hdinstall Speichern der Konfiguration (z.b. auf Diskette) Lokales Benutzer Verzeichnis
Anwendungen Openoffice/Staroffice: Text, Tabellen, Formeln, Zeichnungen, Datenbank, Präsentation Graphik: Gimp (Graphik aller Art), Blender(3D), OpenDX(Visualisierung) Dokumente: LyX< LaTeX< TeX, hohe Druckqualität Datenbanken: mysql, postgresql, kommerziell: Oracle WWW Browser: konqueror, mozilla, netscape, lynx (Textbrowser, b arrierefrei ) Server: Pflege von Apache, zope, typo3 Computeralgebra: Oktave, Scilab, Mupad kostenpflichtig: Mupad, Maple, Mathematica Multimedia: Musik, Photo, Video (Beispiel) Spiele Hilfe (s.u.)
Hilfe man Manuals info Informationen whatis/apropos which/locate/find SuSE Hilfe /usr/share/doc/packages/name: Dokumentationen zu name /usr/share/doc/howto/de/html: Howtos Kochrezepte Online beispielsweise: www.linux.com Bücher stapelweise LUGH Linux User Group Hannover
Geschichte Unix wg. Multics(Ringe) (Kernigan/Thomson/Ritchie/Plauger, PDP 7, PDP 11) GNU (Richard Stallman) Andrew S. Tanenbaum: Buch Betriebssysteme; Minix (Unix ohne SCO Patente) Linus Torvalds 1991 welcher "Minixer" ist an neuem Betriebssystem interessiert? (Torvalds) 1992 warum Linux obsolet ist (Tanenbaum) Distributionen Slackware, Debian(Gnu/Linux), SuSE, RedHat etc. X: MIT/Xfree, Oberfläche fvwm/kde/gnome Politik Open Source, GPL Microsoft Halloween Papiere ibm/hp/sgi/sun/siemens fujitsu haben Rechner mit Linux im Angebot SCO< Geld von Microsoft und Sun > ibm,... derzeit (Nov 2003): Novell schluckt SuSE, IBM kauft mehr Novell Aktien als es bei SuSE verkauft Redhat trennt sich von seinen Fans
Systemnahe Software GNU Utils: (Hilfs)programme fuer (fast) jeden Zweck bash: Kommando Oberfläche, ähnlich ksh emacs: "König der Editoren", extrem mächtig, anpassbar in Lisp; Alternativen: vi, uemacs ssh: sichere Verbindung zu anderen Rechnern (Der Feind kennt Dein System (Shannon 1949)) pgp: Verschlüsselung (Der Administrator ist Dein Feind) Compiler C, C++, Fortran, Java, Lisp, Pascal, Prolog,..., Basic Debugger, Profiler (gdb, ddd; gprof) Entwicklungsumgebungen: kdevelop, jbuilder Emulatoren: wine, bochs, vmware(s.u), Mac, Atari
Workstation@Home Linux zu Hause Installation (Distribution/Pakete?) Konfiguration Graphik/Maus/Drucker/Sound Netzanbindung Ethernet/DSL/ISDN/Modem/WLAN/USB Verwaltung KDE Kontrollzentrum yast2 z.b. Benutzer/Gruppen Backup/Restore Mail: POP, IMAP, Webmail Viren, Spamassassin Firewall: kein Zugang von aussen
Workstation@RRZN Netzanbindung über Ethernet/WLAN Ethernet: Verzeichnis.Linux Sun /home/froriep.../home Linux pc /rrznhome /home/froriep /home/froriep/rrznhome FS590.Linux Solaris /home /home/froriep/.linux /home/froriep < > Linux < > /rrznhome > /home/froriep < /home/froriep/rrznhome
vmware (wird für weitere Demonstration benötigt, Werkzeug zum Testen) Emulation eines PCs Hardware Bios Partitionierung Linux/Windows/Solaris Desaster Recovery Wechsel zwischen Systemen Vernetzung der Systeme miteinander
Administration@home Partitionierung, mounten, Verweise(softlinks) > Abbbildung 1 yast Systemverwaltung Benutzer/Gruppen/Zugriffsrechte grub Start des Systems Sicherheit firewall/inetd Updates aus dem Netz Mail Unterstützung durch spamassassin/sophos syslog Protokollierung des Vorgefallenen Backup/Restore lokal, CD Automatisch < möglichst (cron, cfengine, s.u.)
Server (nicht nur unter Linux) LAMPP Linux/Apache/Mysql/PHP/Perl: WWW Server Mail Post (sendmail, postfix): spamassassin, Antiviren (sophos Viren) ftp Dateien zur Verfügung stellen, nur anonym, sonst Sicherheitsrisiko mysql Datenbankserver Computeserver reine Rechenleistung (Cluster) lpr/cups Drucken nfs Network File System, Zugriff auf Dateien samba home, gemeinsame Dateien, Drucken (s.u.) appletalk Zugriff auf Mac Dateien ldap Benutzer/Passwort flexlm Lizenzserver ntp Uhrzeit dns Nameserver, Zuordnung Name< >Internetadresse dhcp Internet Adressen Zuweisung (s.u.) iptables Firewall > Sicherheit(s.u.) Honigtopf Scheinserver zur Ablenkung Teerpfütze gegen DoS (Denial of Service)
Beispielkonfigurationen Samba Home Verzeichnisse, Drucken, gemeinsame Verzeichnisse [global] socket address = 192.168.82.1 interfaces = 192.168.82.0/255.255.255.0 security = user encrypt passwords = yes smb passwd file = /etc/vmware/vmnet1/smb/private/smbpasswd {homes] comment = Home directories browseable = no writable = yes [printers] comment = All printers path = /var/lpd browseable = no guest ok = no writable = no printable = yes [HostFS] comment = VMware host filesystem path = / public = no writeable = yes printable = no
DHCP Zuweisung von Internet Adressen allow unknown clients; default lease time 1800; max lease time 7200; # 30 minutes # 2 hours subnet 192.168.82.0 netmask 255.255.255.0 { range 192.168.82.128 192.168.82.254; option broadcast address 192.168.82.255; option domain name servers 192.168.82.1; option domain name "localdomain";
Uni LAN workstation server innere Dienste: samba, drucken,... äußere Dienste: apache, ftp,... DMZ Demilitarisierte Zone Firewall, äußere Dienste WLAN Auswirkungen??
Sicherheit Menschen Aufstellungsort Bios/Bootlader Partitionen fest/dynamisch (usr/var) Überwachung >syslog ssh, sftp, https, imaps Antiviren Programm Firewall, Dienste/Ports (Was ist ein Port?) inetd tcp wrapper (/etc/inetd.conf, hosts.allow, hosts.deny) iptables > Abbildung 2 regelmäßige häufige Sicherheitsupdates
Administration@server partitionierung. mounten, links >Abbildung 1 Installation minimal+dienste Automatisch (cron(rechner), cfengine(netz) s.u.) nicht automatisch: yast Verwaltung bei SuSE webmin Verwaltung über WWW vnc direktes Aufschalten auf einen Rechner Benutzerverwaltung Gruppen/Zugriffsrechte Überwachung syslog/logrotate/logsurfer/snort Quota Plattenplatzbeschränkung für Benutzer Backup/Restore lokal, CD/DVD, asterix nessus< >tcpdump/etherreal< Real Beispiel unter vmware Tripwire Unversehrtheit von Dateien
cfengine Überwachung und Korrektur von Rechnern im Netz Netzwerkeinbindung Edieren von Textdateien (z.b. trage ein, falls noch nicht vorhanden ) Überwachung von Dateien, symbolischen Links, Zugriffs, Eigentumsrechte Verteilen von Dateien über das Netz, Korrekturen und Patches Ausführen von Scripten Prozessverwaltung Bestandteile: cfagent, cfrun, cfservd, cfexecd, cfkey cfenvd: Erkennung von Anomalien (Rechner verhält sich anders als normalerweise)
Beispiel cfengine.conf control: domain = ( rrzn.uni hannover.de ) access = ( froriep root ) actionsequence = ( links tidy disable editfiles shellcommands ) maxage = ( 7 ) groups: havenobin = ( pc1 pc2 ) tidy: /tmp pattern=* age=$(maxage) recurse=inf /home pattern=*~ recurse=inf links: /logs > /var/log HaveNoBin:: /bin > /usr/bin disable: /var/log/httpd/access_log rotate=2 size=>32kb editfiles: { /etc/crontab # cfengine in crontab AppendIfNoSuchLine "0 * * * * root /opt/local/bin/run cfengine"} shellcommands: havenobin.hr12:: "/usr/sbin/sendmail q" "/usr/sbin/ntpdate 130.75.1.40 >/dev/null 2>/dev/null"
Realisierungen Pc010f, pc012a, pc012c, nbanw,... halbierte Rechner Zaurus PDA mit QT/Debian, WLAN/USB Cluster Beowulf, Condor, Mpich,?? Hochverfuegbarkeit heartbeat xen, gmx mehrere Server auf einem Rechner nanni, rogator, www.ivbl, igg, anwserv, linserv Server KWR Einrichtung eines Informatikraumes (s.u.)
Drucker Linux Fileserver dhcp samba Linux Internet Firewall Iptables T DSL Dhcp Client Samba Drucker Installation W95 Netscape Programme
Pflege Installation autoyast/kickstart Klon dd mit Nachpflege Automatisch (cron, cfengine) Sicherheitspatches vom Netz Überwachung, Auswertung >Mail an Administrator Backup lokal, asterix Betrieb user/group/zugriffsrechte Sicherheit: firewall, tripwire, cfengine Restore
Rest CA Zertifizierungsstelle DMZ 3D Beispiel: OpenGL
Abbildungen Abbildung 1 Partitionen /windows/c / /opt /home Hda1 /windows/d Swap /dev/hda /local 2 5 6 4 Hdb1 /local/opt /local/home /dev/hdb /dev/hda6 = / mount /dev/hda1 /windows/c mount /dev/hda2 /windows/d mount /dev/hdb1 /local ln s /local/home /home ln s /local/opt /opt
Abbildung 2 iptables iptables F INPUT # Alles leeren iptables F OUTPUT iptables F FORWARD # iptables P INPUT DROP # alles schliessen iptables P OUTPUT DROP iptables P FORWARD DROP # iptables P OUTPUT ACCEPT # von drinnen nach draussen iptables A INPUT m state state ESTABLISHED j ACCEPT # iptables A INPUT p udp s 130.75.1.40 dport 123 j ACCEPT # Datum/Zeit # iptables A INPUT p tcp syn dport smtp j ACCEPT # Mail # iptables A INPUT p tcp syn s 130.75.0.0/16 dport 22 j ACCEPT # ssh eingeschraenkt # iptables A INPUT p tcp syn dport 80 j ACCEPT # apache von ueberall iptables A INPUT p tcp syn dport 443 j ACCEPT # iptables A INPUT p icmp icmp type echo request j ACCEPT # ping # iptables A INPUT j LOG # Logs