OpenVPN les lykilorðið af skjánum, ekki af stdin
Hvar OpenVPN les lykilorð í raun, hvers vegna skrá á stdin bregst, og þrjár studdar leiðir fyrir skriflega innskráningu á Linux og macOS.
OpenVPN biður um notandanafn og lykilorð á stjórnskjánum, og skrá sem er vísuð á staðalinntak er ekki sá skjár. Það eitt atriði skýrir skriftuna sem hangir meðan lykilorðið liggur þarna í pípunni. Biðjandinn er teiknaður af biðlinum og lesturinn fer fram af skjátækinu, svo að vísa stdin annað breytir engu. Fæðu biðilinn í gegnum eina af skjalfestu inntaksleiðum hans og sama skrifta tengist í fyrstu tilraun.
Þrjár leiðir ná yfir næstum öll tilvik, og hver þeirra bregst á sinn hátt. Veldu eftir biðjandanum sem biðillinn sýnir í raun, ekki eftir þeim valkosti sem er auðveldast að skrifta.
Biðjandinn kemur ekki frá stdin
Þegar OpenVPN þarf auðkenni opnar það stjórnskjáinn og les þar. Þess vegna lítur gagnvirk prófun vel út á meðan sama skipun undir cron eða unit-skrá stendur hreyfingarlaus með biðjandann skrifaðan í annál sem enginn fylgist með. Sumar byggingar falla til baka á staðalinntak þegar enginn skjár er til, og það ósamræmi er verra en hörð bilun því að það felur vandann þar til dreift er.
Athugaðu umhverfið áður en þú skrifar nokkurn kóða: keyrðu biðilinn undir sama notanda, með sama stdin, og tímasetningarforritið eða þjónustustjórinn mun gera. Ef biðjandinn birtist aldrei í annálnum og ferlið kemst ekkert áfram, bíður eitthvað eftir skjá sem er ekki til.
Fyrsta leiðin: auðkennisskrá með tveimur línum
Auðkenningarvalkosturinn tekur slóð, og skráin inniheldur nákvæmlega tvær línur, fyrst notandanafn svo lykilorð, og ekkert annað. Gefðu slóðina skýrt í stað þess að treysta á sjálfgefna skráarheiti, því að villt auðkennisskrá í vinnumöppunni er leiðin sem rangur reikningur lendir í notkun. Stilltu stillinguna á 0600 og gefðu eignarréttinn reikningnum sem keyrir biðilinn.
Biðillinn les skrána einu sinni við ræsingu, svo að snúa lykilorðinu þýðir að endurræsa ferlið. Það er venjulega sú hegðun sem þú vilt, og hún á heima í runbook við hlið snúningsferlisins.
Önnur leiðin: askpass fyrir lykilsetningu lykilsins
Einkalykill varinn með lykilsetningu vekur aðra, aðra biðjanda, og hún hefur sitt eigið skrástýrða svar: askpass-valkosturinn les setninguna af fyrstu línu skráar. Fyrir SSH-undirstaða göng er hliðstæðan askpass-forrit sem biðillinn keyrir, og staðalúttak þess verður leyndarmálið.
Hvorugt formið setur leyndarmálið í frumbreytulistann, og bæði láta það vera til sem skrá eða sem keyrsluskrá sem prentar það. Vörnin er skráarheimildir og eignarhald ferlis, ekki óskýrleiki. Hjálpari sem bergmálar harðkóðaðan streng er leyndarmál með auka skrefum.
Þriðja leiðin: eigin CLI gáttarviðbótarinnar
Fyrirtækjaviðbætur senda venjulega innkomu á skipanalínu sem tengist nafngreindri gátt án glugga, og það er studda leiðin. Á Linux býður GlobalProtect-viðbótin tengingu og innflutning skírteinis í gegnum CLI sitt, og gáttir sem nota skírteinisauðkenningu þurfa innflutningsskrepið áður en sjálfvirk tenging getur virkað. Veldu hana frekar en gervilega lyklahamra: þú færð raunverulega útgangsstöðu, enga ósjálfstæði frá gluggaáherslu, og hún lifir af læstan skjá.
Ef fyrsta tengingin þarf enn manneskju til að samþykkja skírteini er sjálfvirknin ekki fullgerð. Gerðu innflutninginn við uppsetninguna og skráðu hann sem forsendu.
Þegar flæðið þarf gerviskjá
Runa sem biður um lykilorð og svo einnota kóða hefur enga eina skrá til að lesa. Skjárekill eins og Expect er rétta tólið því að hann bíður eftir hverju mynstri á fætur öðru, og hann þarf ferlið ræst áður en hann getur jafnað nokkuð.
Tvær bilanir ráða. Skrifta sem bíður biðjanda án þess að ræsa biðilinn bíður að eilífu, og Tcl er ekki skel, svo skelreikningur sem skrifaður er inni í expect-blokk er ekki metinn eins og hann er lesinn. Hafðu kembifánann á meðan þú byggir mynstrin og slökktu svo á honum.
Leyndarmál sem leka, og hvar þau fela sig
Allt sem er gefið sem frumbreyta er sýnilegt í ferlalistanum, svo auðkenni eiga heima í skrá eða bak við hjálpara, aldrei á skipanalínunni. Einnota kóðar eyðast að hönnun og verða að vera framleiddir fyrir hverja tilraun. Bilanaannálar bera oft notandanafnið og stundum meira, svo afmáðu þá áður en þú sendir þá eitthvert, og haltu leyndarmálinu utan við sniðið sjálft, því að stillingarskrá með innfelldu lykilorði er límd inn í miða og geymslur. Að snúa reikningnum þýðir þá að elta hvert eintak, og það er einmitt sá kostnaður sem þetta fyrirkomulag kemur í veg fyrir.
Endurskoðaðu leiðirnar sem þú valdir og tengdu þær síðan í unit-skrána eða tímasetningarforritið sem mun í raun keyra biðilinn. Göngin lifa nákvæmlega eins lengi og það ferli.