Problem mit geom_eli passphrase beim Start

Bummibaer

Registered Schwarzbär
Hi,
FreeBSD 9.0-PRERELEASE #0: Wed Dec 7 01:05:32 CET 2011
wenn ich starte erhalte ich trotz korrekter Passphrase Eingabe folgende Meldungen
...
Entropy harvesting: interrupts ethernet point_to_point kickstart.
Configuring Disk Encryption for ada0p3.
Enter passphrase:
geli: Wrong key for ada0p3.
Attach failed; attempt 1 of 3.
Enter passphrase:
geli: Wrong key for ada0p3.
Attach failed; attempt 2 of 3.
Enter passphrase:
geli: Wrong key for ada0p3.
Attach failed; attempt 3 of 3.
Starting file system checks:
/dev/ada0p2: FILE SYSTEM CLEAN; SKIPPING CHECKS
/dev/ada0p2: clean, 11457557 free (31541 frags, 1428252 blocks, 0.2% fragmentation)
Can't stat /dev/ada0p3.eli: No such file or directory
Can't stat /dev/ada0p3.eli: No such file or directory
Unknown error; help!
ERROR: ABORTING BOOT (sending SIGTERM to parent)!
Dec 7 16:41:19 init: /bin/sh on /etc/rc terminated abnormally, going to single user mode
Enter full pathname of shell or RETURN for /bin/sh:

Ich kann also quasi die Passphrase 3 mal korrekt angeben ohne das sie als korrekt erkannt wird. Eine Ursache hierfür sehe ich leider auch nicht wirklich.

In der /boot/loader.conf ist folgendes drin:
geli_ada0p3_keyfile0_load="YES"
geli_ada0p3_keyfile0_type="ada0p3:geli_keyfile0"
geli_ada0p3_keyfile0_name="/key"
In der /etc/fstab ist der /dev/ada0p3.eli /geli natürlich auch drin.

Manuell mittels geli-an script läuft es:
SCR1HE# geli-an
Enter passphrase:
GEOM_ELI: Device ada0p3.eli created.
GEOM_ELI: Encryption: AES-XTS 256
GEOM_ELI: Crypto: software

geli-an:
#!/bin/sh
/sbin/geli attach -k /key /dev/ada0p3
/sbin/mount /geli

SCR1HE# geli list
Geom name: ada0p3.eli
State: ACTIVE
EncryptionAlgorithm: AES-XTS
KeyLength: 256
Crypto: software
UsedKey: 0
Flags: NONE
KeysAllocated: 646
KeysTotal: 646
Providers:
1. Name: ada0p3.eli
Mediasize: 346401200128 (322G)
Sectorsize: 512
Mode: r1w1e1
Consumers:
1. Name: ada0p3
Mediasize: 346401200640 (322G)
Sectorsize: 512
Stripesize: 0
Stripeoffset: 2147632128
Mode: r1w1e1

Hat jemand eine Idee woran das liegen könnte ?

Gruß Bummibär
 
Beim boot hatte ich mal das Problem, dass ich vergessen hatte, dass dort ein anderes Keyboardlayout verwendet wird. Hattest du beim Einrichten zB ein deutsches Tastaturlayout und beim Booten ein englisches?

Aber darauf fällt ein Bär ja nicht rein...
 
Hi Columbo0815,

ja das hatte ich und daher als Passphrase "test" genommen da diese Buchstaben eigentlich bei beiden ja gleich sein müssten :)

Das Tastaturlayout Problem ist klar - daran habe ich schon gedacht soweit. Ich vermute eher mal das er die Eingabe einfach nicht annimmt oder bei der Eingabe was verschluckt wird. Das beruht aber nur auf einem Gefühl im Bärenbauch und ist erstmal nicht mehr.

ich habe noch
kern.geom.eli.visible_passphrase=1
gesetzt und sehe bei der Eingabe NICHTS - das macht mich sehr nachdenklich.

Gruß Bummibär
 
Dann schließe die Tastatur eben an.. *SCNR* Ist es evtl. eine USB-Tastatur und das Modul wird erst später geladen? Kann ich mir aber nicht vorstellen. Ich hatte allerdings noch nie eine USB-Tastatur. Und auch daran wird ein Bär denken...

Aber wenn du das "visible" gemacht hast, wird der Fehler bei der Tastatur liegen, oder? Ich hatte in meinem Fall die Passphrase immer per seriellem Kabel eingegeben. Hast du die Möglichkeit?
 
Hallo,

