SSHFS prijungimai priklauso naudotojui, o ne VPN kabliukui
Teisė pakelti sąsają nėra teisė prijungti bendrinamą išteklių. Įrodykite naudotojo sesijos prijungimą rankiniu būdu, tada leiskite trigeriui paprašyti tos pačios aplinkos.
Prielaida lengvai įsisavinama ir sunkiai pastebima: VPN prisijungimo kabliukas veikia kaip root, todėl ir jo paleidžiamas prijungimas turėtų būti tvarkomas kaip root. Toks samprotavimas sukuria komandos katalogą, kurio darbalaukio naudotojas negali atidaryti, prijungimą, kuris dingsta paleidus iš naujo trigerio paslaugą, ir autentifikavimo užklausą aplinkoje, kurioje niekas negali į ją atsakyti. Kabliukas ir prijungimas yra du skirtingi darbai, ir tik vienam iš jų reikia privilegijų.
Mitas: tinklo privilegija reiškia prijungimo privilegiją
Sąsajos pakėlimas ir autentifikavimas failų serveryje yra nesusiję gebėjimai, ir paprastai jie priklauso skirtingoms paskyroms. VPN komponentui reikia pakankamai privilegijų maršrutams ir sąsajoms keisti. Failų serverio paskyrai reikia rakto arba slaptažodžio, sprendimo dėl hosto rakto ir namų katalogo, kuriame prijungiama. Antro darbo prisijungimo duomenų perdavimas pirmajai tapatybei yra būdas, kuriuo tinklo paslauga ima saugoti naudotojo raktą.
Vieno naudotojo nešiojamajame kompiuteryje tai gali būti ta pati paskyra, ir tas sutapimas nėra dizainas.
Kai privilegijuotas kabliukas atlieka prijungimą, trys dalykai tyliai sugenda. Prijungimas priklauso root, naudotojo agentas toje aplinkoje neveikia, o gedimai matomi tinklo paslaugos žurnale, o ne sesijoje, kuriai tai rūpi. Nė vieno iš jų nepataiso parinkčių pridėjimas prie prijungimo komandos. Jie pataisomi perduodant darbą sesijai, kuri valdo tapatybę.
Kodėl prijungimas priklauso prisijungusiam naudotojui
SSHFS prijungimas yra FUSE prijungimas, priklausantis jį sukūrusiam procesui, ir prieiga vadovaujasi šia nuosavybe, o ne pirminio katalogo režimu. Nuoroda rekomenduoja įprastą naudotoją su prijungimo tašku, kuris priklauso tam naudotojui, ir būtent todėl root proceso sukurtas prijungimas yra nepatogus visiems kitiems. Leidimų pakeitimas prijungimo taške to nepataiso, nes kliūtis yra pats prijungimo savininkas.
Pradėkite nuo rankinės bazinės linijos naudotojo sesijoje: esamas tuščias prijungimo taškas namų kataloge, įgaliota paskyra serveryje ir hosto raktas, jau patikrintas jūsų patvirtintu procesu. Prijunkite jį rankiniu būdu vieną kartą ir naudokite, nes tai įrodo, kad tapatybės kelias veikia prieš atsirandant bet kokiai automatizacijai. Užsirašykite, ko komandai reikėjo: paskyros pavadinimo, eksporto kelio ir privataus hosto vardo. Išsaugokite būtent šią aplinką automatizuotai versijai, nes veikiantis rankinis prijungimas yra specifikacija, kurią trigeris turi atkartoti.
sshfs [email protected]:/exports/team "$HOME/mnt/team"Kiekvieną tos eilutės pavadinimą ir kelią laikykite vietos žymekliu, įskaitant paskyrą ir eksportą. VPN paskyros slaptažodis automatiškai nėra saugyklos paskyros prisijungimo duomuo.
Ko trigeris turėtų paprašyti sesijos
Palaikoma tvarka yra užklausa iš tinklo įvykio į naudotojo sesiją, o ne pasiskolinti prisijungimo duomenys. Apribokite trigerį ta jungtimi, kurią turite omenyje, pagal pavadinimą arba UUID, o ne bet kuria sąsaja, kuri atsitiktinai vadinasi tun0. Šis vienas pakeitimas neleidžia antram profiliui, bandomajam tuneliui ar kolegos derinimo sesijai pradėti prijungimo.
Sesijos pusės veiksmas turėtų surasti numatytą esamą prijungimą ir tada atlikti vieną ribotą bandymą.
Nebandykite iš naujo kiekvienoje apklausoje ir nereikalaukite prisijungimo duomenų, kol serveris neprieinamas, nes abu paverčia laikiną sutrikimą paskyros užrakinimu. Neprižiūrima paslauga yra atskiras dizainas su savo patvirtintais prisijungimo duomenimis ir savo hosto patikrinimo tvarka savo vykdymo aplinkoje, ir ji negali tikėtis, kad kas nors atrakino grafinį agentą. Nuspręskite, kurį iš dviejų kuriate, prieš rinkdamiesi, kur gyvens kodas. Dauguma painiavos čia kyla kuriant vieną ir tikintis kito.
Atsijungimas yra failų sistemos įvykis, o ne kabliuko įvykis
Suplanuotas atsijungimas turėtų užbaigti failų operacijas ir atjungti nuo prijungusio naudotojo sesijos palaikoma komanda tai failų sistemos rūšiai. Priverstinis atskyrimas, kad kabliukas greitai grįžtų, yra būdas, kuriuo programos praranda darbinį katalogą, o naudotojai – pasitikėjimą automatizavimu. Užimtam prijungimui reikia programos lygio sprendimo, pavyzdžiui, uždaryti failą arba sustabdyti rašymą, o ne stipresnio signalo. Kabliuko išėjimo būsena nėra tai, kas optimizuojama.
fusermount3 -u "$HOME/mnt/team"Netikėtas praradimas yra kitas atvejis, ir SSHFS dokumentuoja, kad pertraukta operacija gali užblokuoti, kol transportas vėl prisijungia.
Pakartotinio prisijungimo parinktis atkuria transportą, o failai, atidaryti prieš tą pakartotinį prisijungimą, vis dar gali grąžinti klaidas ir juos reikia atidaryti iš naujo. Grįžtantis VPN nieko neįrodo apie ankstesnius deskriptorius ar neišsaugotą darbą. Pasirinkite norimą elgesį sutrikimo metu – pristabdymą, klaidos rodymą ar sąmoningą pakartotinį prijungimą – ir išbandykite jį su vienkartiniais failais, kol niekas nuo jo nepriklauso.