FitPC2-logo

Lex Barebone

Baggrund

Jeg har at flyttet funktioner fra en gammel PC, som jeg brugte som server til små energisparende og støjsvage maskiner. Lex-maskinen er tænkt som router/firewall og NTP-server.

Hardware

Maskinen er en Lex Neo med et CV700A-bundkort. Af forbindelser til omverdnen er der tre netværkstik, to USB-stik, to RS-232 serielle porte og en parallelport. Der er VGA-udgang og mulighed for PS/2-tastatur og mus. Der er lydudgang og mikrofonindgang, men det vil jeg ikke intsallere drivere til.

Lex-maskinen leveres uden RAM eller disk, så det skal eftermonteres. Der følger en ret detaljeret manual med, der beskriver installationen af de enkelte dele. RAM monteres som i en gængs PC og et evt. CF-kort kan monteres i en holder på bundkortet.

Der kan ogå monteres en 2,5" harddisk. Der følger kabel og stik med til en IDE-disk. SATA-diske kræver et andet kabel. Strømkablet fra min PC kunne ikke bruges alene. Der skal bruges et mini-molexstik. Løsningen blev at bruge det medfølgende kabel til IDE-diske sammen med et adapterkabel til SATA-strømstik. Nu har jeg købt nye data- og strømkabler, så jeg kan genopbygge den PC de blev taget fra. Harddisk og kabler dækker over stikket til CF-kort, så det skal monteres først.


Tilbage til toppen af siden.

Grundlæggende installation

jeg har gjort mig en del overvejelser om installationen. CF-kort er ikke velegnede til massive opdateringer, som det sker i et almindeligt styresystem. Jeg overvejede forskellige muligheder som PF-Sense, men de var enten for specialiserede (firewall uden NTP-server) eller også var der tale om udviklingsværktøjer til indlejrede systemer. Det ville give maksimal fleksibilitet, men jeg ville så være nødt til at genopfinde en del hjul undervejs.

Da jeg er endt med at putte en harddisk i maskinen er problemet blevet reduceret til det at installere en linuxdistribution på en lille PC.


Tilbage til toppen af siden.

Opsætning af linuxkernen

Denne beskrivelse af en brugbar konfiguration tager udgangspunkt i Linux version 2.6.35. Med Linux 2.6.38 er det muligt, at bruge transparent hugepages, THP, som giver bedre ydelse i programmer, som bruger meget hukommelse. THP aktivers med Processor type and features -> Transparent Hugepage Support. I Linux 3.3 er der en driver for computerens hardware-watchdog.

En del af beskrivelsen af Fit-PC 2 kan også bruges her.


Tilbage til toppen af siden.

Kryptering

OpenSSL kan udnytte krypteringsfunktionerne i VIA PadLock, men det kræver noget opsætning. Krypteringsmodulerne til linux bliver ikke indlæst automatisk, så der skal tilføjes følgende til /etc/modules.autoload:


padlock-sha
padlock-aes

I /etc/modprobe.conf skal der tilføjes disse aliaser:


alias aes padlock-aes
alias sha padlock-sha

Du kan skifte til kryptering med VIA PadLock med kommandoen: openssl engine padlock, men det er ikke en permanent løsning. Den varige løsning er at tilføje dette til /etc/ssl/openssl.cnf før andre navngine sektioner:


# Hardware support
openssl_conf = openssl_def
[openssl_def]
engines = openssl_engines
[openssl_engines]
padlock = padlock_engine
[padlock_engine]
default_algorithms = ALL

Test af OpenSSL kan ske med kommandoen openssl engine og resultatet skal være:


(padlock) VIA PadLock (no-RNG, ACE)
(dynamic) Dynamic engine loading support

Når OpenSSL bruger hardwarekryptering, vil programmer som OpenSSH også gøre det.


Tilbage til toppen af siden.

Tilfældighedgenerator

For at få adgang til tilfældighedsgeneratoren skal modulet via-rng indlæses. Dette klares ved at tilføje via-rng til /etc/modules.autoload. Dette giver adgang til /dev/hwrng.

Enheden /dev/hwrng kan bruges direkte, men det er langt fra alle programmer, der let kan konfigureres til at bruge andet end /dev/random. Løsningen er at bruge programmet rngd fra rng-tools til at fylde entropi i /dev/random.


Tilbage til toppen af siden.

Kendte problemer

IO-fejl ved opdatering. Der sker tab af interrupts når læses store datamængder fra CF-kortet.


Tilbage til toppen af siden.

Kilder


Tilbage til toppen af siden.
Tilbage til hovedsiden.