Tento článek je pokračováním naší předchozí práce na IPFire firewallu. V tomto kurzu je podpora pro hardwarové tokeny (jako jsou čipové karty) a jejich čtečky (shoda s CCID) integrována s projektem IPFire. Následující nástroje byly úspěšně zkompilovány pro verzi IPFire 2.19.
- PCSC (PC/SC Smart Card Daemon)
- CCID (zařízení s rozhraním čipů/chytrých karet) (ovladače bezplatného softwaru)
- OpenSC (Open source nástroje a knihovny čipových karet)
Démon PC/SC čipových karet se používá pro přístup k čipovým kartám na platformě Linux pomocí CCID nebo proprietárních ovladačů. Pro přístup k čipovým kartám je vyžadován program ovladače pro čtečku čipových karet CCID. Balíček CCID obsahuje ovladače pro různé čtečky čipových karet pro prostředí Linux/Unix. Přístup k čipové kartě (PKCS#11 API) a správa (struktura souborů PKCS#15) je podporována projektem OpenSC, který se skládá z několika open source nástrojů a knihoven. Hardwarové tokeny, jako je čipová karta, lze použít pro následující účely
- Zabezpečené přihlášení na web
- Přihlášení k pracovní stanici
- Šifrování souborů
- VPN (OpenVPN,L2TP)
- Šifrování e-mailů
Několik dodavatelů čipových karet podporovaných OpenSC je uvedeno níže.
- ASEPCOS
- FTCOSPK01C
- Karta OpenPGP
- Cyberflex
- CardOs
- STARCOS
Nastavení prostředí
Pro nastavení vývojového prostředí bylo podrobné vysvětlení uvedeno v předchozím článku.
Doplňky v testovacím prostředí IPFire
Doporučuje se nainstalovat doplněk IPFire do testovacího prostředí (podobně jako terminál Linux), který se vyvolá pomocí následujícího příkazu v kořenovém adresáři.
./make shell
Zdrojové balíčky v prostředí sestavení IPFire jsou umístěny v /usr/src/cache adresář. Všechny požadované balíčky pro tento tutoriál jsou již umístěny v mezipaměti adresář.
Zdroj balíčku pcsc-lite je zobrazen na následujícím snímku.
Než začneme s kompilací nástroje pcsc-lite, doporučujeme nainstalovat požadovanou knihovnu libudev-dev pomocí následujícího příkazu
apt-get install libudev-dev
Nyní extrahujte zdrojový balíček pomocí následujícího příkazu a spusťte skript ./configure, jak je uvedeno níže.
tar -xf pcsc-lite-1.8.18.tar.bz2
Jak je ukázáno níže, příkaz configure negeneruje žádnou chybu.
Nyní jednoduše spusťte ./make a ./make install příkaz k instalaci démona pcscd v testovacím prostředí.
Úspěšná instalace balíčků pcsc-lite ukazuje několik důležitých cest, které budou použity ke kompilaci balíčku CCID.
Následující snímek obrazovky ukazuje, že pcscd běží v IPFire v testovacím prostředí.
Dalším balíčkem, který je vyžadován pro čipové karty, je balíček ovladačů CCID. Jak je uvedeno níže, balíček CCID je umístěn v adresáři mezipaměti.
Následující snímek obrazovky ukazuje chybu generovanou skriptem ./configure balíčku CCID.
Chyba ukazuje, že konfigurační skript nenalezl pcsc-lite. Proto nastavte PCSC_CFLAGS pomocí konfiguračního skriptu, jak je uvedeno níže.
./configure PCSC_CFLAGS=-I/usr/local/include/PCSC
Skript však generuje další chybu, protože soubor libpcsclite.pc nebyl nalezen v cestě pkg-config na IPFire LFS.
Proto nejprve exportujte PKG_CONFIG_PATH a znovu spusťte příkaz configure script.
export PKG_CONFIG_PATH=/usr/local/lib/pkgconfig/
./configure PCSC_CFLAGS=-I/usr/local/include/PCSC
Úspěšný výstup spuštění konfiguračního skriptu je uveden níže. Ukazuje, že požadované soubory PCSC jsou nalezeny skriptem.
Spusťte ./make &./make install příkazy k dokončení instalace ovladačů CCID.
Zkopírujte pravidla udev pro čtečky čipových karet v /etc/udev/rules adresář, jak je znázorněno níže.
Kopírování 92_pcscd_ccid.rules soubor v /etc/udev/rules adresář.
Následující snímek obrazovky ukazuje nástroj OpenSC v/usr/src/cache adresář.
Spusťte konfigurační skript pro kontrolu závislostí balíčku.
Výstup konfiguračního skriptu je zobrazen na následujících snímcích.
Spusťte příkazy ./make a ./make install pro instalaci OpenSC v testovacím prostředí.
Následující snímek obrazovky ukazuje, že nástroj OpenSC byl úspěšně nainstalován do testovacího prostředí IPFire.
Po instalaci požadovaných nástrojů do LFS shellu IPFire je dalším krokem sestavení doplňku ve formátu správce balíčků IPFire (pakfire).
Kompilace doplňků IPFire
Podrobný postup týkající se vytváření doplňků pro prostředí IPFire je již uveden v části "Vytváření doplňku PSAD" v předchozím článku.
- V lfs je vytvořen kompilační skript známý také jako skript lfs adresář nastavení IPFire.
- Změny nových doplňků je třeba provést v make.sh skript.
Skript LFS je vytvořen pro balíčky pcsc-lite-1.8.18, ccid-1.4.24 a opensc-0.16.0. Stáhněte všechny skripty lfs pro balíčky a umístěte je do lfs adresář ipfire-2.x.
Skripty LFS pro výše uvedené doplňky jsou uvedeny níže.
pcsc-lite
ccid
opensc
Změny ve skriptu sestavení (make.sh ) jsou uvedeny níže.
Spuštěním následujících příkazů sestavte balíčky.
ipfiremake pcsc-lite
ipfiremake ccid
ipfiremake opensc
Pro kompilaci nových doplňků je nutné spustit následující příkaz dvakrát.
./make.sh build
Následující snímek obrazovky ukazuje, že skripty lfs nových doplňků jsou zkompilovány bez chyby.
Následující snímek obrazovky ukazuje výstup prvního příkazu sestavení. kořenové soubory pro všechny tři balíčky nebyly během tohoto procesu sestavování nalezeny.
Tři kořenové soubory protože nové doplňky jsou uvnitř logu adresář se stejným názvem balíčku/souboru, jak je uvedeno níže.
Následující snímek obrazovky ukazuje, že kořenové soubory nových doplňků jsou zkopírovány do config/rootfiles/packages
cesta. Změňte název zkopírovaných kořenových souborů tak, aby odpovídal lfs název nového addonu. (umístěný v adresáři lfs)
cp log/pcsc-lite-1.8.18 config/rootfiles/packages/pcsc-lite
cp log/ccid-1.4.24 config/rootfiles/packages/ccid
cp log/opensc-0.16.0 config/rootfiles/packages/opensc
Kořenové soubory nových doplňků obsahují „+ znak ", který musí být odstraněn před spuštěním příkazu build.
kořenový soubor pcsc-lite
kořenový soubor ccid
kořenový soubor opensc
Použijte následující sed příkaz k odstranění „+ "" z kořenových souborů nových balíčků.
sed -i 's/+//g' config/rootfiles/packages/pcsc-lite
sed -i 's/+//g' config/rootfiles/packages/ccid
sed -i 's/+//g' config/rootfiles/packages/opensc
Následující snímek obrazovky ukazuje, že znaménko plus bylo odstraněno z kořenových souborů.
PakFire je systém správy balíčků pro IPFire, který používají rutiny instalace, odinstalace a aktualizace v nových addonech.
Vytvořte adresáře (stejné jako lfs balíčků) pro všechny nové doplňky uvnitř src/paks cestu a zkopírujte skripty install.sh, odinstalujte.sh a update.sh z src/paks/default/ do src/paks/pcsc-lite , src/paks/ccid,src/paks/opensc .
Spusťte znovu příkaz sestavení a dokončete proces sestavení.
./make.sh build
Tentokrát ignorujte zprávu o chybějících kořenových souborech pro všechny nové doplňky, protože jsme již aktualizovali kořenové soubory v konfiguraci adresář.
Nakonec následující snímek obrazovky ukazuje, že nový doplněk (pcsc-lite-1.8.18-2.ipfire, ccid-1.4.24-2.ipfire , opensc-0.16.0-2.ipfire ) byly vytvořeny uvnitř balíčků adresář.
Instalace balíčků pakfire
Jak je znázorněno níže, zkompilované balíčky se zkopírují do již nainstalovaného systému IPFire v souboru /opt/pakfire/tmp adresář.
Následující snímek obrazovky ukazuje, že balíčky jsou zkopírovány v systému IPFire.
Nové doplňky se extrahují pomocí následujícího příkazu pro instalaci na IPFire.
tar -xvf pcsc-lite-1.8.18-2.ipfire
tar -xvf ccid-1.4.24-2.ipfire
tar -xvf opensc-0.16.0-2.ipfire
Instalace nového doplňku je zobrazena na následujícím snímku obrazovky pomocí ./install.sh skript.
Úspěšná instalace pcsc-lite je znázorněna na následujícím snímku.
Následující obrázek ukazuje instalaci ovladačů čipových karet CCID.
Jak je ukázáno níže, je konečně nainstalován nástroj openSC pro správu čipových karet v systému IPFire.
V tomto tutoriálu jsou nové doplňky zabudovány ve vývojovém systému IPFire. Tyto nové doplňky se používají k integraci čipových karet a jejich čteček s open source projektem IPFire.