Shkëputja e kriptomonedhës nga përdoruesit mbi bazën e usbip

Me ndërrimin e legjislacionit lidhur me shërbimet besnikërisë («Për shërbimet elektronike të besnikërisë» Ukraina), në kompani ka lindur nevoja që disa departamente të punojnë me çelësa, të vendosur në tokena (në këtë moment, çështja e numrit të çelësave fizikë është ende e hapur).

Si njĂ« mjet me kosto tĂ« ulĂ«t (pa pagesĂ«) zgjedhja ra menjĂ«herĂ« nĂ« usbip. Serveri nĂ« Ubuntu 18.04 funksionoi falĂ« publikimit ShtrengojmĂ« USB/IP dhe Ă«shtĂ« testuar me sukses nĂ« disa diskĂ« flash (pĂ«r mungesĂ« tĂ« atij momenti tĂ« tokenit). Nuk u identifikuan asnjĂ« problem tĂ« veçantĂ«, pĂ«rveç monopolizimit (rezervimit pĂ«r pĂ«rdoruesin) nĂ« atĂ« moment. ËshtĂ« e qartĂ« se pĂ«r tĂ« organizuar qasje pĂ«r pĂ«rdorues tĂ« shumtĂ« (tĂ« paktĂ«n dy, pĂ«r fillim) nevojitet tĂ« ndahen akseset nĂ« kohĂ« dhe t'i detyrohen tĂ« punojnĂ« radhazi.

Lindi pyetja: Si me sa më pak vështirësi të bëhet që të gjithë të funksiononin


Një pjesë e rëndësishme

Shkëputja e kriptomonedhës nga përdoruesit mbi bazën e usbip
dhe varianti. Disa ikona për skedarët bat, konkretisht
a) Lidhja e çelësit të aksesit.
b) Prishja e qartë.

Neni «б» kontestuese, prandaj u vendos të dha kohë për punë me çelësin prej 3 minutash.

Karakteristika e klientit usbip është se pasi të aktivizohet, ai mbetet i ngjitur në konsolë, pa ndërprerjen e sesionit të konsolës; mund të mbyllet lidhja "ashtu si ashpër" nga ana e klientit dhe gjithashtu nga ana e serverit.

Ja çfarë funksionoi normalisht për ne:

e para: lidhja on.bat

usbip -a 172.16.12.26 4-1
msg * "Nënshkrimi/tokeni i pavlefshëm ose i zënë"

e dyta: shkëputja off.bat

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

pa u mbështetur në ndershmërinë e përdoruesit, skenarët u bashkuan në token.bat

on.bat | off.bat

ÇfarĂ« rezulton: tĂ« gjitha skedarĂ«t janĂ« nĂ« tĂ« njĂ«jtĂ«n dosje, duke aktivizuar skedarin token.bat; nĂ«se lidhja Ă«shtĂ« mbyllur nga pĂ«rdoruesi, menjĂ«herĂ« ka njĂ« mesazh pĂ«r paqartĂ«sinĂ« e çelĂ«sit, nĂ« rastin tjetĂ«r, vetĂ«m pas 180 pingjeve. Rreshtat e kodit tĂ« dhĂ«nĂ« mund tĂ« pajisen me "@ECHO OFF" dhe drejtim tĂ« konsolĂ«s nĂ« "> nul" pĂ«r tĂ« mos e shkaktuar shumĂ« tronditje pĂ«r pĂ«rdoruesin, megjithatĂ«, pĂ«r aktivizim nĂ« testim nuk Ă«shtĂ« e domosdoshme. NjĂ« "testim" fillestar nĂ« USB tregoi se gjithçka Ă«shtĂ« parashikuar-sigurta-qartĂ«. PĂ«r mĂ« tepĂ«r, nga ana e serverit, nuk nevojiten asnjĂ« manipulim.

Shkëputja e kriptomonedhës nga përdoruesit mbi bazën e usbip

Natyrisht, gjatë punës me tokenin, gjërat nuk shkuan siç pritej: kur lidhet fizikisht në menaxhuesin e pajisjeve, tokeni regjistrohet si 2 pajisje (WUDF dhe kartë inteligjente), ndërsa kur është në rrjet vetëm si WUDF (megjithatë, për të kërkuar PIN-in, kjo është e mjaftueshme).

