د usbip پر بنسټ کاروونکو ترمنځ د کریپټوګرافیک نښه شبکه شریکول

د باور خدماتو په اړه په قانون کې د بدلونونو په تړاو ("د بریښنایی باور خدماتو په اړه" اوکراین)، تصدۍ اړتیا لري څو ډیپارټمنټ ته اړتیا ولري چې په ټوکنونو کې موقعیت لرونکي کلیدونو سره کار وکړي (دا مهال د هارډویر کیلي شمیره پوښتنه لاهم خلاصه ده. ).

د وسیلې په توګه د ټیټ لګښت سره (وړیا) ، انتخاب سمدلاسه راوتلی usbip. په Ubintu 18.04 کې سرور د خپرونې څخه مننه کار پیل کړ د USB/IP ټیم کول او په بریالیتوب سره په څو فلش ډرایو کې ازموینه وشوه (په هغه وخت کې د نښه نشتوالي له امله). په هغه وخت کې د انحصار ملکیت (د کارونکي لپاره ریزرویشن) پرته کومه ځانګړې ستونزه نه وه پیژندل شوې. دا روښانه ده چې د څو کاروونکو لپاره د لاسرسي تنظیم کولو لپاره (لږترلږه دوه، د پیل کولو لپاره)، دا اړینه ده چې د دوی لاسرسی په وخت سره وویشئ او دوی مجبور کړئ چې په بدل کې کار وکړي.

پوښتنه دا وه: زه څنګه کولی شم دا د لږترلږه نڅا سره ترسره کړم ترڅو هرڅه د هرچا لپاره کار وکړي ...

برخه ناپاکه ده

د usbip پر بنسټ کاروونکو ترمنځ د کریپټوګرافیک نښه شبکه شریکول
اختیار XNUMX. د بټ فایلونو لپاره څو شارټ کټونه، د بیلګې په توګه
a) د لاسرسي کیلي سره نښلول.
ب) په قصدي توګه قطع کول.

پراګراف "б» متنازعه، نو پریکړه وشوه چې په 3 دقیقو کې د کیلي سره کار کولو وخت ورکړئ.

د usbip پیرودونکي ځانګړتیا دا ده چې وروسته له دې چې دا پیل شي ، دا په کنسول کې ځړول پاتې کیږي؛ پرته له دې چې د کنسول ناستې مداخله وکړي ، تاسو کولی شئ اړیکه "نږدې" د پیرودونکي اړخ او د سرور اړخ څخه هم وتړئ.

دلته هغه څه دي چې زموږ لپاره ښه کار کوي:

لومړی: اړیکه پر بیټ

usbip -a 172.16.12.26 4-1
msg * "Подпись/токен недоступны или заняты "

دوهم: بندول off.bat

ping 127.0.0.1 -n 180
taskkill /IM usbip.exe /F

د کارونکي شعور باندې تکیه کولو پرته، سکریپټونه یوځای شوي token.bat

on.bat | off.bat

څه پیښیږي: ټولې فایلونه په ورته فولډر کې دي ، د token.bat فایل لخوا پیل شوي ، که چیرې اړیکه وتړل شي نو کارونکي سمدلاسه پیغام ترلاسه کوي چې د کیلي شتون نلري ، په بل حالت کې ، یوازې د 180 پینګونو وروسته. د کوډ ورکړل شوي لینونه د "@ECHO OFF" سره سمبال کیدی شي او "> nul" ته د کنسول لارښوونو سره سمبال کیدی شي ترڅو کاروونکي ډیر ټکان ونه کړي، مګر دا اړینه نده چې ازموینه پیل کړئ. په USB ډرایو کې لومړني "چلول" وښودله چې هرڅه د وړاندوینې وړ ، د باور وړ او روښانه وو. سربیره پردې ، د سرور اړخ څخه هیڅ ډول لاسوهنې ته اړتیا نشته.

د usbip پر بنسټ کاروونکو ترمنځ د کریپټوګرافیک نښه شبکه شریکول

په طبیعي ډول ، کله چې د ټوکن سره مستقیم کار کول ، هرڅه د تمې سره سم ندي ترسره شوي: د وسیلې مدیر کې د فزیکي اړیکې سره ، ټوکن د 2 وسیلو (WUDF او سمارټ کارت) په توګه ثبت شوی ، او یوازې د شبکې اتصال سره د WUDF په توګه (که څه هم دا د PIN کوډ غوښتنه کولو لپاره کافي ده).

د usbip پر بنسټ کاروونکو ترمنځ د کریپټوګرافیک نښه شبکه شریکول

دا هم معلومه شوه چې وحشي "ټاسککیل" دومره سخت نه دی، او د پیرودونکي سره د پیوستون تړل ستونزمن کار دی او حتی که دا بریالی وي، دا په سرور کې د هغه لپاره د تړلو تضمین نه کوي.

په پیرودونکي کې د ټولو کنسولونو قرباني کولو سره، دویم سکریپټ بڼه واخیسته:

