Šta je novo?

Crypto servisi na Linux-u?

+-

Čuven
Učlanjen(a)
19.06.2002
Poruke
281
Poena
619
Nemam nikakvog iskustva sa ovom tematikom, pa ukoliko neko ima, neka mu ne bude tesko da napise bar par rijeci o tome.

Onoliko koliko sam ja uspio da saznam, OpenBSD je jedini unix-oliki sistem koji ima ugradjenu kompletnu infrastrukturu kripto-servisa (jel mu to onda dodju neki daemoni, ili je stvar izvedena na neki drugi nacin?)

Sa jedne strane, poznat mi je nacin na koji je citava prica oko kriptografije postavljena na MS -ovim OS-ovima....ali me interesuje kako je open source zajednica rjesila ove stvari.

Na koji nacin je izvedena, npr., implementacija cripto provajdera?

Ukoliko bih htjeo da, npr., omogucim logovanje smart kartom, kako bi se to moglo uraditi...?

Jel postoji nesto kao digitalni potpis-sertifikat, i na koji nacin je to izvedeno?

Ne ocekujem pretjerano detaljne odgovore, s obzirom da sam svjestan u kojoj mjeri to ne bih bio u stanju da ispratim, ali jedan jednostavniji odgovor- onako u grubim crtama, pretpostavljam da me ne bi sasvim intelektualno iscrpio.
;)

(D)


---
 
OpenBSD je stvarno 'sav u sigurnosti' i 'sav o sigurnosti' , detalji su na http://www.openbsd.org/crypto.html . Sam podatak da se pokretac projekta Theo de Raadt preselio u Kanadu jer u Americi postoje zakoni koji zabranjuju upotrebu jakih enkripcionih algoritama dovoljno govori sam za sebe.

Upotreba digitalnih sertifikata na linuxu je takodje jako rasprostranjena. Koristi ih Apache (preko mod_ssl), zatim openSSH (kao zamena za telnet), a i samba kao zamena za windows DC kontrolere takodje koristi ssl.

Pretpostavljam da tebe najvise interesuje ovo zadnje, tj samba i ssl. Malo vise o tome http://freebooks.by.ru/view/SambaIn24h/ch17.htm

poz.
 
Kriptografska osnova na linuxu je bazirana na nekoj od SSL toolkita. Najcesce se koristi OpenSSL koji jeste Open Source i koji moze da se dobije i koristi free i svim primenama (ukljucujuci i komercijalne). OpenSSL obezbedjuje SSL (secure sockets layer) v2 i v3, te TLS (transport layer security) protokol u verziji 1. Na njega se dalje oslanjaju SSH i ostali programi.
Princip je sledeci - ili trazis kljuc od neke od root kompanija kao sto je Verisign ili definises u config fajlu sebe kao root trusted authority (ukoliko ne zelis da placas sertifikate). U principu, sajt bi trebao da veruje sam sebi :) Kreiras zatim private i public kljuceve za sajt/server i na osnovu njega (ukoliko zelis) posebno za svaki od daemona - apache (za https pristup), za mail server, itd. I na kraju sertifikate za klijente - i po useru ukoliko zelis. Tu ima naravno i opcija "konvertovanja" formata, tako da mozes na kraju da dobijes i pkcs sertifikate koje windows programi uglavnom razumeju. Kako se koji daemon/servis konfigurise da koristi sertifikate, zavisi od samog servisa; u neke je potrebno samo dodati opciju u config fajlu i dati path do kljuceva (i zastititi config fajl za pristup samo roota), kod drugih servisa se stvari komplikuju.
Mozes da koristis osnovne alate (command line - openssl), ali dolaze uz distroe i gotove (perl) skripte ukoliko ne zelis prilikom kreiranja kljuceva/sertifikata da koristis custom parametre (recimo 2048-bitne kljuceve umesto 1024-bitnih). Verovatno postoje i neki front-endovi za taj posao, ali ih nisam trazio, posto je i u terminalu sve "brzo gotovo". Ovde napomena - prilikom instalacije linuxa, sam setup program uvek generise osnovnu postavku (kljuceve, itd) i smesti na neku od lokacija kao sto su /etc/ssl (varira od distroa do distroa).
Osnovni algoritmi se nalaze u libcrypto dll-u (ukoliko zelis sam da programiras nesto). Od sajfera su podrzani blowfish, des, rc2-rc5, idea, cast... od formiranja public kljuceva rsa, dsa i dh, itd - da ne nabrajam sad, ima lepa dokumentacija na http://www.openssl.org/


