ProHoster > blog > Amministrazzjoni > Awtentikazzjoni b'żewġ fatturi fuq is-sit bl-użu ta 'token USB. Issa wkoll għal Linux
Awtentikazzjoni b'żewġ fatturi fuq is-sit bl-użu ta 'token USB. Issa wkoll għal Linux
В wieħed mill-artikoli preċedenti tagħna tkellimna dwar l-importanza ta 'awtentikazzjoni b'żewġ fatturi fuq portali korporattivi tal-kumpaniji. L-aħħar darba urejna kif nistabbilixxu awtentikazzjoni sigura fis-server tal-web IIS.
Fil-kummenti, ġejna mitluba niktbu struzzjonijiet għas-servers tal-web l-aktar komuni għal Linux - nginx u Apache.
Tlabt - ktibna.
X'għandek bżonn biex tibda?
Kwalunkwe distribuzzjoni moderna tal-Linux. Għamilt setup tat-test fuq MX Linux 18.2_x64. Din hija ovvjament mhux distribuzzjoni tas-server, iżda mhux probabbli li jkun hemm xi differenzi għal Debian. Għal distribuzzjonijiet oħra, il-mogħdijiet għal-libreriji tal-konfigurazzjoni jistgħu jvarjaw ftit.
Token. Aħna nkomplu nużaw il-mudell Rutoken EDS PKI, li hija ideali f'termini ta 'karatteristiċi ta' veloċità għall-użu korporattiv.
Biex taħdem b'token fil-Linux, għandek bżonn tinstalla l-pakketti li ġejjin:
libccid libpcsclite1 pcscd pcsc-tools opensc
Ħruġ ta' ċertifikati
F'artikoli preċedenti, aħna bbażajna ruħna fuq il-fatt li ċ-ċertifikati tas-server u tal-klijent se jinħarġu bl-użu ta 'Microsoft CA. Iżda peress li qed inwaqqfu kollox fil-Linux, aħna ser ngħidulek ukoll dwar mod alternattiv kif toħroġ dawn iċ-ċertifikati - mingħajr ma titlaq minn Linux.
Aħna se nużaw XCA bħala CA (https://hohnstaedt.de/xca/), li hija disponibbli fuq kwalunkwe distribuzzjoni moderna tal-Linux. L-azzjonijiet kollha li se nwettqu f'XCA jistgħu jsiru fil-modalità tal-linja tal-kmand billi tuża l-utilitajiet tal-għodda OpenSSL u pkcs11, iżda għal aktar sempliċità u ċarezza, mhux se nippreżentawhom f'dan l-artikolu.
Getting Started
Installa:
$ apt-get install xca
U niġru:
$ xca
Noħolqu d-database tagħna għal CA - /root/CA.xdb
Nirrakkomandaw li taħżen id-database tal-Awtorità taċ-Ċertifikati f'folder fejn l-amministratur biss ikollu aċċess. Dan huwa importanti biex jiġu protetti ċ-ċwievet privati taċ-ċertifikati tal-għeruq, li jintużaw biex jiffirmaw iċ-ċertifikati l-oħra kollha.
Oħloq ċwievet u ċertifikat CA tal-għeruq
Infrastruttura taċ-ċavetta pubblika (PKI) hija bbażata fuq sistema ġerarkika. Il-ħaġa prinċipali f'din is-sistema hija l-awtorità taċ-ċertifikazzjoni tal-għeruq jew l-għerq CA. Iċ-ċertifikat tiegħu għandu jinħoloq l-ewwel.
Aħna noħolqu ċavetta privata RSA-2048 għas-CA. Biex tagħmel dan, fuq it-tab Ċwievet Privati imbotta Ċavetta Ġdida u agħżel it-tip xieraq.
Issettja isem għall-par taċ-ċwievet il-ġdid. I imsejħa CA Key.
Aħna noħorġu ċ-ċertifikat CA innifsu, billi nużaw il-par taċ-ċwievet maħluqa. Biex tagħmel dan, mur fit-tab Ċertifikati u kklikkja Ċertifikat Ġdid.
Kun żgur li tagħżel SHA-256, minħabba li l-użu ta 'SHA-1 ma jistax jibqa' jitqies sigur.
Kun żgur li tagħżel bħala mudell [default]CA. Tinsiex tikklikkja fuq Applika kollha, inkella l-mudell ma jiġix applikat.
Fit-tab suġġett agħżel il-par ewlieni tagħna. Hemmhekk tista' timla l-oqsma ewlenin kollha taċ-ċertifikat.
Ħolqien taċ-ċwievet u ċertifikat tas-server https
B'mod simili, noħolqu ċavetta privata RSA-2048 għas-server, sejħitha Server Key.
Meta noħolqu ċertifikat, aħna nagħżlu li ċ-ċertifikat tas-server għandu jkun iffirmat b'ċertifikat CA.
Tinsiex tagħżel SHA-256.
Aħna nagħżlu bħala mudell [default] HTTPS_server. Ikklikkja fuq Applika kollha.
Imbagħad fuq it-tab suġġett agħżel iċ-ċavetta tagħna u imla l-oqsma meħtieġa.
Oħloq ċwievet u ċertifikat għall-utent
Iċ-ċavetta privata tal-utent se tkun maħżuna fuq it-token tagħna. Biex taħdem magħha, trid tinstalla l-librerija PKCS#11 mill-websajt tagħna. Għal distribuzzjonijiet popolari, aħna nqassmu pakketti lesti, li jinsabu hawn - https://www.rutoken.ru/support/download/pkcs/. Għandna wkoll assemblaġġi għal arm64, armv7el, armv7hf, e2k, mipso32el, li jistgħu jitniżżlu mill-SDK tagħna - https://www.rutoken.ru/developers/sdk/. Minbarra assemblaġġi għal Linux, hemm ukoll assemblaġġi għal macOS, freebsd u android.
Iż-żieda ta' Fornitur PKCS#11 ġdid ma' XCA. Biex tagħmel dan, mur fil-menu Għażliet għat-tab PKCS#11 Fornitur.
Aħna nagħfas Żid u agħżel it-triq għal-librerija PKCS#11. Fil-każ tiegħi huwa usrliblibrtpkcs11ecp.so.
Aħna nagħżlu ċ-ċavetta RSA-2048 għar-Rutoken EDS PKI bħala t-tip ewlieni. Sejjaħt din iċ-ċavetta Client Key.
Daħħal il-kodiċi PIN. U nistennew għat-tlestija tal-ġenerazzjoni tal-ħardwer tal-par taċ-ċavetta
Aħna noħolqu ċertifikat għall-utent b'analoġija maċ-ċertifikat tas-server. Din id-darba nagħżlu mudell [default] HTTPS_client u tinsiex tikklikkja Applika kollha.
Fit-tab suġġett daħħal informazzjoni dwar l-utent. Aħna nwieġbu fl-affermattiv għat-talba biex issalva ċ-ċertifikat għat-token.
Bħala riżultat, fuq it-tab Ċertifikati f'XCA għandek tikseb xi ħaġa bħal din.
Dan is-sett minimu ta 'ċwievet u ċertifikati huwa biżżejjed biex tibda twaqqaf is-servers infushom.
Biex tikkonfigura, għandna bżonn nesportaw iċ-ċertifikat CA, iċ-ċertifikat tas-server u ċ-ċavetta privata tas-server.
Biex tagħmel dan, agħżel l-entrata mixtieqa fuq it-tab korrispondenti f'XCA u kklikkja Esportazzjoni.
Nginx
Mhux se nikteb kif ninstalla u tħaddem server nginx - hemm biżżejjed artikli dwar dan is-suġġett fuq l-Internet, biex ma nsemmux id-dokumentazzjoni uffiċjali. Ejja nibdew nistabbilixxu HTTPS u awtentikazzjoni b'żewġ fatturi billi tuża token.
Żid il-linji li ġejjin mat-taqsima tas-server f'nginx.conf:
Se niddeskrivi fil-qosor dawk li staqsejt lili nnifsi:
ssl_verify_client - jispeċifika li l-katina ta' fiduċja għaċ-ċertifikat jeħtieġ li tiġi vverifikata.
ssl_verify_depth - Jiddefinixxi l-fond tat-tfittxija għaċ-ċertifikat tal-għeruq fdat fil-katina. Peress li ċ-ċertifikat tal-klijent tagħna huwa ffirmat immedjatament fuq iċ-ċertifikat ta 'l-għeruq, il-fond huwa ssettjat għal 1. Jekk iċ-ċertifikat ta' l-utent ikun iffirmat fuq CA intermedjarju, allura 2 għandu jiġi speċifikat f'dan il-parametru, eċċ.
ssl_client_certificate - jispeċifika l-mogħdija għaċ-ċertifikat tal-għerq fdat, li jintuża meta tiċċekkja l-fiduċja fiċ-ċertifikat tal-utent.
Ejja nippruvaw nilloggjaw mingħajr token l-ewwel. Nirċievu din l-istampa:
Immorru dwar: preferenzi # privatezza, u mmorru Apparat tas-Sigurtà...
Aħna nagħfas tagħbijabiex iżżid Sewwieq tal-Apparat PKCS#11 ġdid u speċifika t-triq għal librtpkcs11ecp.so tagħna.
Biex tiċċekkja li ċ-ċertifikat ikun viżibbli, tista’ tmur fuq Maniġer taċ-Ċertifikat. Inti se tintalab iddaħħal il-PIN tiegħek. Wara input korrett, tista 'tiċċekkja x'inhu fuq it-tab Iċ-Ċertifikati Tiegħek deher iċ-ċertifikat tagħna mit-token.
Issa mmorru bit-token. Firefox iqanqlek tagħżel ċertifikat li se jintgħażel għas-server. Agħżel iċ-ċertifikat tagħna.
QLIGĦ!
Is-setup isir darba, u kif tistgħu taraw fit-tieqa tat-talba taċ-ċertifikat, nistgħu nsalvaw l-għażla tagħna. Wara dan, kull darba li nilloggjaw fil-portal, ikollna bżonn biss li ndaħħlu token u ndaħħlu l-kodiċi PIN tal-utent li kien speċifikat waqt l-ifformattjar. Wara tali awtentikazzjoni, is-server diġà jaf liema utent illoggja u ma tistax aktar toħloq twieqi addizzjonali għall-verifika, iżda immedjatament ħalli l-utent jidħol fil-kont personali tiegħu.
Apache
Eżatt bħal ma nginx, ħadd m'għandu jkollu xi problemi biex jinstalla apache. Jekk ma tafx kif tinstalla dan is-server tal-web, uża biss id-dokumentazzjoni uffiċjali.
U nibdew inwaqqfu l-HTTPS tagħna u l-awtentikazzjoni b'żewġ fatturi:
L-ewwel trid tattiva mod_ssl:
$ a2enmod ssl
U mbagħad ippermetti l-issettjar HTTPS default tas-sit:
$ a2ensite default-ssl
Issa neditjaw il-fajl tal-konfigurazzjoni: /etc/apache2/sites-enabled/default-ssl.conf:
SSLEngine on
SSLProtocol all -SSLv2
SSLCertificateFile /etc/apache2/sites-enabled/Server.crt
SSLCertificateKeyFile /etc/apache2/sites-enabled/ServerKey.pem
SSLCACertificateFile /etc/apache2/sites-enabled/CA.crt
SSLVerifyClient require
SSLVerifyDepth 10
Kif tistgħu taraw, l-ismijiet tal-parametri prattikament jikkoinċidu mal-ismijiet tal-parametri f'nginx, għalhekk mhux se nispjegahom. Għal darb'oħra, kull min hu interessat fid-dettalji huwa mistieden fid-dokumentazzjoni.
Issa nerġgħu nibdew is-server tagħna:
$ service apache2 reload
$ service apache2 restart
Kif tistgħu taraw, it-twaqqif ta 'awtentikazzjoni b'żewġ fatturi fuq kwalunkwe server tal-web, kemm jekk fuq Windows jew Linux, jieħu massimu ta' siegħa. U t-twaqqif tal-browsers jieħu madwar 5 minuti. Ħafna nies jaħsbu li t-twaqqif u l-ħidma b'awtentikazzjoni b'żewġ fatturi huwa diffiċli u mhux ċar. Nittama li l-artiklu tagħna jneħħi din il-ħrafa, għall-inqas ftit.
Utenti reġistrati biss jistgħu jipparteċipaw fl-istħarriġ. Idħol, ta 'xejn.
Għandek bżonn struzzjonijiet biex twaqqaf TLS b'ċertifikati skont GOST 34.10-2012:
Iva, TLS-GOST huwa meħtieġ ħafna
Le, l-irfinar bl-algoritmi GOST mhuwiex interessanti