ich habe die Eingabe über die serielle Console gemacht. Ich werde mal ne PS/2 Tastatur dran machen und es nochmal versuchen. Die Tastatur übär seriell muss eigentlich gehen, sonst würde er ja die Enter Eingabe auch nicht fressen oder ?

btw: das war davor am Anfang ein geli init -l 256 -K /.../key -s 512 -b /dev/ada0p3
wobei die 256 Absicht sind (davor mit 4096) und das -b so gewollt ist.

@Sickboy: Danke für den Hinweis, habe ich mir angesehen.

Beste Grüße
Bummibär
 
Hi,
Verdacht des Bären wenn mer Ctrl. D macht dann seh ich die Eingabe und es tut immer noch ned. Sieht so aus als hätte wohl jemand meine Tastatur oder deren Eingabe entführt.
Folgendes funktioniert: 3x falsch eingeben oder oifach gleich Enter drücken - danach /bin/sh und dort einfach /sbin/geli attach -k /key /dev/ada0p3 eingeben und Passphrase neijagen und bingo es tut - exit und das wars - es bootet weiter.

Gruß Bummibär
 
Bummibär
Wenn deine Tastatur entführt wird es gibt die option kbdmux in der loader.conf und eventuell auf 0 setzen. Die genaue Option mußt mal suchen.
Gruß
 
Der Wert sollte besser auf "2" stehen, damit das PW nicht im Klartext auf dem Bildschirm und in /var/log/messages erscheint.
 
Hi,

ich habe 9600 auch schon vergeblich versucht. Aktuell habe ich die 115200 drin und im Kernel options CONSPEED=115200 gesetzt.

kern.geom.eli.visible_passphrase=1 steht in /boot/loader.conf mit drin - scheint dort aber bei mir zumindest nichts zu bewirken. In der /etc/sysctl.conf ist es hier auch drin - kern.geom.eli.visible_passphrase: 1. Lt. geli(8) soll es jedoch in /boot/loader.conf angeblich rein und dort funktionieren - bei mir zeigt er jedoch garnichts bei der Passphrase Eingabe erstmal an. Erst wenn ich Enter drücke dann sagt er failed.

Für die loader.conf hätte ich noch ukbd_load="YES" (Keyboard) und vkbd_load="YES" (Virtual AT keyboard interface) anzubieten.

Für /etc/device.hints habe ich die hint.kbdmux.0.disabled="0" mit drin und es damit leider erfolglos auch schon versucht.

Ob die Passphrase im Klartext wo rumgeistert ist mir erst einmal eigentlich egal. Es handelt sich ja nur um einen Test. Wenn das mal anständig zuverlässig funktioniert sollte die Passphrase natürlich nirgends im Klartext ersichtlich sein :)

Gruß Bummibär
 
Zuletzt bearbeitet:
Hallo Flex6,

mit hint.kbdmux.0.disabled="1" funktioniert es hier ebenfalls nicht:

SMP: AP CPU #1 Launched!
SMP: AP CPU #2 Launched!
SMP: AP CPU #3 Launched!
Timecounter "TSC-low" frequency 14027617 Hz quality 1000
Root mount waiting for: usbus2
uhub2: 4 ports with 4 removable, self powered
Trying to mount root from ufs:/dev/ada0p2 [rw]...
Setting hostuuid: 49434d53-0200-9033-2500-339025003897.
Setting hostid: 0x112888aa.
Entropy harvesting: interrupts ethernet point_to_point kickstart.
Configuring Disk Encryption for ada0p3.
Enter passphrase:
geli: Wrong key for ada0p3.
Attach failed; attempt 1 of 3.
Enter passphrase:
geli: Wrong key for ada0p3.
Attach failed; attempt 2 of 3.
Enter passphrase:
geli: Wrong key for ada0p3.
Attach failed; attempt 3 of 3.

Mit hint.atkbd.0.disabled="1" und hint.atkbdc.0.disabled="1" zusammen:

SMP: AP CPU #1 Launched!
SMP: AP CPU #2 Launched!
SMP: AP CPU #3 Launched!
Timecounter "TSC-low" frequency 14027617 Hz quality 1000
Root mount waiting for: usbus2
uhub2: 4 ports with 4 removable, self powered
Trying to mount root from ufs:/dev/ada0p2 [rw]...
Setting hostuuid: 49434d53-0200-9033-2500-339025003897.
Setting hostid: 0x112888aa.
Entropy harvesting: interrupts ethernet point_to_point kickstart.
Configuring Disk Encryption for ada0p3.
Enter passphrase:
geli: Wrong key for ada0p3.
Attach failed; attempt 1 of 3.
Enter passphrase:
geli: Wrong key for ada0p3.
Attach failed; attempt 2 of 3.
Enter passphrase:
geli: Wrong key for ada0p3.
Attach failed; attempt 3 of 3.

