Upload
eithne
View
32
Download
0
Embed Size (px)
DESCRIPTION
3 Netzdienste im Internet. Netzdienste = über Ports ansprechbare Dienste , die hauptsächlich (aber nicht nur) für die Fernnutzung gedacht sind. Anwendungssoftware. Anwendungssoftware. zusätzliche Dienste, insbes. Netzdienste. BS-Dienste. Betriebssystem. 3.1 Standarddienste. - PowerPoint PPT Presentation
Citation preview
vs3 1
3 Netzdienste im Internet
vs3 2
Netzdienste
= über Ports ansprechbare Dienste,
die hauptsächlich (aber nicht nur) für die Fernnutzung gedacht sind
Anwendungssoftware
Betriebssystem
zusätzliche Dienste,insbes. Netzdienste
BS-Dienste
Anwendungssoftware
vs3 3
3.1 Standarddienste
sind „überall“ verfügbar:
TELNET, SSH (secure shell) - Fernbenutzung
FTP (file transfer protocol) - Dateiübertragung
TFTP (trivial file transfer protocol) - einfache Dateiübertragung
SMTP (simple mail transfer protocol) - Elektronische Post
HTTP (hypertext transfer protocol) - World-Wide Web
. . . . .
vs3 4
Zusätzlich betriebssystemspezifische Standarddienste, z.B. für Unix:
rlogin (remote login) - Fernbenutzung
rsh (remote Shell) - Fernausführung einzelner Programme
Als Klienten fungieren meist Systemprogramme mit geeigneter
Benutzerschnittstelle (Dialog statt simpler Frage/Antwort!), z.B.
Unix-Befehl ftp hostname mit zeilenorientiertem Dialog,
Unix-Befehl ssh hostname mit vollständiger Sitzung (!),
Web Browser mit GUI,
etc. . . . . .
vs3 5
Ansprechen der jeweiligen Server:
über wohlbekannte Ports (well-known ports)
Portnummern:
1 – 255 Standarddienste (BS-unabhängig)
512 – 1023 BS-spezifische Dienste
1024 – sonstige
„reservierte Ports“
vs3 6
Klient Dienst Port Prot. Socket Login Programm
daytime daytime 13 tcp/udp stream root /etc/daytimed
ftp ftp 21 tcp stream root /etc/ftpd
ssh ssh 22 tcp stream root /etc/sshd
telnet telnet 23 tcp stream root /etc/telnetd
mailtool smtp 25 tcp stream root /etc/sendmail
tftp tftp 69 udp dgram root /etc/tftpd
browser http 80 tcp stream root /etc/httpd
rlogin login 513 tcp stream root /etc/rlogind
rsh rsh 514 tcp stream root /etc/rshdrcp.....
vs3 7
Beachte: Server ist nicht an bestimmtes Klientenprogramm gebunden !
Beispiele: telnet localhost 25
erlaubt direkten Dialog mit dem lokalen Mail Server
(sofern nicht aus Sicherheitsgründen abgeblockt)
telnet jefe 79fink
produziert (fast) die gleiche Ausgabe wie
finger fink@jefe
( Für Protokollfamilie IPv6 statt IPv4: tcp6 , udp6 )
vs3 8
3.2 Fernerzeugung von Prozessen
erfolgt durch einschlägigen Server:
Prozesserzeuger (process server, spawner)
! Verschiedene Varianten möglich für
- Autorisierung des erzeugten Prozesses
- Ein/Ausgabe-Umgebung des erzeugten Prozesses
- ausgeführtes Programm
vs3 9
3.2.1 Internet Superserver
(auch „Internet Daemon“, Programm inetd )
- bedient alle wohlbekannten Ports (gemäß 2.4.3),
- erzeugt Prozesse (gemäß 2.4.3d),
- die jeweils portspezifisches Programm ausführen (gemäß 3.1)
Typische Arbeitsweise nach dem fork :
- erzeugten Socket auf Standard-E/A 0, 1, 2 legen,
- exec für erforderliches Programm (z.B. ftpd) ausführen
vs3 10
Initialisierung des Internet Daemon bei Systemstart (Unix):
1. /etc/inetd.conf enthält die Beschreibung der zu unterstützenden Dienste (gemäß Tabelle in 3.1) – außer der Portnummer; entsprechende Sockets werden erzeugt (socket).
2. /etc/services enthält Zuordnung der Portnummern zu den Diensten; die Sockets werden entsprechend benannt (bind).
3. Warten auf Dienstanforderungen (select).
Achtung! Dienste sind i.d.R. öffentlich und werden mit
root-Autorisierung erbracht Sicherheit gefährdet !
vs3 11
3.2.2 Fernausführung beliebiger Programme
Standarddienst „Fernausführung“ (remote execution)
durch Server „Prozeßerzeuger“ (process server)
(Verallgemeinerung des Internet Daemon)
= Prozeß, der beliebig programmierbare Prozesse erzeugt
vs3 12
z.B. Auftrag = Unix-Befehl
Effekt der Bauftragung: hinter Socket verbirgt sich die
Standard-E/A des erzeugten Prozesses
Server ist /etc/rshd (passender Klient ist rsh )
Oder Fernbenutzung (remote login)
Server ist /etc/rlogind (passender Klient ist rlogin )
! Sicherheit gewährleisten Zugangskontrolle !
[Literatur: W.R. Stevens: UNIX Network Programming. Prentice-Hall 1999]