ping 127.0.0.1 -n 180 > nul
taskkill /IM usbip.exe /F /T  > nul
ping 127.0.0.1 -n 10 > nul
taskkill /IM conhost.exe /F /T  > nul

که څه هم د دې اغیزمنتوب له 50٪ څخه کم دی، ځکه چې سرور په کلکه د پیوستون پرانیستې په پام کې نیولو سره دوام لري.

د اتصال سره ستونزې د سرور اړخ لوړولو په اړه فکرونو لامل شوې.

د سرور برخه

څه ته اړتیا لرئ؟

  1. غیر فعال کاروونکي له خدمت څخه جلا کړئ.
  2. وګورئ چې څوک اوس مهال نښه کاروي (یا لاهم پور اخلي).
  3. وګورئ که نښه پخپله کمپیوټر سره وصل وي.

دا ستونزې د کرونټاب او اپاچي خدماتو په کارولو سره حل شوې. د 2 او 3 ټکو د څارنې پایلو حالت بیا لیکلو جلا طبیعت چې زموږ سره علاقه لري دا په ګوته کوي چې د فایل سیسټم په رام ډرایو کې موقعیت لري. لاین /etc/fstab ته اضافه شوی

tmpfs   /ram_drive      tmpfs   defaults,nodev,size=64K         0       0

په روټ کې د سکریپټونو سره یو سکریپټ فولډر رامینځته شوی: د token unmounting-mounting the token usb_restart.sh

usbip unbind -b 1-2
sleep 2
usbip bind -b 1-2
sleep 2
usbip attach --remote=localhost --busid=1-2
sleep 2
usbip detach --port=00

د فعالو وسیلو لیست ترلاسه کول usblist_id.sh

usbip list -r 127.0.0.1 | grep ':' |awk -F ":" '{print $1}'| sed s/' '//g | grep -v "^$" > /ram_drive/usb_id.txt

د فعال IPs لیست ترلاسه کول (د کارونکي IDs ښودلو لپاره د وروستي بدلون سره) usbip_client_ip.sh

netstat -an | grep :3240 | grep ESTABLISHED|awk '{print $5}'|cut -f1 -d":" > /ram_drive/usb_ip_cli.txt

کرونټاب پخپله داسې ښکاري:

*/5 * * * * /!script/usb_restart.sh > /dev/null 2>&1
* * * * * ( sleep 30 ; /!script/usblist_id.sh > /dev/null)
* * * * * (sleep 10 ; /!script/usbip_client_ip.sh > /dev/hull)

نو موږ لرو: په هرو 5 دقیقو کې یو نوی کارونکی کولی شي اړیکه ونیسي ، پرته لدې چې چا له ټوکن سره کار کړی. د /ramdrive فولډر د سیملنک په کارولو سره د HTTP سرور سره وصل دی، په کوم کې چې 2 متن فایلونه خوندي شوي، د usbip سرور حالت ښیې.

بله برخه: "په لفافه کې بدصورت"

اختیار II. د لږ تر لږه یو څه لږ ډارونکي انٹرفیس سره د کاروونکي خوشحاله کولو لپاره. د دې حقیقت له امله حیران شوي چې کاروونکي د مختلف چوکاټونو سره د وینډوز مختلف نسخې لري، مختلف حقونه، په پرتله لږ ستونزمن چلند. لعزر ما دا ونه موندل (زه البته د C# لپاره یم، مګر پدې قضیه کې نه). تاسو کولی شئ په شالید کې د انٹرفیس څخه د بټ فایلونه لانچ کړئ ، لږترلږه ، مګر د سمې ازموینې پرته ، زه شخصا په دې نظر یم: تاسو اړتیا لرئ د کارونکي نا رضایتي راټولولو لپاره دا لید ته اړتیا ولرئ.

د usbip پر بنسټ کاروونکو ترمنځ د کریپټوګرافیک نښه شبکه شریکول

لاندې دندې د انٹرفیس او سافټویر لخوا حل شوي:

  1. ښکاره کوي چې آیا نښه اوس مهال بوخته ده.
  2. په لومړي لانچ کې، په ابتدايي ترتیب کې د "سمه" بټ فایلونو رامینځته کول شامل دي چې د ټوکن سرور سره د ناستې پیل او مداخله پلي کوي. په ورپسې پیل کې، د پټنوم په کارولو سره د "خدمت" حالت پلي کول.
  3. د سرور سره د پیوستون شتون چک کول، د پایلې په توګه دا ټولپوښتنه کوي چې ایا دا بوخت دی یا د ستونزو په اړه پیغامونه ښیې. کله چې اړیکه بیا پیل شي ، برنامه په اوتومات ډول په نورمال حالت کې کار پیل کوي.

د ویب سرور سره کار کول د اضافي fphttpclient سنیپ ان په کارولو سره پلي کیږي.


دلته به د پیرودونکي اوسني نسخې ته لینک وي

د مقالې موضوع باندې نور ملاحظات هم شتون لري ، په بیله بیا د VirtualHere محصول لپاره جزوي ابتدايي لیوالتیا د دې ځانګړتیاو سره ...

سرچینه: www.habr.com

Add a comment