Beides funktioniert also ebenfalls nicht wirklich.

Der Trick mit dem Workaround 3x statt der Passphrase einfach Enter zu drücken und die /bin/sh zu nehmen um das geli manuell zu attachen
SMP: AP CPU #1 Launched!
SMP: AP CPU #3 Launched!
SMP: AP CPU #2 Launched!
Root mount waiting for: usbus2
uhub2: 4 ports with 4 removable, self powered
Root mount waiting for: usbus2
Trying to mount root from ufs:/dev/ada0p2 [rw]...
Setting hostuuid: 49434d53-0200-9033-2500-339025003897.
Setting hostid: 0x112888aa.
Entropy harvesting: interrupts ethernet point_to_point kickstart.
Configuring Disk Encryption for ada0p3.
Enter passphrase:
geli: Wrong key for ada0p3.
Attach failed; attempt 1 of 3.
Enter passphrase:
geli: Wrong key for ada0p3.
Attach failed; attempt 2 of 3.
Enter passphrase:
geli: Wrong key for ada0p3.
Attach failed; attempt 3 of 3.
Starting file system checks:
/dev/ada0p2: FILE SYSTEM CLEAN; SKIPPING CHECKS
/dev/ada0p2: clean, 11455428 free (32140 frags, 1427911 blocks, 0.2% fragmentation)
Can't stat /dev/ada0p3.eli: No such file or directory
Can't stat /dev/ada0p3.eli: No such file or directory
THE FOLLOWING FILE SYSTEM HAD AN UNEXPECTED INCONSISTENCY:
ufs: /dev/ada0p3.eli (/geli)
Unknown error; help!
ERROR: ABORTING BOOT (sending SIGTERM to parent)!
Dec 8 15:50:26 init: /bin/sh on /etc/rc terminated abnormally, going to single user mode
Enter full pathname of shell or RETURN for /bin/sh:
# geli attach -k /key /dev/ada0p3
Enter passphrase:
GEOM_ELI: Device ada0p3.eli created.
GEOM_ELI: Encryption: AES-XTS 256
GEOM_ELI: Crypto: software
# exit
Setting hostuuid: 49434d53-0200-9033-2500-339025003897.
Setting hostid: 0x112888aa.
Entropy harvesting: interrupts ethernet point_to_point kickstart.
Fast boot: skipping disk checks.
Mounting local fWARNING: TMPFS is considered to be a highly experimental feature in FreeBSD.
ile systems:.
Setting hostname: SCR1HE.bummi-net.local.
...
hingegen funktioniert noch.

Gruß Bummibär
 
Hi,
ich habe das Ganze mit 9.0 RC3 nochmal durchgespielt. Solang nur die HD drin ist tritt das Selbe wie bisher wieder auf. Interessant ist abär wenn ein USB Stick zusätzlich drin steckt - der nicht verwendet wird abär geli drauf ist - dann kommen zwei Passphrase Abfragen und bei einer davon kann man den Input der Tastatur sogar sehen - nur positive Eingabe ist ebenfalls nicht möglich.

Gruß Bummibär
 
Bummibär
Hast du auch mal mit -k Angabe in der loader.conf probiert, Standart ist wohl das geli nach dem Stick sucht, -k gibt den Pfad zum alten keyfile an. geli geht immer davon aus das sich ein neuer Benutzer anmeldet und auch sein Stick einstöpselt und natürlich mit einem key
 
Zuletzt bearbeitet:
Hi Flex6,

reicht da folgendes nicht aus ?
Code:
geli_ada0p3_keyfile0_load="YES"
geli_ada0p3_keyfile0_type="ada0p3:geli_keyfile0"
geli_ada0p3_keyfile0_name="/key"

nö , hab da nur ohne versucht.

Gruß Bär
 
Hi,
bin da noch nicht wirklich weiter. Bisher habe ich, bis auf den Workaround, keine Lösung gefunden. Ob es sich um einen Bug handelt ist mir derzeit noch nicht klar. Von mehreren Maschinen tritt das nur vereinzelt auf. Teilweise sind die USB-Sticks anderst und mal nutze ich zfs und mal ufs2. Ich schau wenn ich Zeit finde nochmal ob ich was dazu finde.
Gruß Bummibär
 
Inkonsistentes verhalte ist meiner Meinung nach immer ein Bug oder zumindest ein Design-Fehler.
 
Zurück
Oben