Fa'amaoniga e lua i luga o le 'upega tafaʻilagi e faʻaaoga ai se faʻailoga USB. Lenei foi mo Linux

Fa'amaoniga e lua i luga o le 'upega tafaʻilagi e faʻaaoga ai se faʻailoga USB. Lenei foi mo Linux
В o se tasi o a tatou tala muamua sa matou talanoa e uiga i le taua o le faʻamaoni e lua-faʻailoga i luga o faitotoa faʻapisinisi a kamupani. O le taimi mulimuli na matou faʻaalia ai le faʻatulagaina o le faʻamaoniga saogalemu i le IIS web server.

I faʻamatalaga, na talosagaina i matou e tusi faʻatonuga mo 'upega tafaʻilagi masani mo Linux - nginx ma Apache.

Na e fesili mai - na matou tusia.

O le a le mea e te manaʻomia e amata ai?

  • So'o se fa'asoa fa'aonaponei Linux. Na ou faia se seti suʻega ile MX Linux 18.2_x64. O le mea moni e le o se tufatufaina atu o le server, ae atonu e le o iai ni eseesega mo Debian. Mo isi tufatufaga, o auala i faletusi config e mafai ona fesuisuiai teisi.
  • Faailoga. Matou te faʻaauau pea ona faʻaogaina le faʻataʻitaʻiga Rutoken EDS PKI, lea e fetaui lelei i tulaga o le saoasaoa uiga mo le faʻaaogaina faʻapisinisi.
  • Ina ia galue ma se faʻailoga i Linux, e tatau ona e faʻapipiʻi afifi nei:
    libccid libpcsclite1 pcscd pcsc-mea faigaluega tatalasc

Fa'amaoniga e lua i luga o le 'upega tafaʻilagi e faʻaaoga ai se faʻailoga USB. Lenei foi mo Linux

Tuuina atu o tusi faamaonia

