could not read Auth username from stdin lítur út eins og auðkenningarvandamál og er það ekki. OpenVPN reyndi að biðja um notandanafnið úr staðalinntaki, fann ekkert læsilegt og stöðvaði áður en það hafði samband við þjóninn. Reikningurinn getur verið algjörlega gildur; ferlið hefur einfaldlega engan að spyrja.

Þess vegna er fyrsta gagnlega skrefið að staðfesta hvað biðlarinn les, ekki að reyna tenginguna aftur eða breyta stillingum á þjónshlið. Farðu í gegnum prófanirnar hér að neðan í röð og stöðvaðu við þá fyrstu sem bregst.

Lestu villuna sem staðbundið inntakssvik

Þegar auth-user-pass birtist án skráararguments, býst biðlarinn við að spyrja. Í gagnvirku skelinni virkar sú beiðni vegna þess að ferlið á terminal. Undir systemd, cron-verki eða gámi er staðalinntak venjulega tómt og lesturinn snýr strax aftur með villunni sem þú sérð.

Skilaboðin nefna líka reitinn sem brást, notandanafn eða lykilorð, sem segir hversu langt lesturinn komst. Vantar notandanafn þýðir að ferlið gat alls ekki lesið neitt. Vantar lykilorð eftir árangursríkt notandanafn þýðir að inntaksstreyminu lauk milli lestranna tveggja, sem er dæmigert fyrir hálfskrifaða skrá eða lokaða pípu.

Staðfestu eigin sýn biðlarans áður en þú breytir einhverju öðru. Keyrðu hann í forgrunni með sömu stillingu og sama notanda og fylgstu með hvort beiðnin birtist. Ef hún birtist í skelinni þinni en ekki undir þjónustustjóranum er munurinn í inntaksuppsprettunni, ekki auðkennisgögnunum. Fljótlegur samanburður á unit-skránni og skelumhverfinu þínu sýnir venjulega hvor veitir terminal.

Gefðu þjónustunni studda uppsprettu auðkennisgagna

Studda uppsprettan fyrir ómannaða keyrslu er auðkennisskrá sem er send sem argument til auth-user-pass. Skráin er lesin sem venjulegur texti: fyrsta línan er notandanafnið, önnur er lykilorðið. Bentu á hana með algerri slóð eins og /etc/openvpn/client/creds , svo að vinnuskrá þjónustureikningsins geti ekki breytt merkingu tilskipunarinnar.

Heimildir skipta jafn miklu máli og slóðin. Skráin verður að vera læsileg af reikningnum sem keyrir biðlarann og ekki af öllum öðrum, og hún ætti að vera í eigu þjónustureikningsins eða root með hópi sem inniheldur þjónustuna. Athugaðu læsileika sem þann reikning án þess að prenta efnið.

Afstæð slóð er hljóðláta bilunargerðin. Prófíllinn getur verið í einni möppu á meðan systemd ræsir ferlið annars staðar, svo skrá sem leysist í skelinni þinni leysist ekki fyrir þjónustuna. Færðu auðkennisgögnin á fastan stað og vísaðu til þeirra algerlega. Ræstu þjónustuna svo einu sinni og staðfestu að sama slóðin sé notuð, í stað þess að treysta sýn prófílritarans.

Ef uppsetningin krefst eins notkunar kóða eða annarrar gagnvirkrar áskorunar skaltu ákveða hvort vinnuflæði biðlarans styður hana í raun án eftirlits. Skrá með kyrru lykilorði getur ekki svarað snúningskóða, og að endurtaka beiðni sem ekki er hægt að svara bætir engum upplýsingum við.

Hvers vegna script-security hjálpar ekki

script-security stýrir því hvort biðlarinn megi keyra skriftur og hversu mikið hann megi senda þeim, þar á meðal hvort hægt sé að afhenda lykilorð til skriftu gegnum umhverfisbreytu. Það segir ekkert um hvaðan notandanafnið og lykilorðið koma upphaflega.

Að hækka það á hærra stig er algeng viðbragðsreflex vegna þess að skilaboðin nefna Auth, en það breytir skriftuheimildum frekar en inntaksuppsprettunni og víkkar það sem biðlarinn megi keyra. Ef hjálparskrifta er hluti hönnunarinnar skaltu fyrst laga inntaksuppsprettuna og halda öryggisstiginu á lægsta gildi sem uppsetningin þarf.

Stjórnviðmótið er lögmætur valkostur. Framendi getur tengst því, móttekið beiðnina um auðkennisgögn og svarað með notandanafninu og lykilorðinu, þannig virka sum GUI. Ef þú notar það skaltu binda það við staðbundið vistfang, verja það með stjórnlykilorðsskrá og takmarka hverjir geta tengst, því það er stjórnrás fyrir biðlarann.

Staðfestu næsta stig eftir að biðlarinn hefur lesið skrána

Þegar biðlarinn getur lesið auðkennisgögnin er næsta bilun raunveruleg skipti við þjóninn og skilaboð hennar hafa aðra merkingu. Auðkenningarbilun á því stigi þýðir að þjónninn hafnaði reikningnum; áskorunarsvar þýðir að þjónninn vill annan þátt. Meðhöndlaðu þau sem ný vandamál frekar en sama vandamálið endurtekið.

Prófaðu alla leiðina eins og þjónustan mun keyra hana: sami reikningur, sama vinnuskrá, sama unit-umhverfi. Tenging sem virkar aðeins þegar hún er ræst úr skelinni þinni er merki um að umhverfisbreyta eða terminal sé enn hluti flæðisins.

Haltu svo leyndarmálunum þar sem þau eiga heima. Lykilorð í skipanalínuargumentum birtast í ferlitöflunni og lykilorð í kembiforritsúttaki enda í miðum. Notaðu varið skrá eða stjórnviðmótið, haltu annálum á stigi sem endurtekur ekki auðkennisgögn og skiptu um skrána þegar einhver með aðgang fer.

Gátlisti: alger auðkennisslóð, læsileg sem þjónustureikningur, engin terminal þörf, script-security látið vera á lágmarkinu, stjórnviðmót aðeins ef það er bundið og auðkennt, og svar þjónsins sem af því hlýst meðhöndlað sem sérstakur atburður.

Tengdir greinar