Motuhēhēnga-rua i runga i te pae mā te whakamahi i te tohu USB. Inaianei hoki mo Linux

Motuhēhēnga-rua i runga i te pae mā te whakamahi i te tohu USB. Inaianei hoki mo Linux
В tetahi o a maatau tuhinga o mua i korero matou mo te hiranga o te whakamotuhēhēnga-rua i runga i nga tomokanga umanga o nga kamupene. I te wa whakamutunga i whakaatu matou me pehea te whakarite motuhēhēnga haumaru i te tūmau tukutuku IIS.

I roto i nga korero, i tonohia matou ki te tuhi i nga tohutohu mo nga kaiwhakarato tukutuku tino noa mo Linux - nginx me Apache.

I patai koe - i tuhi matou.

He aha e hiahia ana koe ki te timata?

  • Te tohatoha Linux hou. I mahia e ahau he tatūnga whakamatautau i runga i te MX Linux 18.2_x64. Ko te tikanga ehara tenei i te tohatoha tūmau, engari kaore pea he rereketanga mo Debian. Mo etahi atu tohatoha, ka rereke pea nga huarahi ki nga whare pukapuka whirihora.
  • Tohu. Ka whakamahi tonu matou i te tauira Rutoken EDS PKI, he mea pai mo nga ahuatanga tere mo te whakamahi umanga.
  • Hei mahi me tetahi tohu i Linux, me whakauru e koe nga kohinga e whai ake nei:
    libccid libpcsclite1 pcscd pcsc-taputapu tuwherasc

Motuhēhēnga-rua i runga i te pae mā te whakamahi i te tohu USB. Inaianei hoki mo Linux

Te whakaputa tiwhikete

