Montimi i një dosjeje të përbashkët pasi VPN ngrihet përfshin dy identitete që ngatërrohen lehtë: komponenti që lejohet të konfigurojë rrjetin dhe llogaria që lejohet të hyjë në serverin e skedarëve. Rrallë janë të njëjta. Një grep VPN në pronësi të root është vend i keq për të nisur montimin SSHFS të një përdoruesi desktopi, sepse nuk ka as agjentin e përdoruesit as pronësinë e synuar të montimit. Vendosja e saktë e pronësisë së pari e bën aktivizuesin të thjeshtë.

Dy identitete, dy leje të veçanta

Klienti VPN ka nevojë për privilegje për të ndryshuar rrugët dhe ndërfaqet. Montimi SSHFS ka nevojë për një identitet SSH që serveri i skedarëve pranon dhe për një montim FUSE në pronësi të llogarisë që do të lexojë skedarët. Një skript që ekzekutohet si root plotëson kërkesën e parë dhe thyen në heshtje të dytën.

Montimi si root i lë skedarët jashtë sesionit të desktopit dhe ndoshta pa akses në agjentin që mban çelësin e përdoruesit. Montimi ekziston, përdoruesi nuk mund të shkruajë përmes tij, dhe dështimi duket si problem lejeje në anën e serverit. Ai diagnozë i gabuar kushton një pasdite dhe një tiketë për ekipin e ruajtjes.

Vendosni se cila llogari zotëron montimin përpara se të shkruani ndonjë automatizim, sepse kjo zgjedhje përcakton ku jeton aktivizuesi dhe cilat kredenciale mund të arrijë.

Së pari vendosni me dorë një montim në pronësi të përdoruesit

Filloni nga një përdorues i identifikuar me një pikë montimi bosh, një llogari SSH të autorizuar dhe një rrugë funksionale drejt serverit përmes tunelit. Montimi manual vendos bazën që çdo automatizim duhet të riprodhojë.

mkdir -p "$HOME/mnt/team"
sshfs [email protected]:/exports/team "$HOME/mnt/team"
mount | grep sshfs

Emrat janë shembuj, prandaj zëvendësoni hostin dhe rrugën e eksportimit që serveri juaj ofron vërtet. Verifikoni çelësin e hostit përmes procesit të miratuar në atë lidhje të parë. Vini re se fjalëkalimi i llogarisë VPN nuk është automatikisht kredenciali i llogarisë së ruajtjes, dhe kjo është një shkak i zakonshëm i përpjekjeve të dështuara.

Ekzekutoni atë si përdorues normal me një pikë montimi në pronësi të atij përdoruesi. Si parazgjedhje vetëm llogaria që monton arrin skedarët, dhe allow_other zgjeron atë kufi për çdo përdorues lokal. Ky është një zgjerim i qëllimshëm i aksesit, jo një zgjidhje anashkaluese për automatizimin.

Lëreni aktivizuesin të veprojë në të njëjtin kontekst sesioni

Lëreni integrimin e mbështetur të ngjarjeve VPN të kërkojë ekzekutimin e një veprimi të sesionit të përdoruesit, në vend që të supozohet se një callback i privilegjuar mund të marrë hua një kredencial desktopi. Kufizoni aktivizuesin në identifikuesin e synuar të lidhjes dhe jo në çdo ndërfaqe që quhet rastësisht tun0. Një rregull shpërndarësi që përputhet me gjënë e gabuar aktivizohet në çdo ndryshim të rrjetit, përfshirë ato që nuk kanë asnjë lidhje me këtë montim.

Veprimi duhet të konfirmojë emrin e pritur të hostit, të vërë re një montim ekzistues dhe të bëjë një përpjekje të kufizuar. Një cikli sondazhi që nis një proces të ri SSHFS çdo disa sekonda, ose përsërit një kërkesë kredenciali ndërsa serveri është jashtë, e kthen një ndërprerje të shkurtër në një grumbull procesesh të bllokuara. Kufizoni përpjekjen me një afat kohor dhe një ritentim të vetëm.

nmcli -g UUID connection show --active
systemctl --user list-units 'sshfs*'
pgrep -a sshfs

Komanda e parë jep identifikuesin e lidhjes që shpërndarësi duhet të përputhë. Dy të tjerat tregojnë nëse një përpjekje është tashmë në rrjedhë, dhe ky është kontrolli që parandalon dublikatat.

Një shërbim pa mbikëqyrje ka nevojë për kredencialet e veta të miratuara dhe verifikimin e vet të hostit në kontekstin e vet të ekzekutimit. Ai nuk mund të supozojë se një agjent grafik është i shkyçur, dhe nuk duhet të përpiqet të shkyçë një.

Planifikoni shkëputjen përpara se të forcioni pastrimin

Për një shkëputje të planifikuar, përfundoni operacionet e skedarëve dhe çmontoni nga rrjedha e punës e vetë përdoruesit që monton. Synoni pikën e montimit dhe jo procesin, dhe konfirmoni rezultatin përpara se të raportoni sukses.

fusermount3 -u "$HOME/mnt/team"
mountpoint "$HOME/mnt/team"

Çmontoni vetëm montimin që krijoi kjo rrjedhë pune. Nëse është i zënë, ky është një vendim i aplikacionit: një shkëputje e detyruar që ekziston për ta bërë një grep të kthejë sukses fsheh humbjen e të dhënave në vend që ta parandalojë.

Humbja e papritur sillet ndryshe. SSHFS dokumenton se një ndërprerje rrjeti mund të bllokojë një operacion të sistemit të skedarëve, dhe opsioni reconnect rikthen transportin pa rikthyer dorezat: një skedar i hapur përpara rilidhjes mund të dështojë në shkrimin tjetër, dhe një shkrim i ndërprerë nuk ruhet. Ky dallim ka më shumë rëndësi për redaktorët që mbajnë një skedar të hapur për orë të tëra. Planifikoni një hap rihapjeje në vend që të supozoni rikuperim.

Provoni sjelljen me skedarë të përdorshëm një herë përpara se të mbështeteni tek ajo. Një dosje që shfaqet përsëri pasi tuneli kthehet nuk provon se dorezat e mëparshme ose puna e paruajtur mbijetuan.

Artikuj të ngjashëm