Frazėje „paleisk tai fone“ slypi du klausimai. Pirmasis – ar šis naudotojas apskritai gali paleisti privilegijuotą procesą; antrasis – ar sesija gali tęstis niekam nerašant terminale. Apvalkalo ampersandas neatsako nė į vieną, o scenarijus, saugantis sudo slaptažodį kintamajame, blogai atsako į pirmąjį ir palieka antrąjį nepaliestą. Atskirkite juos ir galimybes bus lengva palyginti.

Palyginkite tris kandidatus pagal nuosavybę, o ne pagal patogumą.

Trys būdai palikti terminalą, trys skirtingi savininkai

Pridėjus ampersandą prie komandos, apvalkalas paleidžia ją kaip fono užduotį, o užduotis vis dar priklauso tam apvalkalui. sudo gali paklausti dar prieš programai pradedant, o OpenVPN vėliau gali paklausti rakto slaptafrazės arba prisijungimo. Komandos, kuri laukia įvesties, perkėlimas į foną sukuria procesą, laukiantį terminalo, kurio niekas nestebi. Terminalas atlaisvinamas; sąveika – ne.

Tai pigiausias variantas ir tas, kuris žlunga painiausiai, nes užklausa pasirodo vietoje, kurią operatorius jau paliko.

sudo -b nėra kredencialų tvarkyklė

sudo -b vykdo komandą fone pačios sudo požiūriu, kas skamba kaip trūkstama funkcija, bet ja nėra. Pagal sudo vadovą interaktyvios komandos tame režime paprastai elgiasi netinkamai, o apvalkalo užduočių valdymas negali valdyti jo sukuriamų procesų. Jis perkelia procesą neduodamas jam būdo atsakyti į klausimus. Niekas jame neteikia privataus rakto slaptafrazės ar prisijungimo prie tinklų sietuvo.

Jei ryšiui reikia sąveikos, sprendimas yra palaikoma neinteraktyvi autentifikavimo tvarka, o ne kitas būdas paleisti tą pačią užklausą.

--daemon keičia programą, o ne prisijungimą

--daemon prašo paties OpenVPN atsiskirti po inicijavimo. 2.6 vadove pažymima, kad syslog peradresavimas įvyksta analizuojant parinktį, nors atsiskiriama vėliau, todėl pranešimai terminale gali nustoti rodytis anksčiau nei tikėtasi. Tyla po to nieko neįrodo apie tunelį. Pridėkite aiškų --log arba --log-append kad išvestis atsidurtų vietoje, kurią galite perskaityti.

Daimono režimas taip pat visam laikui pašalina konsolę. Apsaugotas privatus raktas tame režime reikalauja askpass , o konsolėje įvesti kredencialai kartu su talpyklos parinktimis gali palikti vėlesnį pakartotinį autentifikavimą be vietos paklausti. Patikrinkite autentifikavimo modelį su įdiegta versija prieš manydami, kad paleidimas fone išgyvens pirmąjį rakto atnaujinimą.

Ką sudo patvirtinimas duoda ir ko ne

sudo -v patvirtina arba atnaujina talpykloje esančius vietinius kredencialus ir autentifikuoja, jei to reikalauja politika. Jis nepaleidžia OpenVPN, nes autentifikuoja su tinklų sietuvu ir negarantuoja, kad vėlesnė scenarijaus komanda bus leidžiama. sudo -n reiškia priešingai: neklausk, o žlugk. Tai padaro vietinę autorizacijos klaidą aiškią, kas naudinga, ir nieko nesako apie tai, ko OpenVPN paprašys vėliau.

Nė vienas variantas nėra priežastis suteikti visiems komandas be slaptažodžio arba perduoti administratoriaus slaptažodį į scenarijų.

Pirmenybę teikite savininkui, kurį galima stebėti

Mašinai priklausančiam tuneliui naudokite paslaugos egzempliorių, kurį palaiko distribucija. Toks savininkas suteikia paleidimą, sustabdymą, būseną ir žurnalus, ir jis išlieka pasibaigus jūsų sesijai. Apvalkalo fono vykdymo, daimonizavimo ir paleidimo iš naujo ciklo surinkimas vienas aplink kitą sukuria tris savininkus vienam tuneliui ir nėra aiškaus atsakymo, kuris veikia.

Kad ir ką pasirinktumėte, patikrinkite išteklių, kuriam tunelis egzistuoja. Sėkminga paleidimo užklausa yra proceso įvykis, o ne veikiančio ryšio įrodymas.

Susiję straipsniai