Resetbox: Difference between revisions

From NoName e.V.
Jump to navigation Jump to search
No edit summary
 
(24 intermediate revisions by 9 users not shown)
Line 1: Line 1:
[[Image:Resetbox_proto_01.jpg|thumb|left|Erster Prototyp]]
[[Image:Resetbox_proto_01.jpg|thumb|left|Erster Prototyp]]


Wir bauen uns eine eigene Resetbox (man schließt sie an einen Computer an und kann diesen aus der Ferne resetten/eischalten/ausschalten).
Wir bauen uns eine eigene Resetbox (man schließt sie an einen Computer an und kann diesen aus der Ferne resetten/einschalten/ausschalten).


= Hardware =
= Hardware =
Line 22: Line 22:
== Firmware flashen ==
== Firmware flashen ==
AVRDUDE_BAUDRATE muss auf 38400 gesetzt werden. Erfolgreich geflashed haben wir das Ding zwischenzeitlich, und Ethersex läuft mit kleinen Modifikationen.
AVRDUDE_BAUDRATE muss auf 38400 gesetzt werden. Erfolgreich geflashed haben wir das Ding zwischenzeitlich, und Ethersex läuft mit kleinen Modifikationen.
== EEPROM initialisieren ==
(echo -n 1 ; dd if=/dev/zero bs=4096 count=1) > eeprom-init.img
avrdude -p m128 -c avrispmkii -P usb -U eeprom:w:eeprom-init.img:r
== Crossover-Interface zum testen aufsetzen ==
radvd starten um IPv6-Adressen zu verteilen:
interface eth0
{
AdvSendAdvert on;
MinRtrAdvInterval 3;
MaxRtrAdvInterval 10;
prefix 2001:db8:1:0::/64
{
AdvOnLink on;
AdvAutonomous on;
AdvRouterAddr off;
};
};
radvd -C radvd.conf -s -d 99
Adresse konfigurieren und pingen:
ip -6 address add 2001:db8:1:0::1/64 dev eth0
ping6 2001:db8:1:0:aede:48ff:fefd:fee


= TODO =
= TODO =
== toxios ==
== toxios ==
* widerstände am optokoppler kleiner machen
* beschriftungen ergänzen, evtl am usb-port die belegung daneben schreiben, plus/minus für die pins an sich
* ethernet-buchse ca. 2mm nach hinten setzen damit die nicht anstößt.
* hardware-killswitch einbauen - am besten entweder gut erreichbar auf der oberseite bzw dort wo der MCU-reset ist, oder auf der außenseite (beim ethernetport), aber das macht das slotblech komplizierter
* slotblech fertigen
* slotblech fertigen
* R17 tauschen gegen 10k


== sECuRE ==
== sECuRE ==
* CLI-tool fertigstellen
* Lötanleitung fertigstellen
* Uhrzeit prüfen im minikrb5
* EEPROM mit 0x00 initialisieren via avrdude
* minikrb5 upstream schicken
* minikrb5 upstream schicken
* digest::skein nutzen und ins menuconfig integrieren
* Präsentation vorbereiten/Handbuch ergänzen
* Präsentation vorbereiten
 
 
 


[[Image:Resetbox-eingebaut.jpg|thumb|right|Im Rechner]]
[[Image:Resetbox-eingebaut.jpg|thumb|right|Im Rechner]]


= Software =
= Software =
* Digest::Skein kann einen 64-bit großen Digest produzieren
* IPv6, damit man die Box einfach in unterschiedlichen Netzen betreiben kann.
* Daraus wird dann die IPv6-Adresse abgeleitet (64-bit Prefix + 64-bit Hash)
* Somit kann man von einem beliebigen Rechner mit dem passenden Programm die Resetbox finden, die man sucht, z.B. „manage-reset box01“ hashed dann „box01“ und verbindet sich. Oder man nimmt den FQDN des Hosts, für den sie zuständig ist.
* Natürlich ist die Resetbox kerberisiert :) (für Kerberos-Agnostiker natürlich auch mit dem Standard-Ethersex htaccess absicherbar)
* Natürlich ist die Resetbox kerberisiert :) (für Kerberos-Agnostiker natürlich auch mit dem Standard-Ethersex htaccess absicherbar)
* Zugriff über ein CLI-tool oder zur not auch mit dem Browser.
= Zubehör =
Nützliche Kabel findet man bei nodna.com (Rechts auf „Cables”):
* „Jumper wire 12" female/female (30cm) (10pcs)” (zum Verbinden der Pins mit dem Mainboard)
* „USB to pinheader cable 120cm” (zur externen Stromversorgung via USB)


= Firmware =
= Firmware =
Prototyp auf http://code.stapelberg.de/git/ethersex-resetbox/
Prototyp auf http://code.stapelberg.de/git/ethersex-resetbox/
= Fragen =
* Wie sähe es mit einer klein Serie Platinen zu dem Projekt aus? oder sind noch welche zu haben?
** Wir haben derzeit 10 Stück gefertigt und möchten diese bald in einem Workshop bestücken. Trag dich doch bitte bei Interessenten mit Kontaktmöglichkeit ein, dann sage ich bescheid. --[[User:SECuRE|sECuRE]] 19:22, 27 June 2010 (UTC)


