Pa achos OpenVPN sy’n defnyddio eich proffil PiVPN mewn gwirionedd?
Mae cymorth PiVPN yn ysgrifennu ffeiliau ac yn gorffen. Dilynwch yr uned systemd, y gadwyn ffurfweddu a lwythwyd a’r log cywir cyn ailadeiladu’r twnnel.
Mae PiVPN yn ysgrifennu cyfluniad gweinydd a phroffil cleient, ac yna’n gorffen; ni fydd byth yn y broses sy’n cario eich traffig. Felly ni ellir esbonio llawysgrifiad wedi methu, cleient yn deialu’r pen draw anghywir, na gwasanaeth sy’n dychwelyd yn wael ar ôl ailgychwyn o fwydlenni’r gosodwr. Mae’r symptomau hynny’n perthyn i ba bynnag ddemona OpenVPN sy’n rhedeg nawr, y ffurfweddiad a lwythodd y demona hwnnw mewn gwirionedd, a’r log y cyfeiriwyd ef ato. Mae pedwar gorchymyn darllen-yn-unig yn setlo hyn fel arfer, ac nid oes yr un ohonynt yn newid eich tystysgrifau na’ch allweddi.
Mae’r cymorth a’r demona yn wahanol wrthrychau
Mae’r dryswch yn hawdd i’w esbonio: mae un cyfeiriadur yn dal y ffeil a gynhyrchodd y cymorth, y ffeil y mae’r demona yn ei darllen, ac weithiau gopi hen o’r ddwy. Sgript darparu yw’r cymorth. Mae’n gosod pecynnau, yn ysgrifennu ffeiliau uned ac yn argraffu proffil cleient, ac yna daw ei waith i ben. Yr hyn sy’n weddill yw cofnod yn rheolwr y gwasanaethau a llinell orchymyn.
Ar westeiwr systemd, dechreuwch o’r uned weithredol yn hytrach na rhestr y cyfeiriadur. Mae’r enw’n dibynnu ar y pecynnu: mae delweddau Debian a Raspberry Pi OS fel arfer yn cynnig achos templed fel openvpn-server@server, tra bod gosodiadau hŷn yn defnyddio openvpn@server. Gofynnwch i’r rheolwr pa un sy’n rhedeg yn hytrach na dyfalu o enw ffeil.
systemctl list-units --type=service --all | grep -i openvpn
systemctl cat openvpn-server@server
Darllenwch ExecStart= yn yr allbwn hwnnw. Mae’n enwi’r gweithredadwy a’r opsiynau y mae’r rheolwr yn eu lansio mewn gwirionedd, gan gynnwys unrhyw --config llwybr; nid yw ffeil ffurfweddu sy’n gorwedd gerllaw ac nad yw unrhyw orchymyn yn cyfeirio ati yn rhan o’r twnnel sy’n rhedeg.
Dilynwch y gadwyn ffurfweddu a ddatryswyd gan y demona
OpenVPN nid yw’n sganio cyfeiriadur am osodiadau. Mae’n darllen y ffeil a basiwyd gyda --config, yn dilyn unrhyw config gyfarwyddyd y tu mewn iddi, ac yna’n cymhwyso opsiynau’r llinell orchymyn. Mae llawlyfr 2.6 yn disgrifio’r drefn honno, ac mae’n bwysig pan fo dwy ffeil yn anghytuno ynghylch y porth, y ddyfais neu’r seiffr.
Dympiwch y galwad effeithiol yn gyntaf, ac yna edrychwch ar y cyfarwyddiadau sy’n penderfynu hunaniaeth a chyrhaeddiad. Mae’r ddau orchymyn yn ddarllen-yn-unig ac yn ddiogel ar weinydd byw, er bod yr ail yn argraffu llwybrau na fyddech efallai eu heisiau mewn tocyn cyhoeddus.
systemctl show -p ExecStart --value openvpn-server@server
grep -E '^(config|dev|proto|port|local|log|log-append|status|ca|cert|key|tls-auth|tls-crypt)' /etc/openvpn/server/server.conf
Mae ffeil .ovpn mewn cyfeiriadur cartref yn arteffact cleient. Nid yw demona’r gweinydd byth yn ei darllen, felly nid yw golygu’r ffeil honno i drwsio methiant llawysgrifiad ar ochr y gweinydd yn cyflawni dim.
Mae cynhwysion y trap arall. Mae llinell config yn tynnu mewn ail ffeil y mae ei hopsiynau’n cael eu prosesu ar y pwynt hwnnw, felly gall cyfarwyddyd un-gwerth diweddarach ddiystyru’r hyn y mae’r prif ffeil yn ymddangos ei ddweud. Os yw’r ffeil weladwy’n edrych yn gywir ac mae’r demona’n dal i ymddwyn yn wahanol, darllenwch y ffeil gynwysedig cyn newid unrhyw beth.
Parwch y log â’r broses, nid â’r gwall rydych yn ei gofio
Mae dwy gyrchfan logio yn gyffredin, a dim ond un ohonynt yw’r journal. Gyda log-append wedi’i osod, mae’r demona yn ysgrifennu i’r ffeil honno ac nid yw’r journal yn cadw fawr ddim y tu hwnt i linellau cychwyn. Heb hynny, journalctl yw ffynhonnell y digwyddiadau.
journalctl -u openvpn-server@server -n 80 --no-pager
Cydberthnwch un ymgais cysylltu ag un ffenestr amser. Nodwch ben draw’r cleient, ac yna darllenwch ddigwyddiadau’r gweinydd o’r un eiliadau. Mae llawysgrifiad TLS nad yw byth yn cyrraedd cyfnewid tystysgrifau yn awgrymu cyrhaeddiad neu gamgymariad protocol, tra bod gwrthodiad dilysu yn dod ar ôl i baramedrau’r twnnel gael eu cytuno’n barod.
Nid yw hen gofnod log yn profi dim am broffil a lawrlwythwyd gennych bum munud yn ôl. Ail-gynhyrchwch y ffeil cleient, cysylltwch unwaith, a darllenwch yn unig y llinellau a ymddangosodd yn ystod yr ymgais honno.
Cofnodwch y methiant penodol cyntaf yn hytrach na’r un cyffredinol olaf. Mae gwall bindio, cyfnewid allanol heb ateb, gwrthodiad tystysgrif a gwrthodiad cyfrif bob un yn eich anfon i haen wahanol, ac mae terfyn amser ar y diwedd yn aml yn cuddio’r digwyddiad defnyddiol uwchben.
Nid yw ailadeiladu’r twnnel yn gam diagnostig
Y llwybr byr temtasiwn yw codi ail dwnnel, symlach: allwedd statig, dim tystysgrifau, dim dilysu ychwanegol. Bydd yn cysylltu’n aml, ac nid yw’n profi dim ond bod dau westeiwr yn gallu pasio UDP neu TCP rhyngddynt. Nid yw’n dweud dim am pam mae’r defnydd ardystiedig yn methu, ac mae’n disodli’n dawel y model diogelwch y gofynnwyd i chi ei gadw.
Mae’r un peth yn wir am analluogi tls-auth neu tls-crypt, llacio verify-x509-name, neu ollwng ail ffactor i gael statws gwyrdd. Mae twnnel sy’n cysylltu oherwydd bod dilysu wedi’i dynnu yn system wahanol, nid un wedi’i thrwsio.
Gwnewch un newid cwmpasog yn yr haen a enwyd gan y log, ailgychwynwch yr un uned, ac ailadroddwch yr un ymgais cysylltu. Mae hynny’n cadw’r gymhariaeth yn onest, ac mae’n gadael newid y gallwch ei wrthdroi.
Beth i’w drosglwyddo i’r person nesaf
Ysgrifennwch pedwar ffaith tra bo gennych nhw o hyd: fersiwn OpenVPN o openvpn --version, yr uned sy’n weithredol, y gadwyn ffurfweddu gyda’i chynhwysion, a’r ffenestr log sy’n cwmpasu un ymgais. Mae’r pedwar hynny’n troi cwyn amwys yn achos atgynhyrchadwy.
Tynnwch ddata sensitif cyn rhannu. Mae allweddi preifat, auth-user-pass ffeiliau, deunydd allwedd statig a phecynnau cleient cyflawn nid ydynt yn perthyn i docyn; mae enwau opsiynau a siâp y gadwyn fel arfer yn ddigon ar gyfer ail bâr o lygaid.
Os yw’r gadwyn yn gyfan ac mae’r log yn dal i bwyntio at y rhwydwaith, y cam nesaf yw’r llwybr rhwng cleient a gweinydd yn hytrach na gosodiad arall. Dyma’r un rhan o’r stori na fu gan y cymorth erioed.