I tala talu ai, matou te faʻalagolago i le mea moni o le a tuʻuina atu tusi faamaonia a le server ma le tagata faʻatau e faʻaaoga ai Microsoft CA. Ae talu ai o loʻo matou faʻatulagaina mea uma i Linux, matou te taʻu atu foi ia te oe se isi auala e tuʻuina atu ai nei tusi pasi - e aunoa ma le tuua o Linux.
Matou te faʻaaogaina le XCA e pei o CA (https://hohnstaedt.de/xca/), lea e maua i so'o se fa'asalalauga Linux fa'aonaponei. O gaioiga uma o le a matou faia i le XCA e mafai ona faia i le laina laina faʻatonu e faʻaaoga ai le OpenSSL ma pkcs11-tool utilities, ae mo le sili atu le faigofie ma le manino, matou te le tuʻuina atu i lenei tusiga.

Amataina

  1. Fa'apipi'i:
    $ apt-get install xca
  2. Ma matou taufetuli:
    $ xca
  3. Matou te fatuina la matou faʻamaumauga mo CA - /root/CA.xdb
    Matou te fautuaina le teuina o faamaumauga a le Pulega Tusi Faamaonia i totonu o se pusa e na'o le pule e mafai ona maua. E taua tele lenei mea e puipuia ai ki patino o tusi faamaonia aʻa, lea e faʻaaogaina e saini ai isi tusi pasi uma.

Fausia ki ma a'a CA tusi faamaonia

O se fa'alapotopotoga autu lautele (PKI) e fa'avae i luga o se faiga fa'atonu. O le mea autu i lenei faiga o le aʻa faʻamaonia pule poʻo le aʻa CA. E tatau ona faia muamua lana tusi faamaonia.

  1. Matou te faia se ki patino RSA-2048 mo le CA. Ina ia faia lenei mea, i luga ole laiga Ki Tumaoti tulei Ki fou ma filifili le ituaiga talafeagai.
  2. Seti se igoa mo le ki fou. Na ou faaigoa ia CA Key.
  3. Matou te tuʻuina atu le tusi faamaonia CA lava ia, e faʻaaoga ai le paʻaga autu na faia. Ina ia faia lenei mea, alu i le laupepa Tusi faamaonia ma kiliki Tusipasi Fou.
  4. Ia mautinoa e filifili SHA-256, aua o le faʻaaogaina o le SHA-1 e le toe mafai ona manatu saogalemu.
  5. Ia mautinoa e filifili e fai ma fa'ata'ita'iga [default]CA. Aua nei galo e kiliki i luga Fa'aoga uma, a leai e le fa'aogaina le mamanu.
  6. I le tab noatia ma fai fuafua filifili la tatou paga ki. O iina e mafai ona e faʻatumu uma fanua autu o le tusi faamaonia.

Fa'amaoniga e lua i luga o le 'upega tafaʻilagi e faʻaaoga ai se faʻailoga USB. Lenei foi mo Linux

Fausia ki ma se tusi fa'aumau https

  1. I se auala talitutusa, matou te fatuina se ki patino RSA-2048 mo le 'auʻaunaga, na ou taʻua o le Server Key.
  2. Pe a fatuina se tusi faamaonia, matou te filifili e tatau ona sainia le tusi faamaonia a le server ma se tusi faamaonia CA.
  3. Aua nei galo e filifili SHA-256.
  4. Matou te filifilia e fai ma faʻataʻitaʻiga [tauagai] HTTPS_server. Kiliki i luga Fa'aoga uma.
  5. Ona i luga o le laupepa noatia ma fai fuafua filifili la tatou ki ma faʻatumu fanua manaʻomia.

Fa'amaoniga e lua i luga o le 'upega tafaʻilagi e faʻaaoga ai se faʻailoga USB. Lenei foi mo Linux

Fausia ki ma tusi faamaonia mo le tagata fa'aoga

  1. O le ki patino a le tagata faʻaoga o le a teuina i luga o la matou faʻailoga. Ina ia galue i ai, e tatau ona e fa'apipi'i le faletusi PKCS#11 mai la matou upega tafa'ilagi. Mo faʻasalalauga taʻutaʻua, matou te tufatufaina atu afifi ua saunia, o loʻo i ai iinei - https://www.rutoken.ru/support/download/pkcs/. E iai foʻi a matou faʻapotopotoga mo le arm64, armv7el, armv7hf, e2k, mipso32el, lea e mafai ona sii mai i la matou SDK - https://www.rutoken.ru/developers/sdk/. I le faaopoopo atu i faʻapotopotoga mo Linux, e iai foʻi faʻapotopotoga mo macOS, freebsd ma le Android.
  2. Fa'aopoopoina se PKCS#11 Provider fou ile XCA. Ina ia faia lenei mea, alu i le lisi filifiliga i le tab PKCS#11 Tuuina atu.
  3. Matou te fetaomi faʻaopoopo ma filifili le ala i le faletusi PKCS#11. I loʻu tulaga o le usrliblibrtpkcs11ecp.so.
  4. Matou te manaʻomia se faʻailoga Rutoken EDS PKI. La'u mai le fa'aoga rtAdmin - https://dev.rutoken.ru/pages/viewpage.action?pageId=7995615
  5. Matou te faia
    $ rtAdmin -f -q -z /usr/lib/librtpkcs11ecp.so -u <PIN-код пользователя>
  6. Matou te filifilia le ki RSA-2048 mo le Rutoken EDS PKI o le ituaiga autu. Na ou ta'ua le ki Client Key.

    Fa'amaoniga e lua i luga o le 'upega tafaʻilagi e faʻaaoga ai se faʻailoga USB. Lenei foi mo Linux

  7. Ulufale le PIN code. Ma matou te faʻatali mo le faʻamaeʻaina o le gaosiga o meafaigaluega o le paga autu

    Fa'amaoniga e lua i luga o le 'upega tafaʻilagi e faʻaaoga ai se faʻailoga USB. Lenei foi mo Linux

  8. Matou te fatuina se tusi faamaonia mo le tagata faʻaoga e ala i le faʻatusa ma le tusi faamaonia a le server. O le taimi lenei matou te filifilia se mamanu [default] HTTPS_client ma aua nei galo e kiliki Fa'aoga uma.
  9. I le tab noatia ma fai fuafua tu'u fa'amatalaga e uiga i le tagata fa'aoga. Matou te tali atu i le ioe i le talosaga e teu le tusi faamaonia mo le faailoga.

O se taunuuga, i luga o le laupepa Tusi faamaonia i le XCA e tatau ona e maua se mea faapena.

Fa'amaoniga e lua i luga o le 'upega tafaʻilagi e faʻaaoga ai se faʻailoga USB. Lenei foi mo Linux
Ole seti pito maualalo ole ki ma tusipasi ua lava lea e amata ai ona fa'atūina ia lava server.

Ina ia fetuutuunai, matou te manaʻomia le auina atu i fafo o le CA certificate, server certificate ma server private key.

Ina ia faia lenei mea, filifili le mea e manaʻomia i luga o le laupepa tutusa i le XCA ma kiliki faʻatau atu.

Nginx

O le a ou le tusia pe faʻapefea ona faʻapipiʻi ma taʻavale se server nginx - e lava tala i luga o lenei autu i luga ole Initaneti, ae le o le taʻua o faʻamaumauga aloaia. Se'i o tatou sa'o i le fa'atulagaina o le HTTPS ma le fa'amaoni e lua fa'aaoga ai se fa'ailoga.

Faʻaopoopo laina nei i le vaega o le server i le nginx.conf:

server {
	listen 443 ssl;
	ssl_verify_depth 1;
	ssl_certificate /etc/nginx/Server.crt;
	ssl_certificate_key /etc/nginx/ServerKey.pem;
	ssl_client_certificate /etc/nginx/CA.crt;
	ssl_verify_client on;
}

O se faʻamatalaga auiliili o mea uma e fesoʻotaʻi ma le faʻatulagaina o le ssl i le nginx e mafai ona maua iinei - https://nginx.org/en/docs/http/ngx_http_ssl_module.html#ssl_client_certificate

O le a ou faamatalaina puupuu mea na ou fesili ai ia te au lava ia:

  • ssl_verify_client - faʻamaonia e tatau ona faʻamaonia le filifili o le faʻalagolago mo le tusi faamaonia.
  • ssl_verify_depth - Faʻamatalaina le loloto o suʻesuʻega mo le faʻamaonia o aʻa faʻalagolago i le filifili. Talu ai ona o le matou tagata faʻatau tusi e vave ona sainia i luga o le aʻa, o le loloto e seti i le 1. Afai e sainia le tusi faʻaoga i luga o se CA intermediate, e tatau ona faʻamaonia le 2 i lenei parakalafa, ma isi.
  • ssl_client_certificate - faʻamaonia le ala i le aʻa faʻalagolago, lea e faʻaaogaina pe a siaki le faʻalagolago i le tusi faamaonia a le tagata faʻaoga.
  • ssl_certificate/ssl_certificate_key - fa'ailoa mai le ala i le 'au'aunaga tusipasi/fa'apitoa ki.

Aua nei galo e tamoe nginx -t e siaki ai e leai ni typos i le config, ma o faila uma o loʻo i le nofoaga saʻo, ma isi.

Ma na o le pau lena! E pei ona e vaʻaia, o le seti e matua faigofie lava.

Siaki o lo'o galue ile Firefox

Talu ai matou te faia mea uma i Linux, matou te manatu o matou tagata faʻaoga e galulue foi i Linux (pe a iai a latou Windows, ona va'ai fa'atonuga mo le fa'atulagaina o su'esu'ega i le tala muamua.

  1. Tatou fa'alauiloa Firefox.
  2. Tatou taumafai e saini e aunoa ma se faailoga muamua. Matou te maua le ata lenei:

    Fa'amaoniga e lua i luga o le 'upega tafaʻilagi e faʻaaoga ai se faʻailoga USB. Lenei foi mo Linux

  3. Matou te o e uiga i: mea e manaʻo i ai # tulaga faalilolilo, ona tatou o ai lea i Meafaigaluega Saogalemu…
  4. Matou te fetaomi laʻue fa'aopoopo se PKCS#11 Aveta'avale fou ma fa'ailoa le ala i la matou librtpkcs11ecp.so.
  5. Ina ia siaki pe iloa le tusi faamaonia, e mafai ona e alu i Pule o Tusi Faamaonia. O le a uunaia oe e ulufale i lau PIN. A maeʻa faʻaoga saʻo, e mafai ona e siaki mea o loʻo i luga o le faʻamau Lau Tusi Faamaonia ua aliali mai la matou tusi faamaonia mai le faailoga.
  6. Ia tatou o ma le faailoga. Firefox fa'atonuina oe e filifili se tusi faamaonia o le a filifilia mo le 'au'aunaga. Filifili la matou tusi faamaonia.

    Fa'amaoniga e lua i luga o le 'upega tafaʻilagi e faʻaaoga ai se faʻailoga USB. Lenei foi mo Linux

  7. TUPE MAUA!

    Fa'amaoniga e lua i luga o le 'upega tafaʻilagi e faʻaaoga ai se faʻailoga USB. Lenei foi mo Linux

E tasi le seti, ma e pei ona e vaʻai i le faʻamalama talosaga tusi faamaonia, e mafai ona matou faʻasaoina la matou filifiliga. A maeʻa lenei mea, o taimi uma tatou te ulufale ai i totonu o le faitotoa, e naʻo le manaʻomia o le faʻaofiina o se faʻailoga ma ulufale i le PIN code faʻaoga na faʻamaonia i le taimi o le faʻatulagaina. A maeʻa lea faʻamaoniga, ua uma ona iloa e le 'auʻaunaga poʻo ai le tagata na ulufale i totonu ma e le mafai ona e toe faia ni faʻaopoopoga faʻamalama mo le faʻamaonia, ae vave tuʻu le tagata faʻaoga i lana lava tala.

Apache

E pei lava o le nginx, e leai se tasi e tatau ona i ai ni faʻafitauli faʻapipiʻi apache. Afai e te le iloa pe faʻafefea ona faʻapipiʻi lenei 'upega tafaʻilagi, faʻaaoga le pepa aloaia.

Ma amata ona matou faʻatulagaina a matou HTTPS ma faʻamaoniga e lua:

  1. Muamua e tatau ona e faʻagaoioia mod_ssl:
    $ a2enmod ssl
  2. Ona mafai ai lea ona fa'aogaina le tulaga HTTPS fa'aletonu a le saite:
    $ a2ensite default-ssl
  3. O lea ua matou faʻasaʻo le faila faila: /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

    E pei ona mafai ona e vaʻaia, o igoa o faʻamaufaʻailoga e masani ona fetaui ma igoa o faʻamaufaʻailoga i le nginx, o lea o le a ou le faʻamatalaina. Toe fo'i, so'o se tasi e fiafia i fa'amatalaga e fa'afeiloa'i ile fa'amaumauga.
    O lea ua toe amata la matou server:

    $ service apache2 reload
    $ service apache2 restart

  4. E pei ona mafai ona e vaʻaia, o le faʻatulagaina o faʻamaoniga e lua i luga o soʻo se upega tafaʻilagi, pe i luga o Windows poʻo Linux, e tasi le itula le maualuga. Ma o le setiina o suʻesuʻega e tusa ma le 5 minute. E toʻatele tagata e manatu o le faʻatulagaina ma le galulue faʻatasi ma faʻamaoniga e lua e faigata ma le manino. Ou te faʻamoemoe e faʻamaonia e le matou tusiga lenei tala, a itiiti ifo.

Na'o tagata fa'aigoaina e mafai ona auai i le su'esu'ega. Saini ese j, faʻamolemole.

E te manaʻomia ni faʻatonuga mo le faʻatulagaina o le TLS ma tusi faamaonia e tusa ai ma GOST 34.10-2012:

  • Ioe, e mana'omia tele le TLS-GOST

  • Leai, e le manaia le faʻaogaina i GOST algorithms

44 tagata fa'aoga na palota. 9 tagata fa'aoga na le mafai.

puna: www.habr.com

Faaopoopo i ai se faamatalaga