Ikeċċi klijent OpenVPN wieħed: kill, deny jew tirrevoka ċertifikat?
Tliet azzjonijiet OpenVPN ineħħu klijent, imma kull waħda tagħlaq xi ħaġa differenti: sessjoni ħajja, prova waħda ta' dħul, jew id-dritt li terġa' tqabbad. Agħżel skont l-identità.
Għandek common name u indirizz fin-noti tiegħek, u tliet kmandi li kollha jidhru li jneħħu klijent. Waħda biss tagħmel dak li trid, u l-għażla tiddependi fuq jekk għandekx bżonn ittemm is-sessjoni li qed taħdem issa, tirrifjuta d-dħul li jmiss, jew tieħu d-dritt li tqabbad għal kollox. Aqra l-identità li fil-fatt għandek qabel ma tmiss xejn, għax pool OpenVPN jagħti l-istess indirizz tat-tunnel lil sessjoni oħra aktar tard.
Liema identità fil-fatt għandek
Fajl tal-istat tal-verżjoni 3 huwa l-punt tat-tluq tas-soltu. Is-sezzjoni CLIENT_LIST iġġorr il-common name, l-indirizz veru, il-kontaturi tal-bytes u l-ħin tal-konnessjoni; is-sezzjoni ROUTING TABLE tqabbel indirizz virtwali ma' common name bi timbru tal-ħin tar-riferenza l-aħħar. Il-common name huwa l-identità stabbli. L-indirizz virtwali huwa assenjazzjoni, u l-indirizz veru wara NAT jista' jinbidel bejn sessjonijiet mingħajr ma jinbidel xejn fuq is-server.
L-interface tal-ġestjoni turi veduta simili permezz tal-kmand status tagħha u żżid ID tal-klijent għal kull sessjoni. Dak l-ID huwa dak li jistenna client-kill, u mhuwiex l-indirizz tat-tunnel. Jekk għandek bżonn tkun taf liema common name rċieva liema indirizz fil-ħin tal-konnessjoni, l-ambjent ta' skript client-connect għandu t-tnejn, flimkien mal-indirizz ta' barra fiduċjuż, imma dak l-iskript jaħdem bħala utent OpenVPN u jeħtieġ mogħdija ta' log li tista' tinkiteb.
| What you hold | Where it came from | What it can act on |
|---|---|---|
| Common name | CLIENT_LIST, or the auth hook | kill, and credential revocation |
| Client ID | status on the management socket | client-kill, that one session |
| Tunnel address | ROUTING TABLE, client-connect environment | Nothing durable, the address is recycled |
Oqtol issa, irrifjuta fid-dħul, irrevoka għal dejjem
Iż-żewġ kmandi tat-tneħħija fl-interface tal-ġestjoni huma azzjonijiet tas-sessjoni. kill jieħu common name jew indirizz veru u port; client-kill jieħu l-ID tal-klijent u jtemm dik l-istanza minnufih. L-ebda waħda mhija blokk: klijent imkeċċi b'ċertifikat u password validi jerġa' jqabbad fi ftit sekondi, li huwa tajjeb meta tkun qed tirriċikla peer tat-test u inutli meta laptop ikun insteraq.
client-deny huwa tip differenti ta' deċiżjoni. Normalment jinħareġ minn hook ta' awtentikazzjoni jew client-connect u jirrifjuta s-sessjoni b'raġuni, għalhekk jaqbel ma' politika li tirrifjuta dħul aktar milli waħda li tinterrompi konnessjoni. Id-dokumentazzjoni twissi wkoll li rifjut maħruġ waqt negozjar mill-ġdid TLS jinvalida ċ-ċavetta nnegozjata mill-ġdid waqt li s-sessjoni eżistenti tista' tkompli sakemm tagħlaq it-tieqa ta' transizzjoni. Jekk il-ħtieġa hija li l-klijent issa telaq, it-tweġiba dokumentata hija client-kill.
It-tneħħija dejjiema tinsab taħt dan kollu. Irrevoka ċ-ċertifikat u kun żgur li crl-verify jipponta lejn lista li s-server fil-fatt jerġa' jgħabbi, iddiżattiva l-fajl tal-konfigurazzjoni speċifiku għall-klijent fid-direttorju ccd, jew iddiżattiva l-kont f'kwalunkwe backend li jistaqsi l-hook tal-awtentikazzjoni. Anke r-revoka mhijiex immedjata: bl-issettjar default ta' reneg-sec sessjoni stabbilita tista' tkompli sakemm terġa' tinnegozja, għalhekk l-azzjoni tas-sessjoni u l-azzjoni tal-kredenzjali jikkomplementaw lil xulxin, mhumiex alternattivi.
Is-socket tal-ġestjoni hija ħielsa?
L-interface tal-ġestjoni sservi klijent wieħed kull darba. Jekk GUI jew daemon ta' monitoraġġ diġà jżomm il-konnessjoni, l-iskript tiegħek ma jistax jingħaqad ħdejh, u skont il-klijent tista' tkeċċi dak eżistenti minflok tfalli b'mod nadif. Il-password tiegħu tivvjaġġa f'tekst ċar fuq dik is-socket, għalhekk tappartjeni lil indirizz lokali jew socket unix, qatt lil interface pubblika.
Meta ma tistax tieħu s-socket, għad għandek għażliet, u kollha kemm huma aktar bil-mod. Ħalli s-sessjoni tal-GUI l-ewwel jekk tikkontrollaha, jew aċċetta t-triq tas-saff tal-kredenzjali u stenna n-negozjar mill-ġdid li jmiss. Dak li m'għandekx tagħmel huwa li terġa' tistartja s-servizz biex tneħħi klijent wieħed, għax dan itemm ukoll kull sessjoni oħra u jeqred l-evidenza tal-fajl tal-istat għal din is-sessjoni.
Is-sekwenza li nmexxi fuq server ħaj
Qabbad, aqra l-istat attwali, aġixxi fuq l-ID li għadek kif qrajt, imbagħad aqraha mill-ġdid. Valuri kopjati minn dokument huma l-aktar mod komuni biex toqtol il-persuna ħażina.
status # note the client ID and common name
client-kill 3 # end that session now
kill Test-Client # alternative: by common name
status # confirm the session is goneL-isem u n-numru hawn fuq huma placeholders, u l-ID jintużaw mill-ġdid wara li klijenti oħra jaqtgħu. Ikkonferma li r-ringiela mhijiex preżenti qabel ma tikteb xi ħaġa bħala magħmula, u ċċekkja li l-għadd ta' klijenti konnessi mxiet b'wieħed u mhux b'ħafna.
Ikkonferma li baqa' 'l bogħod
Irreġistra l-common name, l-indirizz tat-tunnel, l-indirizz ta' barra u l-minuta tat-tneħħija. Jekk l-istess common name jerġa' jidher minuta wara, l-azzjoni tas-sessjoni ħadmet u s-saff tal-kredenzjali ma ħadamx, li hija tiswija kompletament differenti minn kmand li qatt ma daħal fis-seħħ.
Imbagħad ittestja mill-ġenb tal-klijent. Ċertifikat revokat għandu jfalli fl-handshake li jmiss; jekk għadu jqabbad, is-CRL qed jinqara xejn, u dik hija l-iskoperta li tajjeb li tiġi rrappurtata. Agħżel l-azzjoni skont dak li għandek bżonn ittemm, ikkonferma b'tieni status, u sewwi s-saff tal-kredenzjali meta t-tweġiba trid iddum aktar mis-sessjoni.