I roto i nga tuhinga o mua, i whakawhirinaki matou ki te meka ka tukuna nga tiwhikete tūmau me te kiritaki ma te whakamahi i a Microsoft CA. Engari i te mea kei te whakarite matou i nga mea katoa i roto i te Linux, ka korero ano matou ki a koe mo tetahi atu huarahi ki te whakaputa i enei tiwhikete - me te kore e whakarere i te Linux.
Ka whakamahia e matou te XCA hei CA (https://hohnstaedt.de/xca/), e waatea ana i runga i nga tohatoha Linux hou. Ko nga mahi katoa ka mahia e matou i roto i te XCA ka taea te mahi i roto i te aratau raina whakahau ma te whakamahi i nga taputapu OpenSSL me te pkcs11-taputapu, engari mo te ngawari me te maamaa, kaore matou e whakaatu i tenei tuhinga.

Getting Started

  1. Tāuta:
    $ apt-get install xca
  2. Na ka rere matou:
    $ xca
  3. Ka hangaia e matou to maatau paparangi mo CA - /root/CA.xdb
    Ka tūtohu mātou kia penapenahia te pātengi raraunga Mana Tiwhikete ki tētahi kōpaki kei te kaiwhakahaere anake te uru. He mea nui tenei ki te tiaki i nga kii motuhake o nga tiwhikete pakiaka, ka whakamahia hei haina i etahi atu tiwhikete katoa.

Waihangahia nga taviri me te tiwhikete CA pakiaka

Ko te hanganga matua a te iwi (PKI) e ahu mai ana i runga i te punaha arorangi. Ko te mea nui i roto i tenei punaha ko te mana tiwhikete pakiaka, CA pakiaka ranei. Me hanga tuatahi tana tiwhikete.

  1. Ka hangaia e matou he taviri motuhake RSA-2048 mo te CA. Ki te mahi i tenei, i runga i te ripa Kī Tūmataiti pana Kī Hou ka whiriwhiri i te momo e tika ana.
  2. Tautuhia he ingoa mo te takirua matua hou. I huaina e ahau ko CA Key.
  3. Ka tukuna e matou te tiwhikete CA ake, ma te whakamahi i te takirua matua i hangaia. Ki te mahi i tenei, haere ki te ripa tiwhikete ka pāwhiri Tiwhikete Hou.
  4. Kia mohio koe ki te whiriwhiri SHA-256, na te mea ko te whakamahi i te SHA-1 kaore e taea te kiia he haumaru.
  5. Me tino whiriwhiri hei tauira [taunoa]CA. Kaua e wareware ki te panui Hoatu katoa, ki te kore e whakamahia te tauira.
  6. Kei te ripa Kaupapa whiriwhiria ta maatau takirua matua. I reira ka taea e koe te whakakii i nga waahi matua katoa o te tiwhikete.

Motuhēhēnga-rua i runga i te pae mā te whakamahi i te tohu USB. Inaianei hoki mo Linux

Te hanga mau taviri me te tiwhikete tūmau https

  1. Waihoki, ka hanga e matou he taviri motuhake RSA-2048 mo te tūmau, ka kiia e ahau he Kī Tūmau.
  2. A, no te hanga i te tiwhikete, tīpako tatou e me haina te tiwhikete tūmau ki te tiwhikete CA.
  3. Kaua e wareware ki te kowhiri SHA-256.
  4. Ka tohua e matou hei tauira [taunoa] HTTPS_server. Patohia Hoatu katoa.
  5. Na i runga i te ripa Kaupapa tohua to maatau matua ka whakakiia nga mara e hiahiatia ana.

Motuhēhēnga-rua i runga i te pae mā te whakamahi i te tohu USB. Inaianei hoki mo Linux

Waihangahia nga taviri me te tiwhikete mo te kaiwhakamahi

  1. Ka penapena te taviri tūmataiti a te kaiwhakamahi ki runga i to maatau tohu. Hei mahi, me whakauru koe i te whare pukapuka PKCS#11 mai i ta maatau paetukutuku. Mo nga tohatoha rongonui, ka tohatohahia e matou nga kete kua oti te hanga, kei konei - https://www.rutoken.ru/support/download/pkcs/. Kei a matou ano nga huihuinga mo te arm64, armv7el, armv7hf, e2k, mipso32el, ka taea te tango mai i ta maatau SDK - https://www.rutoken.ru/developers/sdk/. I tua atu i nga huihuinga mo Linux, kei reira ano nga huihuinga mo te macOS, freebsd me te phi.
  2. Te taapiri i tetahi Kaiwhakarato PKCS#11 hou ki te XCA. Ki te mahi i tenei, haere ki te tahua kōwhiringa ki te ripa PKCS#11 Kaiwhakarato.
  3. Ka pehi tatou Tāpiri ka tohua te ara ki te whare pukapuka PKCS#11. I taku keehi ko usrliblibrtpkcs11ecp.so.
  4. Ka hiahiatia he tohu tohu Rutoken EDS PKI kua whakahōputuhia. Tikiake i te whaipainga rtAdmin - https://dev.rutoken.ru/pages/viewpage.action?pageId=7995615
  5. Ka mahia e tatou
    $ rtAdmin -f -q -z /usr/lib/librtpkcs11ecp.so -u <PIN-код пользователя>
  6. Ka tohua e matou te matua RSA-2048 mo te Rutoken EDS PKI hei momo matua. I karangahia e ahau tenei Kī Kiritaki.

    Motuhēhēnga-rua i runga i te pae mā te whakamahi i te tohu USB. Inaianei hoki mo Linux

  7. Whakauruhia te waehere PIN. A ka tatari tatou mo te otinga o te hanga taputapu o te takirua matua

    Motuhēhēnga-rua i runga i te pae mā te whakamahi i te tohu USB. Inaianei hoki mo Linux

  8. Ka hangaia e matou he tiwhikete mo te kaiwhakamahi ma te whakataurite ki te tiwhikete tūmau. I tenei wa ka tohua e matou he tauira [taunoa] HTTPS_kiritaki a kaua e wareware ki te panui Hoatu katoa.
  9. Kei te ripa Kaupapa whakauruhia nga korero mo te kaiwhakamahi. Ka whakautua e matou i runga i te whakaae ki te tono kia tiakina te tiwhikete mo te tohu.

Ko te mutunga, i runga i te ripa Tiwhikete i roto i te XCA me whiwhi koe i tetahi mea penei.

Motuhēhēnga-rua i runga i te pae mā te whakamahi i te tohu USB. Inaianei hoki mo Linux
Ko tenei huinga iti o nga taviri me nga tiwhikete e ranea ana hei timata ki te whakatu i nga kaimau tonu.

Hei whirihora, me kaweake te tiwhikete CA, te tiwhikete tūmau me te kī tūmataiti tūmau.

Ki te mahi i tenei, tohua te urunga e hiahiatia ana i runga i te ripa e pa ana ki te XCA ka paato Kaweake.

Nginx

Kaore au e tuhi me pehea te whakauru me te whakahaere i te tūmau nginx - he nui nga tuhinga mo tenei kaupapa i runga i te Ipurangi, kaua ki te whakahua i nga tuhinga mana. Me haere tika ki te whakarite HTTPS me te motuhēhēnga-rua ma te whakamahi tohu.

Tāpirihia ngā rārangi e whai ake nei ki te wāhanga tūmau i 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;
}

He whakamaarama taipitopito mo nga tawhā katoa e pa ana ki te whirihora i te ssl i te nginx ka kitea i konei - https://nginx.org/en/docs/http/ngx_http_ssl_module.html#ssl_client_certificate

Ka whakaahua poto ahau i nga mea i patai ahau ki a au ano:

  • ssl_verify_client - e tohu ana me manatoko te mekameka whakawhirinaki mo te tiwhikete.
  • ssl_verify_depth - Ka tautuhi i te hohonutanga rapu mo te tiwhikete pakiaka whakawhirinaki i roto i te mekameka. Mai i te mea kua hainatia tonu to tatou tiwhikete kiritaki i runga i te tiwhikete pakiaka, kua tautuhia te hohonu ki te 1. Mena kua hainatia te tiwhikete kaiwhakamahi i runga i te CA takawaenga, me tohuhia te 2 ki tenei waahanga, me etahi atu.
  • ssl_client_certificate - ka tohu i te ara ki te tiwhikete pakiaka whakawhirinaki, ka whakamahia ina tirohia te whakawhirinaki ki te tiwhikete a te kaiwhakamahi.
  • ssl_certificate/ssl_certificate_key - tohuhia te ara ki te tiwhikete tūmau/ kī tūmataiti.

