O upu faigofie faigofie e le maluelue, ma faigata e le mafai ona manatua. O le mafuaaga lena e masani ona latou iu i luga o se tusi pipii i lalo o le piano po o luga o le mata. Ina ia mautinoa o loʻo tumau pea uputatala i mafaufau o tagata faʻaoga "faʻagaloina" ma le faʻatuatuaina o le puipuiga e le o leiloa, e iai le faʻamaoniga e lua (2FA).
Ona o le tuufaatasiga o le umiaina o se masini ma le iloaina o lana PIN, o le PIN lava ia e mafai ona faigofie ma faigofie ona manatua. O fa'aletonu ile umi ole PIN po'o le fa'afuase'i e fa'amalieina ile mana'oga o le umia fa'aletino ma tapula'a ile malosi ole PIN.
E le gata i lea, e tupu i ofisa o le malo latou te mananaʻo ia galulue mea uma e tusa ai ma le GOST. O lenei filifiliga 2FA mo le saini i totonu o Linux o le a talanoaina. Ou te amata mai mamao.
PAM modules
Pluggable Authentication Modules (PAM) o modules ma se API masani ma faʻatinoga o auala faʻamaonia eseese i talosaga.
O fa'aoga uma ma fa'aoga e mafai ona galulue fa'atasi ma le PAM e piki i luga ma mafai ona fa'aogaina mo le fa'amaoni a le tagata.
I le faʻataʻitaʻiga, e galue se mea e pei o lenei: o le login command e valaʻau PAM, lea e faia uma siaki talafeagai e faʻaaoga ai modules faʻamaonia i le faila faʻatulagaina ma toe faʻafoʻi le iʻuga i le faʻatonuga o le saini.
librtpam
O le module na fausia e le kamupani Aktiv e faʻaopoopoina faʻamaoniga e lua o tagata faʻaoga e faʻaogaina kata atamai poʻo faʻailoga USB e faʻaaoga ai ki asymmetric e tusa ai ma tulaga lata mai o faʻamatalaga faʻapitonuʻu.
Sei o tatou vaai i le mataupu faavae o lona faagaoioiga:
- O le faʻailoga e teu ai le tusi faamaonia a le tagata faʻaoga ma lana ki patino;
- O lo'o fa'asaoina le tusi fa'amaonia i le lisi o fale a le tagata fa'aoga e pei ona fa'atuatuaina.
O le faagasologa o le faʻamaonia e tupu e pei ona taʻua i lalo:
- E su'e e Rutoken le tusi pasi patino a le tagata fa'aoga.
- O lo'o talosagaina le PIN fa'ailoga.
- O fa'amatalaga fa'afuase'i e saini sa'o i luga o le ki tuma'oti i le va'a Rutoken.
- O le saini e maua e fa'amaonia i le fa'aogaina o le ki fa'alaua'itele mai le tusi pasi a le tagata fa'aoga.
- E toe fa'afo'i e le module le fa'amaoniga saini i le talosaga vala'au.
E mafai ona e fa'amaonia le fa'aaogaina o ki GOST R 34.10-2012 (umi 256 po'o 512 bits) po'o le GOST R 34.10-2001 ua tuai.
E te le tau popole e uiga i le saogalemu o ki - o loʻo gaosia saʻo i Rutoken ma e le tuʻua lona manatua i le taimi o gaioiga faʻataʻitaʻi.
Rutoken EDS 2.0 ua faʻamaonia e le FSB ma le FSTEC e tusa ai ma le NDV 4, o lea e mafai ai ona faʻaaogaina i faiga faʻamatalaga e faʻatautaia ai faʻamatalaga faalilolilo.
Fa'aoga fa'atino
Toeitiiti lava o Linux faʻaonaponei o le a faia, mo se faʻataʻitaʻiga o le a matou faʻaogaina le xUbuntu 18.10.
1) Faʻapipiʻi afifi manaʻomia
sudo apt-get install libccid pcscd opensc
Afai e te manaʻo e faʻaopoopo se loka o le desktop ma se screensaver, faʻaopoopo le afifi libpam-pkcs11
.
2) Fa'aopoopo se PAM module fa'atasi ma le GOST lagolago
Tu'u le faletusi mai
Kopi mea o loʻo i totonu o le pusa PAM librtpam.so.1.0.0 i le faila o le polokalama
/usr/lib/
poʻo /usr/lib/x86_64-linux-gnu/
poʻo /usr/lib64
3) Faʻapipiʻi le afifi ile librtpkcs11ecp.so
Tikia ma faʻapipiʻi le DEB poʻo le RPM afifi mai le fesoʻotaʻiga:
4) Siaki pe o galue Rutoken EDS 2.0 i le faiga
I totonu o le laina matou te faʻatinoina
$ pkcs11-tool --module /usr/lib/librtpkcs11ecp.so -T
Afai e te vaʻai i le laina Rutoken ECP <no label>
- o lona uiga e lelei mea uma.
5) Faitau le tusi faamaonia
Siaki pe iai le tusi faamaonia o le masini
$ pkcs11-tool --module /usr/lib/librtpkcs11ecp.so -O
Afai e uma le laina:
Using slot 0 with a present token (0x0)
- fa'amatalaga fa'aalia e uiga i ki ma tusi faamaonia, e tatau ona e faitau le tusi faamaonia ma sefe i le tisiki. Ina ia faia lenei mea, faʻataʻitaʻi le faʻatonuga o loʻo i lalo, ae le o {id} e te manaʻomia e suitulaga i le ID ID na e vaʻaia i le gaioiga o le poloaiga muamua:
$ pkcs11-tool --module /usr/lib/librtpkcs11ecp.so -r -y cert --id {id} --output-file cert.crt
Afai ua faia le faila cert.crt, alu i le Laasaga 6). - e leai se mea, ona gaogao lea o le masini. Fa'afeso'ota'i lau pule po'o le faia e oe o ki ma tusi faamaonia e ala i le mulimuli i le isi laasaga.
5.1) Fausia se tusi faamaonia suʻega
Fa'alogo! O metotia faʻamatalaina mo le fatuina o ki ma tusi pasi e talafeagai mo suʻega ma e le o faʻamoemoeina mo le faʻaaogaina i le faiga o le taua. Ina ia faia lea mea, e mana'omia lou fa'aogaina o ki ma tusi pasi na tu'uina atu e lau fa'alapotopotoga fa'amaonia fa'amaonia po'o se fa'atonuga fa'amaonia.
O le PAM module ua mamanuina e puipuia ai komepiuta i le lotoifale ma ua mamanuina e galue i totonu o faʻalapotopotoga laiti. Talu ai e toʻaitiiti tagata faʻaoga, e mafai e le Pule ona mataʻituina le faʻaleaogaina o tusi faamaonia ma poloka lima faʻamatalaga, faʻapea foʻi ma le taimi aoga o tusi pasi. O le PAM module e leʻi iloa pe faʻapefea ona faʻamaonia tusi faamaonia e faʻaaoga ai CRLs ma fausia filifili faʻalagolago.
Le auala faigofie (e ala ile browser)
Ina ia maua se tusi faamaonia suʻega, faʻaaoga
Le auala a geek (e ala i le faʻamafanafanaga ma atonu o le tagata faʻapipiʻi)
Siaki le OpenSC version
$ opensc-tool --version
Afai o le lomiga e itiiti ifo i le 0.20, ona faʻafouina lea pe fausia
Fausia se pa'aga autu ma fa'amaufa'ailoga nei:
--key-type: GOSTR3410-2012-512:А (ГОСТ-2012 512 бит c парамсетом А), GOSTR3410-2012-256:A (ГОСТ-2012 256 бит с парамсетом A)
--id:
mea e iloagofie ai (CKA_ID) e lua-numera fa'ailoga hex mai le laulau ASCII. Fa'aaoga na'o code ASCII mo mataitusi e mafai ona lolomi, aua... id o le a manaʻomia ona pasi i OpenSSL o se manoa. Mo se faʻataʻitaʻiga, o le ASCII code "3132" e fetaui ma le manoa "12". Mo le faigofie, e mafai ona e faʻaaogaina
$ ./pkcs11-tool --module /usr/lib/librtpkcs11ecp.so --keypairgen --key-type GOSTR3410-2012-512:A -l --id 3132
Ona sosoo ai lea ma le faia o se tusi faamaonia. E lua auala o le a faʻamatalaina i lalo: o le muamua e ala i le CA (o le a matou faʻaaogaina suʻega CA), o le lona lua e saini e le tagata lava ia. Ina ia faia lenei mea, e manaʻomia muamua ona e faʻapipiʻi ma faʻapipiʻi OpenSSL version 1.1 poʻo mulimuli ane e galue ai ma Rutoken e ala i se faʻaoga faʻapitoa rtengine e faʻaaoga ai le tusi lesona
Mo se fa'ata'ita'iga: mo '--id 3132
' i le OpenSSL e tatau ona e faʻamaonia "pkcs11:id=12
".
E mafai ona e faʻaogaina auaunaga o se suʻega CA, lea e tele, mo se faʻataʻitaʻiga,
O le isi filifiliga o le tuʻuina atu lea i le paie ma fatuina se saini a le tagata lava ia
$ openssl req -utf8 -new -keyform engine -key "pkcs11:id=12" -engine rtengine -out req.csr
Tuuina atu o le tusi faamaonia i le masini
$ openssl req -utf8 -x509 -keyform engine -key "pkcs11:id=12" -engine rtengine -out cert.cer
6) Resitala le tusi faamaonia i le faiga
Ia mautinoa o lau tusi faamaonia e foliga mai o se faila base64:
Afai o lau tusi faamaonia e pei o lenei:
ona e manaʻomia lea ona sui le tusi faamaonia mai le DER format i le PEM format (base64)
$ openssl x509 -in cert.crt -out cert.pem -inform DER -outform PEM
Matou te toe siaki ua lelei mea uma i le taimi nei.
Faaopoopo le tusi faamaonia i le lisi o tusi faamaonia faatuatuaina
$ mkdir ~/.eid
$ chmod 0755 ~/.eid
$ cat cert.pem >> ~/.eid/authorized_certificates
$ chmod 0644 ~/.eid/authorized_certificates
O le laina mulimuli e puipuia ai le lisi o tusi faamaonia faatuatuaina mai le suia faʻafuaseʻi pe suia e isi tagata faʻaoga. O le mea lea e taofia ai se tasi mai le fa'aopoopoina o lana tusi pasi iinei ma mafai ai ona saini e fai ma ou sui.
7) Seti fa'amaoniga
O le faʻatulagaina o la matou module PAM e matua faʻatulagaina ma e faia i le auala tutusa e pei o le faʻatulagaina o isi modules. Fausia e faila /usr/share/pam-configs/rutoken-gost-pam
o lo'o i ai le igoa atoa o le module, pe mafai ona fa'aletonu, o le fa'amuamua o le module, ma fa'amaumauga fa'amaonia.
O fa'amaumauga fa'amaonia e iai mana'oga mo le manuia o le fa'agaioiga:
- mana'omia: O ia modules e tatau ona toe fa'afo'i se tali lelei. Afai o le i'uga o le telefoni o lo'o i ai se tali le lelei, o le a i'u ai i se fa'amaoniga sese. O le a lafoa'i le talosaga, ae o isi modules o le a vala'au.
- e manaʻomia: E tutusa ma manaʻomia, ae vave le faʻamaonia ma le amanaiaina isi modules.
- lava: Afai e leai se tasi o le manaʻomia pe lava modules aʻo leʻi faʻafoʻisia sea module i se taunuuga le lelei, ona toe faʻafoʻi lea e le module se tali lelei. O isi modules o le a le amanaiaina.
- faitalia: Afai e leai ni modules manaʻomia i luga o le faaputuga ma e leai se tasi o le lava modules toe faʻafoʻi mai se taunuuga lelei, o le itiiti ifo ma le tasi o le filifiliga modules e tatau ona toe faʻafoʻi se taunuuga lelei.
Fa'atonu faila atoa /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
teu le faila, ona fai lea
$ sudo pam-auth-update
i le faʻamalama o loʻo faʻaalia, tuʻu se fetu i ona tafatafa Rutoken PAM GOST ma kiliki OK
8) Siaki tulaga
Ina ia malamalama o mea uma ua faʻatulagaina, ae i le taimi lava e tasi e le leiloa le mafai ona ulufale i totonu o le polokalama, ulufale i le poloaiga
$ sudo login
Ulufale i lou username. O mea uma e faʻapipiʻi saʻo pe a manaʻomia e le polokalama se PIN code masini.
9) Fa'atulaga le komepiuta e poloka pe a aveese mai le fa'ailoga
E aofia i totonu o le afifi libpam-pkcs11
aoga e aofia ai pkcs11_eventmgr,
lea e mafai ai ona e faia ni gaioiga eseese pe a tutupu mea PKCS#11.
Mo faatulagaga pkcs11_eventmgr
e avea o se faila faatulagaina: /etc/pam_pkcs11/pkcs11_eventmgr.conf
Mo faʻasalalauga eseese Linux, o le poloaiga e mafua ai ona loka se teugatupe pe a aveese se kata atamai poʻo se faʻailoga o le a eseese. Cm. event card_remove
.
O se faʻataʻitaʻiga faila faila o loʻo faʻaalia i lalo:
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";
}
}
A maeʻa lena faʻaopoopo le talosaga pkcs11_eventmgr
e amatalia. Ina ia faia lenei mea, fa'asa'o le faila .bash_profile:
$ nano /home/<имя_пользователя>/.bash_profile
Faʻaopoopo le laina pkcs11_eventmgr i le pito o le faila ma toe faʻafou.
O laasaga faʻamatalaina mo le faʻatulagaina o le faiga faʻaogaina e mafai ona faʻaaogaina e fai ma faʻatonuga i soʻo se faʻasalalauga Linux faʻaonapo nei, e aofia ai totonu o le atunuʻu.
iʻuga
O PC Linux ua faʻateleina le lauiloa i ofisa o le malo o Rusia, ma o le faʻatulagaina o faʻamaoniga faʻamaonia e lua i lenei OS e le faigofie i taimi uma. Matou te fiafia e fesoasoani ia te oe e foia le "faafitauli o le password" ma lenei taʻiala ma faʻalagolago le puipuia o le avanoa i lau PC e aunoa ma le faʻaaluina o le tele o taimi i luga.
puna: www.habr.com