ساده پاسورډونه خوندي ندي، او پیچلي د یادولو لپاره ناممکن دي. له همدې امله دوی ډیری وختونه د کیبورډ لاندې یا په مانیټر کې په چپچیني یادداشت کې پای ته رسیږي. د دې لپاره چې ډاډ ترلاسه شي چې پاسورډونه د "هیرونکي" کاروونکو په ذهنونو کې پاتې کیږي او د محافظت اعتبار له لاسه نه ورکوي، دوه فاکتور تصدیق شتون لري (2FA).
د وسیلې د مالکیت او د هغه د PIN پیژندلو ترکیب له امله ، PIN پخپله د یادولو لپاره ساده او اسانه کیدی شي. د PIN په اوږدوالي یا تصادفي کې نیمګړتیاوې د فزیکي ملکیت اړتیا او د PIN برټ ځواک محدودیتونو له امله پوره کیږي.
سربیره پردې، دا په دولتي ادارو کې پیښیږي چې دوی غواړي هرڅه د GOST مطابق کار وکړي. په لینکس کې د ننوتلو لپاره دا 2FA اختیار به بحث شي. زه به له لرې څخه پیل وکړم.
د PAM ماډلونه
د پلګ ایبل تصدیق کولو ماډلونه (PAM) د معیاري API سره ماډلونه دي او په غوښتنلیکونو کې د مختلف تصدیق میکانیزم پلي کول دي.
ټولې اسانتیاوې او غوښتنلیکونه چې کولی شي د PAM سره کار وکړي دوی غوره کړي او د کارونکي تصدیق لپاره یې وکاروي.
په عمل کې، دا یو څه داسې کار کوي: د ننوتلو کمانډ PAM ته زنګ وهي، کوم چې د ترتیب کولو فایل کې مشخص شوي ماډلونو په کارولو سره ټول اړین چکونه ترسره کوي او پایله بیرته د ننوتلو کمانډ ته راستنیږي.
librtpam
د اکټیو شرکت لخوا رامینځته شوی ماډل د کورني کریپټوګرافي وروستي معیارونو سره سم د غیر متناسب کیلي په کارولو سره د سمارټ کارتونو یا USB ټوکنونو کارولو کاروونکو دوه فکتور تصدیق اضافه کوي.
راځئ چې د دې عملیاتو اصول وګورو:
- نښه د کارونکي سند او د هغې شخصي کیلي ذخیره کوي؛
- سند د باوري په توګه د کارونکي کور لارښود کې خوندي شوی.
د تصدیق پروسه په لاندې ډول ترسره کیږي:
- Rutoken د کارونکي شخصي سند لټوي.
- د نښه PIN غوښتنه کیږي.
- تصادفي ډاټا په شخصي کیلي کې مستقیم د روتوکن چپ کې لاسلیک کیږي.
- پایله لاسلیک شوی لاسلیک د کارونکي سند څخه د عامه کیلي په کارولو سره تایید شوی.
- ماډل د زنګ وهلو غوښتنلیک ته د لاسلیک تایید پایله بیرته راوړي.
تاسو کولی شئ د GOST R 34.10-2012 کیلي (اوږدوالی 256 یا 512 بټ) یا پخوانی GOST R 34.10-2001 په کارولو سره تصدیق کړئ.
تاسو اړتیا نلرئ د کیلي امنیت په اړه اندیښنه ولرئ - دا په مستقیم ډول په روتوکن کې رامینځته شوي او هیڅکله یې د کریپټوګرافیک عملیاتو پرمهال حافظه نه پریږدي.
Rutoken EDS 2.0 د NDV 4 مطابق د FSB او FSTEC لخوا تصدیق شوی، نو دا د معلوماتو سیسټمونو کې کارول کیدی شي چې محرم معلومات پروسس کوي.
عملي کارول
نږدې هر عصري لینکس به ترسره کړي، د بیلګې په توګه موږ به xUbuntu 18.10 وکاروو.
1) اړین کڅوړې نصب کړئ
sudo apt-get install libccid pcscd opensc
که تاسو غواړئ د سکرین سیور سره د ډیسټاپ لاک اضافه کړئ ، نو کڅوړه اضافي نصب کړئ libpam-pkcs11
.
2) د GOST ملاتړ سره د PAM ماډل اضافه کړئ
له کتابتون څخه پورته کول
د PAM فولډر مینځپانګه librtpam.so.1.0.0 سیسټم فولډر ته کاپي کړئ
/usr/lib/
او یا /usr/lib/x86_64-linux-gnu/
او یا /usr/lib64
3) بسته د librtpkcs11ecp.so سره نصب کړئ
له لینک څخه د DEB یا RPM کڅوړه ډاونلوډ او نصب کړئ:
4) وګورئ چې Rutoken EDS 2.0 په سیسټم کې کار کوي
په ټرمینل کې موږ اجرا کوو
$ pkcs11-tool --module /usr/lib/librtpkcs11ecp.so -T
که تاسو کرښه وګورئ Rutoken ECP <no label>
- دا پدې مانا ده چې هرڅه سم دي.
5) سند ولولئ
چک کول چې وسیله یو سند لري
$ pkcs11-tool --module /usr/lib/librtpkcs11ecp.so -O
که د کرښې وروسته:
Using slot 0 with a present token (0x0)
- معلومات ښودل کیږي د کیلي او سندونو په اړه ، تاسو اړتیا لرئ سند ولولئ او ډیسک ته یې وساتئ. د دې کولو لپاره ، لاندې کمانډ چل کړئ ، چیرې چې د {id} پرځای تاسو اړتیا لرئ د سند ID بدل کړئ چې تاسو د پخوانۍ کمانډ په محصول کې لیدلی و:
$ pkcs11-tool --module /usr/lib/librtpkcs11ecp.so -r -y cert --id {id} --output-file cert.crt
که چیرې د cert.crt فایل جوړ شوی وي، نو 6 ګام ته لاړ شئ). - هیڅ نشتهبیا وسیله خالي ده. د خپل مدیر سره اړیکه ونیسئ یا کیلي او سند پخپله د راتلونکي مرحلې تعقیبولو سره رامینځته کړئ.
5.1) د ازموینې سند جوړ کړئ
پاملرنه! د کیلي او سندونو رامینځته کولو لپاره تشریح شوي میتودونه د ازموینې لپاره مناسب دي او په جنګي حالت کې د کارولو لپاره ندي. د دې کولو لپاره ، تاسو اړتیا لرئ د خپلې ادارې د باوري تصدیق کولو ادارې یا د تصدیق شوي تصدیق شوي ادارې لخوا صادر شوي کیلي او سندونه وکاروئ.
د PAM ماډل د محلي کمپیوټرونو ساتلو لپاره ډیزاین شوی او په کوچنیو سازمانونو کې د کار کولو لپاره ډیزاین شوی. څرنګه چې لږ کاروونکي شتون لري، مدیر کولی شي د سندونو لغوه کول وڅاري او په لاسي ډول حسابونه بلاک کړي، او همدارنګه د سندونو اعتبار موده. د PAM ماډل لاهم نه پوهیږي چې څنګه د CRLs په کارولو سره سندونه تایید کړي او د باور زنځیرونه رامینځته کړي.
اسانه لار (د براوزر له لارې)
د ازموینې سند ترلاسه کولو لپاره ، وکاروئ
د جیک لاره (د کنسول او احتمالي کمپیلر له لارې)
د OpenSC نسخه وګورئ
$ opensc-tool --version
که نسخه د 0.20 څخه کم وي، نو بیا تازه یا جوړ کړئ
د لاندې پیرامیټونو سره کلیدي جوړه جوړه کړئ:
--key-type: GOSTR3410-2012-512:А (ГОСТ-2012 512 бит c парамсетом А), GOSTR3410-2012-256:A (ГОСТ-2012 256 бит с парамсетом A)
--id:
د څیز پیژندونکی (CKA_ID) د ASCII جدول څخه د دوه عددي هیکس کرکټر شمیرو په توګه. د چاپ وړ حروفونو لپاره یوازې ASCII کوډونه وکاروئ، ځکه چې ... id باید OpenSSL ته د تار په توګه انتقال شي. د مثال په توګه، د ASCII کوډ "3132" د "12" تار سره مطابقت لري. د اسانتیا لپاره، تاسو کولی شئ وکاروئ
$ ./pkcs11-tool --module /usr/lib/librtpkcs11ecp.so --keypairgen --key-type GOSTR3410-2012-512:A -l --id 3132
بیا به موږ یو سند جوړ کړو. دوه لارې به لاندې تشریح شي: لومړۍ د CA له لارې ده (موږ به د ازموینې CAs وکاروو) ، دویمه پخپله لاسلیک شوې. د دې کولو لپاره ، تاسو اړتیا لرئ لومړی د OpenSSL نسخه 1.1 یا وروسته نصب او تنظیم کړئ ترڅو د لارښود په کارولو سره د ځانګړي rtengine ماډل له لارې د Rutoken سره کار وکړئ.
د مثال په توګه: د '- لپاره-id 3132
په OpenSSL کې تاسو اړتیا لرئ مشخص کړئ "pkcs11:id=12
".
تاسو کولی شئ د ازموینې CA خدمات وکاروئ، چې ډیری یې شتون لري، د بیلګې په توګه،
بل اختیار دا دی چې سستۍ ته غاړه کیږدي او ځان لاسلیک کړي
$ openssl req -utf8 -new -keyform engine -key "pkcs11:id=12" -engine rtengine -out req.csr
وسیله ته د سند اپلوډ کول
$ openssl req -utf8 -x509 -keyform engine -key "pkcs11:id=12" -engine rtengine -out cert.cer
6) سند په سیسټم کې ثبت کړئ
ډاډ ترلاسه کړئ چې ستاسو سند د بیس 64 فایل په څیر ښکاري:
که ستاسو سند داسې ښکاري:
بیا تاسو اړتیا لرئ سند د DER فارمیټ څخه PEM فارمیټ ته بدل کړئ (base64)
$ openssl x509 -in cert.crt -out cert.pem -inform DER -outform PEM
موږ بیا ګورو چې هرڅه اوس سم دي.
سند د باوري سندونو لیست کې اضافه کړئ
$ mkdir ~/.eid
$ chmod 0755 ~/.eid
$ cat cert.pem >> ~/.eid/authorized_certificates
$ chmod 0644 ~/.eid/authorized_certificates
وروستۍ کرښه د باوري سندونو لیست د نورو کاروونکو لخوا په تصادفي یا قصدي ډول بدلیدو څخه ساتي. دا د یو چا مخه نیسي چې دلته خپل سند اضافه کړي او ستاسو په استازیتوب د ننوتلو وړ وي.
7) تصدیق ترتیب کړئ
زموږ د PAM ماډل تنظیم کول په بشپړ ډول معیاري دي او په سمه توګه د نورو ماډلونو تنظیم کولو په څیر ترسره کیږي. فایل ته جوړ کړئ /usr/share/pam-configs/rutoken-gost-pam
د ماډل بشپړ نوم لري، ایا دا د ډیفالټ لخوا فعال شوی، د ماډل لومړیتوب، او د تصدیق پیرامیټونه.
د تصدیق پیرامیټرې د عملیاتو بریا لپاره اړتیاوې لري:
- اړین دي: دا ډول ماډلونه باید مثبت ځواب بیرته راولي. که د ماډل کال پایله منفي ځواب ولري، نو دا به د تصدیق کولو تېروتنه پایله ولري. غوښتنه به پریښودل شي، مګر پاتې ماډلونه به ویل کیږي.
- اړین: د اړتیا سره ورته، مګر سمدلاسه تصدیق ناکاموي او نور ماډلونه له پامه غورځوي.
- کافي: که چیرې د دې ډول ماډل څخه دمخه هیڅ یو اړین یا کافي ماډل منفي پایله ونه راوړي ، نو بیا ماډل به مثبت ځواب بیرته راولي. پاتې ماډلونه به له پامه غورځول شي.
- اختیاري: که چیرې په سټیک کې اړین ماډلونه شتون ونلري او هیڅ یو کافي ماډل مثبته پایله ونه راوړي ، نو لږترلږه یو اختیاري ماډل باید مثبته پایله بیرته راوړي.
د بشپړ فایل منځپانګې /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
فایل خوندي کړئ، بیا یې اجرا کړئ
$ sudo pam-auth-update
په هغه کړکۍ کې چې ښکاري، د هغې تر څنګ یو ستوری کیږدئ Rutoken PAM GOST او کلیک OK
8) تنظیمات چیک کړئ
د دې لپاره چې پوه شئ چې هرڅه تنظیم شوي ، مګر په ورته وخت کې سیسټم ته د ننوتلو وړتیا له لاسه مه ورکوئ ، کمانډ دننه کړئ
$ sudo login
خپل کارن نوم دننه کړئ. هرڅه په سمه توګه تنظیم شوي که چیرې سیسټم د آلې PIN کوډ ته اړتیا ولري.
9) کمپیوټر د بندولو لپاره تنظیم کړئ کله چې نښه ایستل کیږي
په کڅوړه کې شامل دي libpam-pkcs11
افادیت شامل دی pkcs11_eventmgr,
کوم چې تاسو ته اجازه درکوي مختلف عملونه ترسره کړئ کله چې د PKCS#11 پیښې پیښیږي.
د ترتیباتو لپاره pkcs11_eventmgr
د ترتیب کولو فایل په توګه کار کوي: /etc/pam_pkcs11/pkcs11_eventmgr.conf
د مختلف لینکس توزیعونو لپاره ، هغه قومانده چې د حساب بندیدو لامل کیږي کله چې سمارټ کارت یا نښه لرې شي توپیر به ولري. سانتي متر. event card_remove
.
د ترتیب کولو فایل مثال لاندې ښودل شوی:
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";
}
}
له هغې وروسته غوښتنلیک اضافه کړئ pkcs11_eventmgr
د پیل لپاره. د دې کولو لپاره، د .bash_profile فایل سم کړئ:
$ nano /home/<имя_пользователя>/.bash_profile
د فایل پای ته pkcs11_eventmgr لاین اضافه کړئ او ریبوټ کړئ.
د عملیاتي سیسټم تنظیم کولو لپاره بیان شوي مرحلې د هرډول عصري لینکس توزیع کې د لارښوونو په توګه کارول کیدی شي ، پشمول کورني.
پایلې
د لینکس کمپیوټرونه د روسیې په دولتي ادارو کې په زیاتیدونکي توګه مشهور کیږي، او پدې OS کې د باور وړ دوه فاکتور تصدیق کول تل اسانه ندي. موږ به خوښ یو چې تاسو سره د دې لارښود سره د "پاسورډ ستونزه" حل کولو کې مرسته وکړو او ستاسو کمپیوټر ته د ډیر وخت مصرف کولو پرته د اعتبار وړ لاسرسی خوندي کړو.
سرچینه: www.habr.com