Kaua e wareware ki te whakahaere i te nginx -t ki te tirotiro kaore he hapa i roto i te whirihora, kei te tika nga konae katoa, me era atu.

Na ko te katoa! Ka kite koe, he tino ngawari te tatūnga.

Te tirotiro kei te mahi i Firefox

I te mea ka mahia e matou nga mea katoa i roto i te Linux, ka whakaaro matou kei te mahi ano a matou kaiwhakamahi ki Linux (mehemea kei a raatau a Windows, na tirohia nga tohutohu mo te whakatu i nga kaitirotiro i te tuhinga o mua.

  1. Kia whakarewahia a Firefox.
  2. Me ngana ki te takiuru me te kore he tohu i te tuatahi. Ka whiwhi tatou i tenei pikitia:

    Motuhēhēnga-rua i runga i te pae mā te whakamahi i te tohu USB. Inaianei hoki mo Linux

  3. Haere tatou ki mō: manakohanga # tūmataiti, ka haere matou ki Pūrere Haumaru…
  4. Ka pehi tatou Utainaki te taapiri i tetahi Atekōkiri Pūrere PKCS#11 hou ka whakapūtā te ara ki to tatou librtpkcs11ecp.so.
  5. Hei tirotiro kei te kitea te tiwhikete, ka taea e koe te haere ki Kaiwhakahaere Tiwhikete. Ka ākina koe ki te whakauru i to PIN. I muri i te whakauru tika, ka taea e koe te tirotiro he aha kei runga i te ripa Au Tiwhikete i puta mai ta matou tiwhikete mai i te tohu.
  6. Inaianei me haere tatou me te tohu. Ka akiaki koe a Firefox ki te kowhiri i tetahi tiwhikete ka tohua mo te tūmau. Whiriwhiria to maatau tiwhikete.

    Motuhēhēnga-rua i runga i te pae mā te whakamahi i te tohu USB. Inaianei hoki mo Linux

  7. PROFIT!

    Motuhēhēnga-rua i runga i te pae mā te whakamahi i te tohu USB. Inaianei hoki mo Linux

Kua oti te tatūnga kotahi, a ka kite koe i te matapihi tono tiwhikete, ka taea e matou te penapena i ta maatau whiringa. Whai muri i tenei, ia wa ka uru matou ki te tomokanga, me whakauru noa he tohu me te whakauru i te waehere PIN kaiwhakamahi i tohua i te wa o te whakatakotoranga. I muri i taua whakamotuhēhēnga, kua mohio kē te tūmau ko wai te kaiwhakamahi kua takiuru, ā, ka kore e taea e koe te hanga i etahi atu matapihi mo te manatoko, engari me tuku tonu te kaiwhakamahi ki roto i tana putea whaiaro.

Apache

Ka rite ki te nginx, kaua tetahi e raru ki te whakauru i te apache. Mena kaore koe e mohio ki te whakauru i tenei tūmau tukutuku, whakamahia noa nga tuhinga whaimana.

Na ka timata taatau ki te whakarite i a maatau HTTPS me te whakamotuhēhēnga-rua:

  1. Tuatahi ka hiahia koe ki te whakahohe mod_ssl:
    $ a2enmod ssl
  2. Na ka whakahohe i nga tautuhinga HTTPS taunoa o te pae:
    $ a2ensite default-ssl
  3. Inaianei ka whakatikahia e matou te konae whirihoranga: /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

    Ka taea e koe te kite, ko nga ingoa o nga taapiri e rite ana ki nga ingoa o nga tawhā i roto i te nginx, na reira kaore au e whakamarama. Ano, ko nga tangata e pirangi ana ki nga korero, nau mai ki nga tuhinga.
    Inaianei ka timata ano ta maatau tūmau:

    $ service apache2 reload
    $ service apache2 restart

  4. Kei te kite koe, ko te whakarite motuhēhēnga-rua i runga i tetahi tūmau tukutuku, ahakoa i runga i Windows, Linux ranei, kotahi haora te roa. A ko te whakatu i nga kaitirotiro ka roa pea e 5 meneti. He maha nga tangata e whakaaro ana he uaua, he maamaa te whakarite me te mahi me te motuhēhēnga-rua. Te ti'aturi nei au ka whakakorehia e ta maatau tuhinga tenei pakiwaitara, he iti rawa.

Ko nga kaiwhakamahi kua rehita anake ka uru ki te rangahau. Waitohu maitēnā.

Kei te hiahia koe ki nga tohutohu mo te whakarite TLS me nga tiwhikete kia rite ki te GOST 34.10-2012:

  • Ae, he mea tino tika te TLS-GOST

  • Kao, karekau he mea whakamere ki te hangai me te GOST algorithms

44 nga kaiwhakamahi i pooti. 9 nga kaiwhakamahi i aukati.

Source: will.com

Tāpiri i te kōrero