Ko nga kupuhipa ngawari kaore i te haumaru, karekau hoki e taea te maumahara. Koia te take ka mutu tonu ratou ki runga i te tuhipoka piri i raro i te papapātuhi, i runga ranei i te aroturuki. Hei whakarite kia noho tonu nga kupu huna ki roto i nga hinengaro o nga kaiwhakamahi "wareware" me te pono o te whakamarumaru kaore e ngaro, he whakamotuhēhēnga-rua (2FA).
Na te whakakotahitanga o te pupuri i tetahi taputapu me te mohio ki tana PIN, ko te PIN ake ka ngawari ake, ka ngawari ake te mahara. Ko nga ngoikoretanga o te roanga o te PIN, te matapōkeretia ranei, ka whakakorehia e te whakaritenga a-tinana me nga here mo te kaha kino PIN.
I tua atu, ka tupu i roto i nga tari a te kawanatanga e hiahia ana ratou kia mahi nga mea katoa i runga i te GOST. Ko tenei waahanga 2FA mo te takiuru ki Linux ka korerohia. Ka timata ahau i tawhiti.
Ko nga waahanga PAM
Ko nga Motuhēhēnga Whakamotuhēhē Mono (PAM) he kōwae me te API paerewa me te whakatinanatanga o nga momo momo momo tikanga motuhēhēnga i roto i nga tono.
Ko nga taputapu katoa me nga tono ka taea te mahi me te PAM ka tikina ka taea te whakamahi mo te motuhēhēnga a te kaiwhakamahi.
I roto i te mahi, he penei te mahi: ka karanga te whakahau takiuru ki a PAM, e mahi ana i nga arowhai e tika ana ma te whakamahi i nga waahanga kua tohua i roto i te konae whirihoranga me te whakahoki i te hua ki te whakahau takiuru.
librtpam
Ko te kōwae i whakawhanakehia e te kamupene Aktiv ka taapiri i te whakamotuhēhēnga-rua o nga kaiwhakamahi e whakamahi ana i nga kaari atamai, i nga tohu USB ranei e whakamahi ana i nga taviri hangarite e ai ki nga paerewa hou o te tuhinga tuhi a-whare.
Kia titiro tatou ki te kaupapa o tana mahi:
- Ka tiakina e te tohu te tiwhikete a te kaiwhakamahi me tana kii motuhake;
- Ka tiakina te tiwhikete ki roto i te whaiaronga kainga o te kaiwhakamahi i runga i te pono.
Ka puta te tukanga motuhēhēnga e whai ake nei:
- Ka rapu a Rutoken i te tiwhikete whaiaro a te kaiwhakamahi.
- Ka tonohia te PIN tohu.
- Ka hainatia nga raraunga tupurangi ki runga i te kii motuhake i roto i te maramara Rutoken.
- Ka manatokohia te hainatanga ma te whakamahi i te taviri a te iwi mai i te tiwhikete a te kaiwhakamahi.
- Ka whakahokia e te kōwae te hua whakaū waitohu ki te tono waea.
Ka taea e koe te whakamotuhēhē mā te whakamahi i ngā kī GOST R 34.10-2012 (roa 256, 512 paraka ranei) te GOST R 34.10-2001 tawhito ranei.
Kare koe e maaharahara mo te haumarutanga o nga taviri - he mea hanga tika ki Rutoken karekau e waiho tona maharatanga i te wa e whakahaere ana i nga mahi cryptographic.
Ko te Rutoken EDS 2.0 kua whakamanahia e te FSB me te FSTEC e ai ki te NDV 4, na reira ka taea te whakamahi i roto i nga punaha korero e tukatuka ana i nga korero muna.
Te whakamahi whaitake
Tata ki nga Linux hou ka mahi, hei tauira ka whakamahia e matou te xUbuntu 18.10.
1) Tāutahia ngā pōkai e tika ana
sudo apt-get install libccid pcscd opensc
Mena kei te pirangi koe ki te taapiri i tetahi raka papamahi me te kaitiaki mata, whakauruhia ano te kete libpam-pkcs11
.
2) Tāpirihia he kōwae PAM me te tautoko GOST
Uta ana i te whare pukapuka mai
Tāruatia ngā ihirangi o te kōpaki PAM librtpam.so.1.0.0 ki te kōpaki pūnaha
/usr/lib/
ranei /usr/lib/x86_64-linux-gnu/
ranei /usr/lib64
3) Tāutahia te mōkihi me te librtpkcs11ecp.so
Tikiake me te whakauru i te kete DEB, RPM ranei mai i te hono:
4) Tirohia kei te mahi a Rutoken EDS 2.0 i roto i te punaha
I te tauranga ka mahia e matou
$ pkcs11-tool --module /usr/lib/librtpkcs11ecp.so -T
Mena ka kite koe i te raina Rutoken ECP <no label>
- te tikanga he pai nga mea katoa.
5) Panuitia te tiwhikete
Te tirotiro he tiwhikete to te taputapu
$ pkcs11-tool --module /usr/lib/librtpkcs11ecp.so -O
Mena i muri i te raina:
Using slot 0 with a present token (0x0)
- ka whakaatuhia nga korero mo nga taviri me nga tiwhikete, me panui koe i te tiwhikete ka tiakina ki te kōpae. Hei mahi i tenei, whakahaerehia te whakahau e whai ake nei, hei utu mo {id} me whakakapi koe i te ID tiwhikete i kite koe i te putanga o te whakahau o mua:
$ pkcs11-tool --module /usr/lib/librtpkcs11ecp.so -r -y cert --id {id} --output-file cert.crt
Mena kua hangaia te kōnae cert.crt, haere ki te taahiraa 6). - kahore he mea, ka noho kau te taputapu. Whakapa atu ki to kaiwhakahaere, waihangahia ranei e koe nga ki me te tiwhikete ma te whai i nga mahi e whai ake nei.
5.1) Waihangatia he tiwhikete whakamatautau
Te aro! Ko nga tikanga kua whakaahuahia mo te hanga i nga taviri me nga tiwhikete e tika ana mo te whakamatautau me te kore e kii mo te whakamahi i te aratau whawhai. Hei mahi i tenei, me whakamahi koe i nga taviri me nga tiwhikete i tukuna e te mana tiwhikete pono o to whakahaere, i tetahi mana tiwhikete whaimana ranei.
Ko te kaupapa PAM i hangaia hei tiaki i nga rorohiko o te rohe me te mahi i roto i nga whakahaere iti. I te mea he iti noa nga kaiwhakamahi, ka taea e te Kaiwhakahaere te aro turuki i te whakakorenga o nga tiwhikete me te aukati i nga kaute a-ringa, me te wa whaimana o nga tiwhikete. Ko te waahanga PAM kaore ano kia mohio ki te manatoko i nga tiwhikete ma te whakamahi i nga CRL me te hanga mekameka whakawhirinaki.
Ko te huarahi ngawari (ma te tirotiro)
Ki te whiwhi tiwhikete whakamatautau, whakamahia
Te ara a te geek (ma te papatohu me te kaitoha pea)
Tirohia te putanga OpenSC
$ opensc-tool --version
Mena he iti ake te putanga i te 0.20, katahi ka whakahou, ka hanga ranei
Hangaia he takirua matua me nga tawhā e whai ake nei:
--key-type: GOSTR3410-2012-512:А (ГОСТ-2012 512 бит c парамсетом А), GOSTR3410-2012-256:A (ГОСТ-2012 256 бит с парамсетом A)
--id:
pūtautuhi ahanoa (CKA_ID) hei tau pūāhua hex-rua mai i te ripanga ASCII. Whakamahia nga waehere ASCII anake mo nga tohu ka taea te ta, na te mea... me tuku id ki OpenSSL hei aho. Hei tauira, ko te waehere ASCII "3132" e rite ana ki te aho "12". Mo te waatea, ka taea e koe te whakamahi
$ ./pkcs11-tool --module /usr/lib/librtpkcs11ecp.so --keypairgen --key-type GOSTR3410-2012-512:A -l --id 3132
I muri mai ka hangaia he tiwhikete. E rua nga huarahi ka whakaahuahia i raro nei: ko te tuatahi ma te CA (ka whakamahi matou i nga CA whakamatautau), ko te tuarua he haina-whaiaro. Hei mahi i tenei, me whakauru tuatahi koe me te whirihora i te putanga OpenSSL 1.1 i muri mai ranei ki te mahi tahi me Rutoken ma tetahi waahanga rtengine motuhake ma te whakamahi i te pukapuka.
Hei tauira: mo '--id 3132
' i roto i te OpenSSL me tohu koe "pkcs11:id=12
".
Ka taea e koe te whakamahi i nga ratonga o te whakamatautau CA, he maha, hei tauira,
Ko tetahi atu whiringa ko te tuku ki te mangere me te hanga i tetahi waitohu-whaiaro
$ openssl req -utf8 -new -keyform engine -key "pkcs11:id=12" -engine rtengine -out req.csr
Te tuku i te tiwhikete ki te taputapu
$ openssl req -utf8 -x509 -keyform engine -key "pkcs11:id=12" -engine rtengine -out cert.cer
6) Rēhitahia te tiwhikete ki te punaha
Tirohia te ahua o to tiwhikete ki te konae base64:
Mena he penei te ahua o to tiwhikete:
katahi ka hiahia koe ki te huri i te tiwhikete mai i te whakatakotoranga DER ki te whakatakotoranga PEM (base64)
$ openssl x509 -in cert.crt -out cert.pem -inform DER -outform PEM
Ka tirohia ano e matou kei te pai nga mea katoa inaianei.
Tāpirihia te tiwhikete ki te rārangi o ngā tiwhikete whakawhirinaki
$ mkdir ~/.eid
$ chmod 0755 ~/.eid
$ cat cert.pem >> ~/.eid/authorized_certificates
$ chmod 0644 ~/.eid/authorized_certificates
Ko te rarangi whakamutunga ka tiaki i te rarangi o nga tiwhikete whirinaki mai i te whakarereke pohehe, na etahi atu kaiwhakamahi. Ma tenei ka aukati tetahi i te taapiri i tana tiwhikete ki konei ka taea e koe te whakauru mai mo koe.
7) Whakaritehia te motuhēhēnga
Ko te whakarite i to maatau PAM he tino paerewa, he rite tonu te mahi ki te whakatu i etahi atu waahanga. Waihanga ki te konae /usr/share/pam-configs/rutoken-gost-pam
kei roto te ingoa katoa o te kōwae, ahakoa kua whakahohea ma te taunoa, te kaupapa matua o te kōwae, me ngā tawhā motuhēhēnga.
Kei roto i nga tawhā motuhēhēnga ngā whakaritenga mō te angitu o te mahi:
- e hiahiatia ana: Me whakahoki mai he urupare pai mo enei momo waahanga. Mēnā he urupare tōraro te hua o te waea kōwae, ka puta he hapa motuhēhēnga. Ka tukuna te tono, engari ka karangahia nga toenga waahanga.
- e hiahiatia ana: He rite ki te mea e hiahiatia ana, engari ka rahua tonu te motuhēhēnga me te wareware ki etahi atu waahanga.
- rawaka: Ki te kore tetahi o nga waahanga e hiahiatia ana, e ranea ana ranei i mua i te whakahoki mai o te hua kino, katahi ka whakahoki mai he whakautu pai. Ko te toenga o nga waahanga ka waihohia.
- he kōwhiringa: Ki te kore he kōwae e hiahiatia ana i runga i te tāpae, ā, karekau tētahi o ngā kōwae rawaka e whakahoki mai he hua pai, me whakahoki mai he hua pai kia kotahi o nga kōwae whiriwhiri.
Kei roto i nga konae katoa /usr/share/pam-configs/rutoken-gost-pam
:
Name: Rutoken PAM GOST
Default: yes
Priority: 800
Auth-Type: Primary
Auth: sufficient /usr/lib/librtpam.so.1.0.0 /usr/lib/librtpkcs11ecp.so
tiakina te kōnae, ka mahia
$ sudo pam-auth-update
i te matapihi e puta mai ana, hoatu he whetūriki ki te taha Rutoken PAM GOST ka pāwhiri OK
8) Tirohia nga tautuhinga
Ki te mohio kei te whirihora nga mea katoa, engari i te wa ano kaore e ngaro te kaha ki te takiuru ki te punaha, whakauruhia te whakahau
$ sudo login
Whakauruhia to ingoa kaiwhakamahi. Kua whirihora tika nga mea katoa mena ka hiahiatia e te punaha he waehere PIN taputapu.
9) Whirihorahia te rorohiko kia aukatihia ina tangohia te tohu
Kei roto i te kete libpam-pkcs11
whaipainga whakaurua pkcs11_eventmgr,
ka taea e koe te mahi i nga momo mahi ka puta nga kaupapa PKCS#11.
Mo nga whakaturanga pkcs11_eventmgr
hei kōnae whirihoranga: /etc/pam_pkcs11/pkcs11_eventmgr.conf
Mo nga tohatoha Linux rereke, ka rereke te whakahau e maukati ai te kaute ina tangohia he kaari atamai, tohu tohu ranei. Cm. event card_remove
.
Ko te tauira o te konae whirihoranga e whakaatuhia ana i raro nei:
pkcs11_eventmgr
{
# Запуск в бэкграунде
daemon = true;
# Настройка сообщений отладки
debug = false;
# Время опроса в секундах
polling_time = 1;
# Установка тайм-аута на удаление карты
# По-умолчанию 0
expire_time = 0;
# Выбор pkcs11 библиотеки для работы с Рутокен
pkcs11_module = usr/lib/librtpkcs11ecp.so;
# Действия с картой
# Карта вставлена:
event card_insert {
# Оставляем значения по умолчанию (ничего не происходит)
on_error = ignore ;
action = "/bin/false";
}
# Карта извлечена
event card_remove {
on_error = ignore;
# Вызываем функцию блокировки экрана
# Для GNOME
action = "dbus-send --type=method_call --dest=org.gnome.ScreenSaver /org/gnome/ScreenSaver org.gnome.ScreenSaver.Lock";
# Для XFCE
# action = "xflock4";
# Для Astra Linux (FLY)
# action = "fly-wmfunc FLYWM_LOCK";
}
# Карта долгое время извлечена
event expire_time {
# Оставляем значения по умолчанию (ничего не происходит)
on_error = ignore;
action = "/bin/false";
}
}
I muri i tera taapirihia te tono pkcs11_eventmgr
ki te whakaoho. Hei mahi i tenei, whakatika i te konae .bash_profile:
$ nano /home/<имя_пользователя>/.bash_profile
Tāpirihia te raina pkcs11_eventmgr ki te mutunga o te konae ka whakaara ano.
Ko nga waahanga kua whakamaramatia mo te whakatuu i te punaha whakahaere ka taea te whakamahi hei tohutohu i roto i nga tohatoha Linux hou, tae atu ki nga mahi a-whare.
mutunga
Kei te rongonui haere nga PC Linux i roto i nga tari a te kawanatanga o Ruhia, a, ehara i te mea ngawari te whakarite motuhēhēnga-rua i roto i tenei OS. Ka koa matou ki te awhina ia koe ki te whakaoti i te "raruraru kupuhipa" me tenei aratohu me te tiaki pono i te uru ki to PC me te kore e whakapau i te wa roa ki runga.
Source: will.com