Watchguard Firebox 1000 (bzw. Firebox III)

  • So, habe mal weiter "herumgedoktort", im Nachhinein ist man schlauer als vorher, daher mal mein Erfahrungsbericht:


    Die Watchguard Firebox III alias 1000 ist erstmal hardwaretechnisch ein Rechner mit Super Socket 7 Mainboard, 3 Macronix MX98715 Ethernet-Schnittstellen, 1 Parallelport mit Nicht-Standard-1-reihig-Leistenstecker, 2 serielle Schnittstellen (eine davon an der Gehäuserückwand via Din 9-polig Buchse erreichbar) und einem liegenden, freien PCI-Slot ausgestattet, CPU ist ein AMD K6-2+ 300 (geht ohne Probleme bis einschließlich 400 MHz, via der drei BF-Jumper die direkt an einer Ecke des CPU-Sockels zu finden sind, einzustellen).

    RAM ist in Form eines SO-DIMM Slots verfügbar, je nach Firebox-Modell steckt ein SO-DIMM PC100 zwischen 64MB und 256MB drin (bei mir: 64MB).

    Außerdem ist auf dem Board ein Kryptoprozessor für VPN zu finden (kann man wohl unter Linux wieder für VPN auch nutzen), und ein fest integriertes 8MB (248 Spuren, 4 Köpfe, 16 Sektoren) Flash-Laufwerk.

    Ein Keyboard-Connector 4-Pin ist auf dem Mainboard natürlich auch vorhanden, nebendran ist u.a. auch ein Jumper für Master/Slave-Einstellung des IDE-Controllers vorhanden (beides siehe Foto).


    Pin 1 --- PS2 +DATA

    Pin 2 --- GND

    Pin 3 --- VCC (5Volt)

    Pin 4 --- +CLK


    Pin 4 ist dabei der Pin, der in Richtung Mitte des Mainboards zeigt, nicht zur Gehäuserückwand.


    Ich habe zuerst einen reinen CF-Card-IDE-44pin-Adapter genutzt, leider ist das Teil nicht zuverlässig (keine Ahnung warum).

    Danach habe ich von einem USB-auf-Parallel-IDE-Adapter (der hat auch ein externes Netzteil mit einem Kabel mit Molex-Anschluß) den 44-pin-Steckeradapter genommen und umgedreht benutzt.

    Dachte erst, das geht nicht, aber doch, ist ja nur erstmal 1-1 elektrisch durchgeleitet, kann man also auch "falsch herum" nutzen.

    Dann an ein normales 40-Pin IDE-Kabel ein CD-ROM drangehängt (warum siehe weiter unten).

    In dem PCI-Slot steckt eine S3 Trio64V Cardex SVGA-Karte, passt in der Art und Weise, dass das Teil komplett versenkt im Gehäuse liegend eingesteckt bleibt, VGA-Connector natürlich nach aussen sichtbar (der PCI-Slot hat eine Blende nach aussen, die ausbaubar ist).


    Das ist der Hardwareaufbau, der dazu geführt hat, dass ich mit der Taste "F2" ins BIOS reingekommen bin, und konnte bei der Boot-Reihenfolge "CD-ROM zuerst, dann HDD" anwählen.

    Damit kann man eine Linux Live-CD oder auch eine bootfähige MS-DOS CD-ROM nutzen, und kommt auch in dieser Konstellation an das auf dem Board integrierten Flash-Laufwerk dran.


    So, jetzt meine Fehler, die ich mangels Erfahrungswerte und fehlenden Google-Einträgen selbst machen musste:


    Ich habe die anderen 2 Jumper, die man neben dem Master-Slave-Jumper findet, natürlich auch ausprobiert. Der Jumper, der direkt neben dem Master-Slave-Jumper sitzt, löscht das eingebaute Flash-Laufwerk (!), der darüber hinaus zu findende Jumper macht irgendwie gar nichts, bei gesetzem Jumper kann aber der Rechner nicht laufen (vielleicht CMOS RAM löschen?).

    Dadurch, dass ich den Jumper mit dem Löschen gleich zu Anfang genutzt hatte, also noch vor dem Umstellen der Bootreihenfolge und des Nutzens des CD-ROM Laufwerks, konnte ich den originalen Inhalt des Flash-Laufwerks NICHT retten (fragt sich aber sowieso, wohin retten... war ja kein anderes Laufwerk zum Speichern da, hätte mein selbstgeschriebenes HDD-Imaging Programm auf serielle Schnittstellen-Nutzung umschreiben müssen).

    Ich habe ausserdem zuerst sehr lange mit dem CF-Card-IDE-44pin-Adapter herumprobiert, das war vergeblich.


    Mit Hilfe des CD-ROM Laufwerks kann man aber, selbst wenn das interne Flash-Laufwerk gelöscht ist, booten, und kann dann bspw. via MS-DOS und FDISK sowie FORMAT das Teil wieder mit MS-DOS bootfähig machen !

    Damit habe ich dann stundenlang versucht, unter MS-DOS und einem Macronix Ethernet Packet Driver mTCP und später auch PC/TCP zum Laufen zu bringen.

    Ohne Erfolg ... der Treiber lässt sich laden und zeigt auch die Resourcennutzung korrekt an, aber besitzt immer die MAC-Adresse 00:00:00:00:00:00, damit wird das im Netzwerk nix.

    Ich kenne auch nicht den Trick, unter MS-DOS manuell eine MAC-Adresse mit mTCP (MTCPCFG Datei) oder mit PC/TCP (Protocol-INI, NDIS-Treiber statt Packet Driver) zuzuweisen.

    Ich habe zwei verschiedene MS-DOS Treiber ausprobiert (2.04 und 2.11 von Macronix), beide ohne Erfolg.

    Da das ursprüngliche Linux das aber konnte, gehe ich davon aus, dass das unter Linux eher geht, und eben nicht unter MS-DOS.


    Dann habe ich versucht, mit PHLASH16 das BIOS auszulesen, die Dreckssoftware will aber sofort eine zu brennende Image-Datei (auch wenn ich nur auslesen will).

    Danach nochmal mit UniFlash 1.36 ausprobiert, mit Erfolg eine 256KB ROM-Datei auf dem internen Flash-Laufwerk erzeugt.

    Das Phoenix BIOS 4.0 Release 6.0 kann aber mit den von mir gefundenem Phoenix BIOS-Editor nicht verändert werden, weil es wohl für das Programm "zu neu" ist (Fehlermeldung des Phoenix BIOS Editors: "LZINT Compression gefunden"). Mit einem anderen Tool kann man zwar das Entpacken, aber eben nicht wieder zusammensetzen, geschweige denn dass die entpackten Teile editierbar sind. Die BIOS-Image-Datei habe ich übrigens mit MSKERMIT und der seriellen Schnittstelle auf meinen modernen Rechner übertragen (dort habe ich "Kermit für Windows").


    Was ich bisher noch nicht hinbekommen habe: Ein Parallelbetrieb von internem Flash-Laufwerk und einem 2. Laufwerk (einer CF-Card). Stattdessen bekommt man es wohl je nach BIOS-Einstellungen hin, dass nur die CF-Card als einziges Laufwerk benutzbar ist. Das ist nicht weiter schlimm, weil ja 8MB Flash jetzt nicht der Burner ist.

    Allerdings muss man die CF-Card dann wieder mit einem anderen Rechner erst vorbereiten :(

    Wichtig dabei ist, dass man die Laufwerksgeometrie der CF-Card kennt. Man kann im BIOS wenigstens via "User" Einstellungen die Geometrie einstellen, bis 8GB (4096 Cyls, 16 Heads, 63 Sectors) geht.


    Fazit: Entweder kann die Watchguard Firebox 1000 mit der seriellen Schnittstelle alleine und einer CF-Card unter MS-DOS nutzen, oder man nutzt Linux und einer CF-Card und dann auch mit den Ethernet-Schnittstellen (Kernel-Modul dazu heisst "Tulip"), das interne Flash-Laufwerk kann leider nicht parallel genutzt werden - liegt aber ganz alleine an dem angepassten BIOS, was fast *keine* weiteren Einstellungsmöglichkeiten hat.

    Alternativ hätte man auch mit einer Linux-Live CD die LILO-Config-Datei *ohne Löschen des internen Flash-Laufwerks* so abändern können, dass man einen "Other" Eintrag hätte, um MS-DOS bspw. von woanders starten zu können. Ist aber kein brauchbarer Ansatz, weil (siehe oben) nur ein Laufwerk gleichzeitig verfügbar ist (wie erwähnt dank Drecks-BIOS nur entweder das interne Flash-Laufwerk oder der IDE-Anschluß mit CF-Card). Oder man nutzt ein IDE-CD-ROM-Laufwerk in externem Gehäuse und mit breitem IDE-Kabel, welches man zwischen Gehäusedeckel und Gehäusewand herausführt.

  • Pfsense und wohl auch M0n0wall gibt es auch für die Fireboxen, aber ich brauche momentan keine Firewall und Retro-PCs die universeller nutzbar sind (und wo man was interaktiv machen kann), haben m.E. den größeren Charme. Für pfsense und M0n0wall brauche ich auch keine VGA Karte und auch kein Keyboard, die Administration läuft wohl über's Netzwerk/über die serielle Schnittstelle.

    "Ich habe keine Zeit mich zu beeilen." (Igor Strawinsky)


    ... und schaut auch mal bei meinem Blog vorbei ...