|
DECnet
DECnet ist ein Netz fuer Rechner von Digital Equipment Corporation (:= DEC), bzw fuer Rechner, die die DECnet-software besitzen. DECnet gibt's fuer die Betriebsysteme VMS (1), RSX (2), ULTRIX (3), und mit Einschraenkungen fuer DECnet-DOS, das eine DEC-Variante von MS-DOS darstellt und auf IBM-kompatiblen Muehlen laeuft. Die physikalische Grundlage von DECnet ist Ethernet, sowohl als Koax als auch neuerdings vermehrt Glasfaser. Die kleinste Uebertragungsge- schwindigkeit betraegt 9600 kBaud, die Groesste 10 MBaud. Es gibt aber nicht nur ein DECnet, so wie es zb nur ein FIDOnet gibt, sondern sehr viele in der ganzen Welt mit sehr unterschiedlichen Groessen. Diese diversen DECnets sind teilweise miteinander verbunden und haben Gateways zu anderen Netzen. Betrieben werden die DECnets meistens von Unis, Instituten und aehnlichem, aber auch Firmen haben welche, bzw lassen sich dran anschliessen. Die meisten DECnet-Installationen enthalten zu 90% VAXen unter VMS und haben damit eine sehr homogene Benutzeroberflaeche. Adressierung ------------ Die Adresse eines Rechners im DECnet lautet 'nodename::username', wobei node:OB 1) ein logical (4) ist 2) eine Zahl zwischen 2.1) 1 und 1024 ist; damit werden lokale Rechner angesprochen. 2.2) zwischen 1025 und 64512 (= 2**16-2**10) ist. Die Zahlenadressierung wird oft in der Form x.y angezeigt. Die eigentliche Adresse kann dann mit x*1024 + y berechnet werden. Diese 2. Adressierungsart muss dann verwendet werden, wenn kein logical verfuegbar ist, d.h. der Systemmanager es nicht fuer implemantationswuerdig angesehen hat. In den folgenden Ausfuehrungen werde ich mich auf VMS beschraenken. Moeglichkeiten -------------- DECnet bietet eine ganze Reihe von Netzwerkdiensten an: Remote Login: mit dem Befehl 'set host <node>' kann man sich auf einem weiteren Rechner einloggen. Beispiel: set host netvax Remote command: einen Befehl an einen anderen node schicken. Beispiel: NETDCL.COM (siehe unten) Remote job entry: einen task auf einem anderen node starten. Beispiel: NETDCL.COM (siehe unten) File Transfer: ein Filetransfer ist in beiden Richtungen mglich. Entweder mit: copy source node"user password"::destination oder: copy node"user password"::source destination Beispiel: copy test.txt netvax"framstag geheim"::disk3:<users.framstag> Mail: Jeder User hat in VMS seine eigene mailbox. Wobei mailbox woertlich zu nehmen ist: ein Briefkasten in den der Postbote (:= DECnet) Briefe einwirft oder man selbst Briefe an andere User aufgibt. Angekommene mails werden innerhalb der mailbox gespeichert und beim einloggen wird angezeigt, ob und wieviel mail man bekommen hat. Diese mails koennen dann in normale files umkopiert werden. Beim mail-Aufruf kann entweder ein vorher erstelltes (Text-) File angegeben und abgeschickt werden, oder mail fragt nach dem Text interaktiv. Ist der Adressent eingeloggt, bekommt er die Nachricht, dass er soeben post erhalten hat. Beispiel: mail/subject="neues vom CCC!" test.txt netvax::framstag Phone: Das ist die Facility zum chatten! PHONE ist eine interaktive Kommunikation zwischen Usern und entspricht dem TALK bei UNIX oder einem "deluxe-"CHAT bei VM/CMS. Der Bildschirm wird in 2 Teile gesplittet, wobei die oberen Haelfte einem selber gehoert, die untere dem Telefonpartner. Nun kann munter drauflosgetippt werden, wobei jeder Buchstabe sofort ueber- mittelt wird und nicht erst der ganze Satz nach <return>. Bei Bedarf kann auch ein Konferenzphone geschaltet werden: der Bildschirm wird dann in x User aufgesplittet... und alle koennen gleichzeitig tippen (*wahnsinnschaos*). Um sich vor einem moeglichen Telefonterror zu schuetzen gibt's die Moeglichkeit sein phone abzuklemmen: set broadcast=nophone Beispiel: phone 45152::framstag Wie weiss ich nun welche VAXen in meinem DECnet drin sind? Da gibt's die schoene Utility mcr ncp, die einem mit 'mcr ncp show known nodes' ... was wohl zeigt? Tja, und wie komm ich nun an die User? -------------------------------------- 1. Man kennt diesen kommunikationswilligen User. prima, alles paletti 3. Mit 'phone dir node' bekommt man eine Liste der user auf der 'node'-VAX 2. Falls 2. nicht klappen sollte: NETDCL.COM (7) 'NETDCL.COM' muss im aktuellen Directory gespeichert sein. Der Aufruf erfolgt dann mit: @netdcl Vorausgesetzt die ZielVAX laesst einen herein, ist man als User DECNET drin. Nun schauen wir uns mit 'show user' um, ob jemand bekanntes da ist und phonen oder mailen ihn an (nach logout vom netdcl). Aber Vorsicht: es koennte auch ein Prof oder Sysop dahinter stecken, der gerade beschaeftigt ist. Aber da kann man sich ja noch herausreden mit: "Ihr phone war nicht abgestellt und da dachte ich mir, ruf doch mal an...." Wie komme ich nun in's DECnet? ------------------------------ 1. login 1.1 Man ist schon drin. Die meisten Unirechenzentren vergeben Accounts auch an Studenten. 1.2 Ueber einen oeffentlichen Account; leider gibt's da sehr sehr wenige...und es werden immer weniger. Das liegt an dem unkollegialen Verhalten einiger 'Mithacker', die solange keine Ruhe geben, bis sie Systemprivilegien besitzen und die VAX zum Absturz bringen. Spaetestens dann gibt's einen oeffentlichen Account weniger. Also, liebe Leut, diese oeffentliche Accounts sind extra FUER UNS eingerichtet worden! Die Uni braucht so was nicht! Missbraucht diese Gastfreundschaft nicht! Einen Tip habe ich: die VAX der FH der Post in Berlin laesst guest herein, erlaubt ihm aber dann keinen set host (:= remote login). NUA: 45300090864 ...und wenn jemand mal im BELWUE ist: 50177::boerse ist eine offene Mailbox 2. mail geht eigentlich nur, wenn der Betreffende node noch andere mail-software faehrt. zB: JNET fuer EARN/bitnet-mail oder EAN fuer x.400-mail Direkt DECnet zu adressieren geht von aussen nicht. Was kann ich mit DECnet anfangen? --------------------------------- Im allgemeinen: fast gar nichts, wenn ich vom User ausgehe, der von aussen ins DECnet moechte. Der Grund: DECnets sind im Prinzip nicht fuer den oeffentlichen Zugang ausgelegt. DECnet lohnt sich eigentlich nur fuer den authorisierten User, sei es nun Universitaetsangehoeriger, Student, Betreiber etc... und latuernich fuer den Hacker :-) Es gibt keine Standard-mailboxen, -server, oder andere nuetzliche Dinge. Der Betreiber des jeweiligen DECnets muss das schon selber einrichten - und die meisten tun es leider nicht. Gateways aus DECnet heraus zu anderen Netzen: Mit FTP oder TELNET ueber TCP/IP in andere Uni-Netze, wie das BELWUE (6), mit JNET ins EARN/bitnet, mit gMAIL ins uucp/sub-net, mit EAN ins DFN oder mit psi ins datex-p. Beispiel eines DECnet(8): Das DECnet im BELWUE ---------------------------------------------- Es enthaelt zur Zeit ca 300 nodes und ist noch im Aufbau begriffen. Vernetzt sind alle Unis in Baden-Wuertemberg, viele Institute und einige Firmen. Zum Schluss noch eine Story, direkt aus dem Leben eines DECnet-Users gegriffen: Es war einmal ... ----------------- Es folgt nun die unblaubliche Maer wie man aus User Hacker macht: Auf jeder VAX gibt es einen Standard-Account DECNET mit pw:= DECNET, der aber NICHT mit remote login erreicht werden kann. Dieser Account ist fuer verschiedene DECnet-Utilities und als Pseudo-Gast-Account vorgesehen. Dieser DECNET-Account hat sehr eingeschraenkte Rechte, so ist zb ein editieren oder ein weiterer Netzwerkzugriff nicht moeglich. Das HELP-Menue wird vom System eingerichtet und entspricht dem MAN bei UNIX. Hier an der Uni Ulm gibt es ein *unglaublich* unwissendes Rechenzentrum, mit einem noch groesseren Mangel an Literatur (mal abgesehen von den 80 kg VAX/VMS- Manuals). Der aktive User darf sich seine Information, die ueber "run", "FORTRAN" oder "logout" hinausgehen, selbst suchen. Gut, dass ich im BELWUE- DECnet noch andere Accounts besitze, wo mehr Informationen fuer den User ange- boten werden. In einem Tuebinger Rechner fand ich im HELP-Menue die Erklaerung zur Prozedur NETDCL.COM, die Kommandos an den DECNET-Account anderer VAXen schickt und dort ausfuehren laesst (remote command). Die Anleitung im HELP- Menue war Idiotensicher - also auch fuer mich :-) Mit "$ mcr ncp show known nodes" bekommt man ja bekanntlich die aktiven VAXen im DECnet und so probierte ich mal der Reihe nach alle durch, um zu sehen, wo es noch mehr Infos fuer einen wissensdurstigen User gibt. Mit "help", "dir" und aehnlichen Befehlen schaute ich mich dann um. Leider haben 2/3 aller VAXen den DECNET-Account fuer das NETDCL.COM gesperrt , wahrscheinlich aus Angst vor unberechtigten Zugriff, wie auch immer der aussehen mag. Von manchen Systemmanagern kam dann auch ab und zu eine mail an mich, in der sie sich bei mir erkundigten, ob sie mir weiter helfen koennten bzw einer schickte mir eine NETDCL.COM -Version fuer ULTRIX. Dann, nach einem Monat kam das G R A U E N in Form folgender mail von meinem Systemmanager: ------- From: TUEBINGEN::SYSTEM 31-MAY-1989 15:31:11.38 To: FRAMSTAG CC: Subj: mach bloss kein scheiss sonst fliegst du raus From: ITTGPX::SYSTEM 29-MAY-1989 16:46 To: TUEBINGEN::SYSTEM Subj: Systemeinbruch am 01-May-1989 An den Systemmanager des Rechners TUEBINGEN, wir hatten am 01-May-1989 ueber den DECnet-Account einen Systemeinbruch, der von Ihrer Maschine ausging. Ueber unser Accounting konnten wir feststellen, dass Ihr User mit dem Namen FRAMSTAG ueber das "trojanische Pferd" NETDCL.COM auf unserem Brueckenrechner und auf jedem Rechner unseres VAXclusters einen interaktiven Login emuliert hat. Nennen Sie uns Namen und Adresse dieses Users und klaeren Sie den Vorgang vollstaendig auf. Wir weisen Sie darauf hin, dass sich der User durch diesen Vorgang strafbar gemacht hat. Sollte sich dies wie- derholen, so sehen wir uns gezwungen entsprechende Gegenmassnahmen einzuleiten. Wir werden ueberpruefen, ob an unserem System Schaden entstanden ist. Sollte dies nicht der Fall sein, so werden wir von Massnahmen diesmal absehen. Teilen Sie uns ueber DECnet die Ergebnisse Ihrer Recherchen mit - wir sind ueber die Knotennummer 1084::System zu erreichen. Dipl.-Ing. Michael Hager --------- Mein Systemmanager drohte mir meinen Account zu loeschen, falls ich nicht augenblicklich die Sache klaeren wuerde. *schluck* Ich war mir meiner Unschuld absolut gewiss; nur - wie sag ich's den anderen? Ich erklaerte klitzeklein alles meinem Systemmanager, was er dann auch geblickt hat, aber die Strafandrohung schwebte immer noch .... Also schnell zur Tastatur gegriffen, eine Erklaerungsfile verfasst und ab- geschickt an diesen wuetenden Systemmanager in Stuttgart. Leider war's nichts damit: Er hatte keinen Speicherplatz mehr und meine Erklaerungsmail landete im Nirwana: $ mail erklaerung To: 1084::system %MAIL-E, error sending to user SYSTEM at 1084 %MAIL-E-OPENOUT, error opening SYS$SYSROOT:[SYSMGR]MAIL$00040092594FD194.MAI; as output -RMS-E-CRE, ACP file create failed -SYSTEM-F-EXDISKQUOTA, disk quota exceeded Auch der Versuch ihn ueber PHONE zu erreichen lief schief: er hatte in seiner Hacker-Paranoia auch noch sein PHONE abgklemmt...und nirgenwo gibt's eine Liste in der die REAL-Adressen von den DECnet-Adressen stehen. Nun stand ich mit dem Brandzeichen "GEFAEHRLICHER HACKER" da und konnte mich nicht rechtfertigen. Ich klagte mein Leid bei einem Bekannten, der Sysop im RZ in Freiburg ist - der fragte bei weiteren ihm bekannten Sysops in Stuttgart nach. Irgendjemand hatte dann 3 Telefonnummern gefunden. Eine davon war tat- saechlich richtig. Ich bekam auch dann diesen Hager ans Telefon und erzaehlte ihm, was ich denn auf seinem DECnet-Account gemacht hatte. Er nahm dann auch prompt seine Vorwuerfe zurueck (von Entschuldigung aber keine Spur). Ich bat ihn schnellst- moeglichst meinen Systemmanager in Tuebingen Entwarnung zu geben, sonst wuerde mir noch mein Account geloescht, wie es in einem aehnlichen Fall einem Komilitonen von mir schon passiert war (auch hier war Hager dran schuld). Er sagte mir zu, dass er sofort seine Vorwuerfe offiziell zurueckziehen wuerde. Nach ueber einer Woche ist dies immer noch nicht geschehen (Ich durfte trotzdem meinen Account behalten); dafuer kam folgende mail an mich (an einen dritten Account von mir): --------- From: 1084::HAGER 1-JUN-1989 12:51 To: 50180::STUD_11 Subj: Systemeinbruch An den User STUD_11 des Rechners mit der Knotennummer 50180, Sie haben am 01-Jun-1989 ab 12:29 auf mindestens einem unserer instituts- eigenen VAXen einen Systemeinbruch begangen. Wir konnten diesen Vorgang mitprotokollieren. Wir fordern Sie hiermit auf, Rechenschaft ueber diesen Vorgang abzulegen. Sollten wir bis zum 09-Jun-1989 keine lueckenlose Aufklaerung ueber den Vor- fall von Ihnen erhalten sehen wir uns gezwungen, weitere Massnahmen zu er- greifen. Die dadurch entstehenden Kosten wuerden wir selbstverstaendlich Ihnen auferlegen. Eine Aufklaerung ist somit in Ihrem eigenen Interesse. Sie koennen uns ueber DECnet-Mail mit der Adresse 1084::HAGER oder ueber unten folgende Adresse erreichen. Institut fuer Technische Thermodynamik und Thermische Verfahrenstechnik Dipl.-Ing. M. Hager Tel.: 0711/685-6109 Dipl.-Ing. M. Mrzyglod Tel.: 0711/685-3398 Pfaffenwaldring 9/10-1 7000 Stuttgart-80 M. Hager M. Mrzyglod ---------- Das war, weil ich "$ PHONE 1084::SYSTEM" gemacht hatte. Auf diese Mail habe ich nicht mehr geantwortet. Ich hab keine Lust mehr. Anhang: NETDCL.COM ------------------ $ IF f$mode() .EQS. "NETWORK" THEN GOTO network $ IF p1 .EQS. "" THEN READ/PROMPT="_Node: " sys$command p1 $ nodespec = p1 - "::" $ nodename = f$extract(0,f$locate("""",nodespec),nodespec) $ nodespec = nodespec+"""decnet decnet""" $ ON WARNING THEN CONTINUE $ CLOSE/ERR=open_server dcl_server $open_server: $ OPEN/READ/WRITE dcl_server 'nodespec'::"TASK=NETDCL"/ERROR=open_failure $ ON WARNING THEN GOTO exit $flush_output: $ READ dcl_server record $ IF record .EQS. "SEND_ME_A_COMMAND" - THEN GOTO send_command $ WRITE sys$output record $ GOTO flush_output $send_command: $ IF p2 .NES. "" THEN GOTO single_command $ READ sys$command record /PROMPT="''nodename'> " /END=exit $ record := 'record $ IF record .EQS. "EXIT" THEN GOTO exit $ WRITE dcl_server record $ GOTO flush_output $single_command: $ command := 'p2' 'p3' 'p4' 'p5' 'p6' 'p7' 'p8' $ WRITE dcl_server command $single_flush: $ READ dcl_server record $ IF record .EQS. "SEND_ME_A_COMMAND"- THEN GOTO exit $ WRITE sys$output record $ GOTO single_flush $open_failure: $ ON WARNING THEN EXIT $ ON error then copy/log netdcl.com 'nodespec':: $ COPY/LOG Netdcl.Com 'nodespec':: $ WAIT 0:0:1 $ OPEN/READ/WRITE dcl_server 'nodespec'::"TASK=NETDCL" $ ON WARNING THEN GOTO exit $ GOTO flush_output $exit: $ CLOSE dcl_server $ EXIT $network: $ OPEN/READ/WRITE dcl_link sys$net $ SET NOON $ dcl_verify = 'f$verify(0)' $ DEFINE sys$output dcl_link: $server_loop: $ WRITE dcl_link "SEND_ME_A_COMMAND" $ READ dcl_link dcl_string /END_OF_FILE=server_exit /ERROR=server_exit $ 'dcl_string' $ GOTO server_loop $server_exit: $ IF dcl_verify THEN set verify $ CLOSE dcl_link $ DEASSIGN sys$output $ EXIT Erklaerungen: ------------- (1) VMS ist das Standardbetriebsystem fuer die VAX (2) RSX ist das Echtzeitbetriebsystem fuer die PDP 11 (3) ULTRIX ist UNIX fuer VAX (4) ein logical ist eine (System- oder Prozess-weit verfuegbare) Variable (5) source und destination sind VMS-Pfad und -Filebezeichnungen, allgemeine Form: disk:<directory.subdir>name.extension wobei es latuernich mehrere verschachtelte subdirs geben kann. (6) BELWUE := Baden-Wuerttembergs Extended LAN (7) Vorsicht mit NETDCL.COM! Ich hafte nicht fuer die Anwendung (8) siehe auch der SPAN-Artikel von Stephan Stahl im "Das Chaos Computer Buch" Als weiterfuehrende Literatur kann eigentlich nur das DECnet Manual von DEC empfohlen werden. Framstag asta@dulruu51.bitnet asta@rz.uni-ulm.dbp.de 50177::asta (im BELWUE) ----------------------------------------------------------------------------- |
[Contrib]
[Chalisti]
[01]
DECnet