= Interessenten =
= Interessenten =
* sECuRE
* sECuRE
* [[User:Pklaus|pklaus]]
* mist
* BillX
* Moredread


= Links =
= Links =
* http://www.ethersex.de/
* http://www.ethersex.de/
* http://www.ethersex.de/index.php/Resetbox
* http://ethersex.de/index.php/Pins_in_Ethersex_definieren
* http://ethersex.de/index.php/Pins_in_Ethersex_definieren
* http://www.ulrichradig.de/home/index.php/avr/avr-webmodule
* http://www.ulrichradig.de/home/index.php/avr/avr-webmodule
Line 59: Line 97:
* http://www.engbedded.com/fusecalc/
* http://www.engbedded.com/fusecalc/
* Errata zur Revision B7 des ENC28J60: http://ww1.microchip.com/downloads/en/DeviceDoc/80349b.pdf
* Errata zur Revision B7 des ENC28J60: http://ww1.microchip.com/downloads/en/DeviceDoc/80349b.pdf
* Vorläufige Layouts/Schaltpläne auf http://shell.noname-ev.de/~toxios/
* Vorläufige Layouts/Schaltpläne auf https://eris.noname-ev.de/~toxios/

Latest revision as of 21:40, 30 January 2016

Erster Prototyp

Wir bauen uns eine eigene Resetbox (man schließt sie an einen Computer an und kann diesen aus der Ferne resetten/einschalten/ausschalten).

Hardware

  • Man sollte POWER-LED, POWER-BTN, RESET anschließen können, jeweils Ein- und Ausgang, sodass man die eigentlichen Schalter am Gehäuse dann auch noch benutzen kann (werden einfach durchgeschleift)
  • ein Ethernetport
  • ein Schalter, mit dem man die Box disablen kann, im Sinne von „Nein, diese Maschine brauche ich gerade, bitte nicht remote resetten bzw. erst garnicht zum crashen bringen“

Spezifikationen

  • 16 MHz Atmel Atmega128 (mit 128 KB Flash)
  • 64 KB externen SRAM
  • ENC 28J60 Ethernet-Controller (10 MBit/s)

Fuses programmieren

(STK500-Programmiergerät)

avrdude -vvv -p m128 -b 115200 -c stk500 -P /dev/ttyUSB0 -U lfuse:w:0x3e:m -U hfuse:w:0x8c:m -U efuse:w:0xff:m

Foodloader flashen

avrdude -vvv -p m128 -b 115200 -c stk500 -P /dev/ttyUSB0 -U flash:w:foodloader.hex

Firmware flashen

AVRDUDE_BAUDRATE muss auf 38400 gesetzt werden. Erfolgreich geflashed haben wir das Ding zwischenzeitlich, und Ethersex läuft mit kleinen Modifikationen.

EEPROM initialisieren

(echo -n 1 ; dd if=/dev/zero bs=4096 count=1) > eeprom-init.img
avrdude -p m128 -c avrispmkii -P usb -U eeprom:w:eeprom-init.img:r

Crossover-Interface zum testen aufsetzen

radvd starten um IPv6-Adressen zu verteilen:

interface eth0
{
	AdvSendAdvert on;
	MinRtrAdvInterval 3;
	MaxRtrAdvInterval 10;

	prefix 2001:db8:1:0::/64
	{
		AdvOnLink on;
		AdvAutonomous on;
		AdvRouterAddr off;
	};

};
radvd -C radvd.conf -s -d 99

Adresse konfigurieren und pingen:

ip -6 address add 2001:db8:1:0::1/64 dev eth0
ping6 2001:db8:1:0:aede:48ff:fefd:fee

TODO

toxios

  • slotblech fertigen
  • R17 tauschen gegen 10k

sECuRE

  • Lötanleitung fertigstellen
  • EEPROM mit 0x00 initialisieren via avrdude
  • minikrb5 upstream schicken
  • Präsentation vorbereiten/Handbuch ergänzen



Im Rechner

Software

  • IPv6, damit man die Box einfach in unterschiedlichen Netzen betreiben kann.
  • Natürlich ist die Resetbox kerberisiert :) (für Kerberos-Agnostiker natürlich auch mit dem Standard-Ethersex htaccess absicherbar)
  • Zugriff über ein CLI-tool oder zur not auch mit dem Browser.

Zubehör

Nützliche Kabel findet man bei nodna.com (Rechts auf „Cables”):

  • „Jumper wire 12" female/female (30cm) (10pcs)” (zum Verbinden der Pins mit dem Mainboard)
  • „USB to pinheader cable 120cm” (zur externen Stromversorgung via USB)

Firmware

Prototyp auf http://code.stapelberg.de/git/ethersex-resetbox/

Fragen

  • Wie sähe es mit einer klein Serie Platinen zu dem Projekt aus? oder sind noch welche zu haben?
    • Wir haben derzeit 10 Stück gefertigt und möchten diese bald in einem Workshop bestücken. Trag dich doch bitte bei Interessenten mit Kontaktmöglichkeit ein, dann sage ich bescheid. --sECuRE 19:22, 27 June 2010 (UTC)

Interessenten

  • sECuRE
  • pklaus
  • mist
  • BillX
  • Moredread

Links