Za login preko kartica mozes da iskoristis pam (pluggable authentication modules) sistem; pomocu njega moze admin da definise tip dovoljne i neophodne verifikacije korisnika za pojedini servis i to izborom modula (password, kartica, itd). Vise o pam-u mozes da saznas ovde, a na ovoj adresi imas informacije i linkove o dodatnim modulima - mislim da tu mozes da nadjes i modul za kartice.

[/url]
 
Ok, zahvaljujem obojici. Zaista kvalitetan odgovor!

Salac, ovaj link sam vec imao u favorites-ima, ali ne stizem da ga procitam do kraja. Sem toga moje predznanje u pogledu same osnovne strukture BSD je vise nego mrsavo, pa ce moje zelja da se dublje uputim u to, za sada ostati jos uvjek samo zelja.

Silvere, primjecujem da je, (vrlo je moguce da nisam bas najbolje razumio, pa me slobodno ispravi) za bilo kakvu kriptografsku upotrebu na lindzi kao osnova uvjek unaprjed, prilikom same instalacije, postavljen osnovni set kljuceva....ono sto na Windows platforma igra ulogu crypto provajdera....a da se naknadnim instaliranjem toolkita prakticno dobija ekvivalent Winovog CA?!
Vidim da kazes kako Windows-ovi programi 'uglavnom' mogu da razumiju certifikate dobijene na linux-u, ali bi me intersovalo sta je to sto je nekompatibilno, i u cemu bi se sastojale osnovne razlike u tipu certa....samo u algoritmima koji se koriste, ili tu ima jos ponesto?!

I jos nesto: kako stvar stoji sa implementacijom IPSec-a?

Inace, par vrlo korisnih linkova ;)

---
 
Pazi kada sam promasio totalno topic, tj. nisam video da se tu dalje pisalo :)


Elem, sad ja tebe nisam dobro razumeo; ne treba nista (toolkit) dodatno instalirati - sve je prisutno od pocetka od alata. Linux prilikom instalacije samo generise pocetne kljuceve i par osnovnih sertifikata (za pop3, imap, ftp,...) da mogu odmah da se koriste. Naravno da ukoliko zelis da razradis svoj certificate sistem, te kljuceve i sertifikate jednostavno obrises i generises onakve kakve zelis. Pri tome, u konfiguracionom fajlu mozes da definises svoj server kao trusted root CA i dalje generises cert requestove, sertifikate i zavrsavas njihovo 'potpisivanje' na licu mesta. I onda dobijas (ukoliko si radio po daemonu) sertifikat za web server potpisan od strane svog servera, sertifikat za pop3 server, itd.

Kompatibilnost... Algoritmi za generisanje su isti koji se koriste i kod windowsa, ali format fajla nije isti. Za mnoge linux servise je dovoljno da im das generisani suvi pem fajl, dok za neke treba crt (sadrzi i pem, md5 fingerprint, namenu (mail, web, ...) razne dodatne identifikatore i eksenzije). Sa druge strane, ako otvoris outlook ili IE i odes u 'import certificate', videces da oni primaju pkcs12, pkcs7 i sst formate. Zato sluzi ta opcija konverzije formata fajla - public key, signature, .. unutra jeste isti, samo na drugi nacin zapisan.

IPsec jeste implementiran, dozvoljava standardni tunneling, VPN, ali i masquerading istog. Evo ga prakticni primer podesavanja.
 
E da, sad mi je malo jasnije....pobrkao sam par stvarcica iz tvog prethodnog odgovora, ali sad se stvari slazu.

Za nekompatibilnost formata sertifikata sam znao, npr. na Winowim platformama je taj problem rijesen koriscenjem formata DER En Binary x.509 (.cer) i Base64 x.509 za uvoz i razmjenu certa sa ne-Win-ovim serverima.
Ipak, mislio sam da mozda postoji razlog i za nekompatibilnost algoritamske strukture enkripcije....ali, kad bolje razmislim, zasto bi?! :mrgreen:

Zahvaljujem na linku, tacno ono sto me zanima :D

---
 
Nazad
Vrh Dno