Shkëputja e kriptomonedhës nga përdoruesit mbi bazën e usbip

Ndërkohë, rezultoi se "taskkill" nuk është aq i ashpër dhe mbyllja e lidhjes në klient është problematike dhe edhe nëse arrin, nuk garanton mbylljen e saj për të në server.

Duke sakrifikuar të gjitha konsolat në klient, skripti i dytë mori formën:

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

ndërsa efikasiteti i tij është më pak se 50%, pasi serveri e vazhdonte të konsideronte lidhjen si të hapur.

Problemet me lidhjen çuan në mendime për modernizimin e pjesës server.

Pjesa server

ÇfarĂ« Ă«shtĂ« e nevojshme:

  1. Të çaktivizosh përdoruesit inaktivë nga shërbimi.
  2. Të shohësh kush po përdor aktualisht (apo akoma mban) tokenin.
  3. Të shohësh nëse tokeni është i lidhur me kompjuterin vetë.

Këto detyra u vendos të zgjidhen përmes shërbimeve crontab dhe apache. Diskrecioni i përsëritjes së gjendjes së rezultateve të monitorimit të pikave 2 dhe 3 tregon se sistemi i skedarëve mund të vendoset në ramdrive. Në /etc/fstab u shtua rreshti

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

Në rrënjë u krijua një dosje script me skriptet: ndërrimi-montimi i token-it 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

marrja e listës së pajisjeve aktive 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

marrja e listës së IP-ve aktive (me përmirësim të mëtejshëm për të shfaqur identifikuesit e përdoruesve) usbip_client_ip.sh

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

Së fundi, crontab duket kështu:

*/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/null)

Pra, kemi: çdo 5 minuta mund të lidhet një përdorues i ri, pavarësisht se kush ka punuar me token-in. Në serverin http, përmes një simlinku, është lidhur dosja /ramdrive, në të cilën ruhen 2 skedare tekstualë, që tregojnë gjendjen e serverit usbip.

Pjesa e ardhshme: «E shëmtuara në amballazh»

Varianti II. Të kënaqim përdoruesin me ndonjë ndërfaqe më pak të frikshme. Duke u shqetësuar për faktin se përdoruesit kanë versione të ndryshme të Windows me framework-e të ndryshme dhe me të drejta të ndryshme, një qasje më pak problematike se Lazarus nuk kam gjetur (sigurisht që jam për C#, por jo në këtë rast). Ekzekutimi i skedarëve bat nga ndërfaqja mund të bëhet edhe në sfond, të minimizuar, por pa provimin e duhur, personalisht mbaj mendimin: duhet vizualizuar për të mbledhur pakënaqësitë e përdoruesve.

Shkëputja e kriptomonedhës nga përdoruesit mbi bazën e usbip

Me ndërfaqen dhe pjesën programore janë trajtuar detyra të mëposhtme:

  1. Të tregojmë nëse tokeni është i ngarkuar në këtë moment.
  2. Në fillim të ekzekutimit, konfigurimi fillestar me gjenerimin e skedarëve bat «të duhur» që realizojnë nisjen dhe ndërprerjen e seancës së punës me serverin e tokenit. Në ekzekutime të mëpasshme realizimi i modit «shërbim» nëpërmjet fjalëkalimit.
  3. Kontrolli i lidhjes me serverin, me rezultatin e të cilit bëhet anketimi për ngarkesën ose shfaqen mesazhe për probleme. Kur rikthehet lidhja, programi fillon automatikisht të funksionojë në modin e zakonshëm.

Puna me serverin WEB është realizuar përmes mjeteve të shtesës fphttpclient.

Luaj videon

këtu do të jetë Lidhja për versionin aktual të klientit

ka gjithashtu një vazhdim të mendimeve në lidhje me temën e artikullit, ashtu si dhe një entuziazëm fillestar të pjesshëm për produktin VirtualHere me karakteristikat e tij


Burimi: habr.com

Bli njĂ« hosting tĂ« besueshĂ«m pĂ«r faqet me mbrojtje DDoS, VPS VDS serverĂ« đŸ”„ Bli njĂ« hosting tĂ« besueshĂ«m pĂ«r faqet me mbrojtje DDoS, VPS VDS serverĂ« | ProHoster