Në shprehjen «ekzekutoje në sfond» fshihen dy pyetje. E para është nëse ky përdorues mund të nisë fare një proces të privilegjuar; e dyta është nëse sesioni mund të vazhdojë pa shtypur askush në një terminal. Një ampersand i shell-it nuk u përgjigjet asnjërës, dhe një skript që ruan fjalëkalimin e sudo në një ndryshore i përgjigjet keq të parës dhe e lë të dytën të paprekur. Ndajini ato dhe opsionet bëhen të lehta për t'u krahasuar.

Krahasoni tre kandidatët sipas pronësisë, jo sipas lehtësisë.

Tre mënyra për të lënë terminalin, tre pronarë të ndryshëm

Shtimi i një ampersand pas një komande i kërkon shell-it ta ekzekutojë si punë në sfond, dhe puna vazhdon t'i përkasë atij shell-i. sudo mund të pyesë edhe para se programi të nisë, dhe OpenVPN mund të pyesë më pas për një frazë kalimi çelësi ose një hyrje. Kalimi në sfond i një komande që pret input prodhon një proces që pret një terminal që askush nuk e vëzhgon. Terminali lirohet; ndërveprimi jo.

Ky është opsioni më i lirë dhe ai që dështon në mënyrën më konfuze, sepse kërkesa shfaqet në një vend që operatori e ka lënë tashmë.

sudo -b nuk është përpunues kredencialesh

sudo -b e ekzekuton komandën në sfond nga këndvështrimi i vetë sudo, që tingëllon si funksioni që mungon dhe nuk është. Sipas manualit të sudo, komandat interaktive zakonisht sillen keq në atë regjim, dhe kontrolli i punëve të shell-it nuk mund të menaxhojë proceset që krijon. E zhvendos procesin pa i dhënë një mënyrë për t'u përgjigjur pyetjeve. Asgjë në të nuk siguron një frazë kalimi për çelësin privat ose një hyrje në portë.

Nëse lidhja kërkon ndërveprim, zgjidhja është një skemë e mbështetur autentikimi jo-interaktiv, jo një mënyrë tjetër për të nisur të njëjtën kërkesë.

--daemon ndryshon programin, jo hyrjen

--daemon i kërkon vetë OpenVPN të shkëputet pas inicializimit. Manuali i versionit 2.6 vëren se ridrejtimi i syslog ndodh kur opcioni analizohet, ndonëse shkëputja ndodh më vonë, kështu që mesazhet mund të ndalojnë së shfaquri në terminal më herët se sa pritej. Heshtja pas asaj pike nuk provon asgjë për tunelin. Shtoni një --log ose --log-append të qartë që dalja të arrijë diku ku mund ta lexoni.

Regjimi demon gjithashtu e heq konsolën përgjithmonë. Një çelës privat i mbrojtur kërkon askpass në atë regjim, dhe kredencialet e futura nga konsola të kombinuara me opsione cache mund të lënë një riautentikim të mëvonshëm pa asnjë vend për të pyetur. Kontrolloni modelin e autentikimit kundrejt versionit të instaluar përpara se të supozoni që një nisje në sfond do t'i mbijetojë rinovimit të parë të çelësit.

Çfarë ofron validimi sudo dhe çfarë jo

sudo -v validon ose rifreskon kredencialin lokal të ruajtur në cache, duke u autentikuar nëse politika e kërkon. Nuk e nis OpenVPN, nuk autentikohet me portën dhe nuk garanton që një komandë e mëvonshme në skript të lejohet. sudo -n do të thotë e kundërta: mos pyet, dështo. Kjo e bën të qartë një dështim lokal autorizimi, gjë që është e dobishme, dhe nuk thotë asgjë për atë që OpenVPN do të kërkojë më vonë.

Asnjëri opsion nuk është arsye për t'u dhënë të gjithëve komanda pa fjalëkalim ose për të kaluar një fjalëkalim administratori në një skript.

Preferoni një pronar që mund të vëzhgohet

Për një tunel në pronësi të makinës, përdorni shembullin e shërbimit që mbështet shpërndarja. Një pronar i tillë ofron nisje, ndalim, status dhe regjistra, dhe i mbijeton përfundimit të sesionit tuaj. Montimi i sfondit të shell-it, demonizimit dhe një cikli rinisjeje rreth njëri-tjetrit krijon tre pronarë për një tunel dhe asnjë përgjigje të qartë se cili po punon.

Çfarëdo që të zgjidhni, verifikoni burimin për të cilin ekziston tuneli. Një kërkesë e suksesshme nisjeje është një ngjarje procesi, jo provë e një lidhjeje që punon.

Artikuj të ngjashëm