Ìwé-ẹ̀rí VPN tí a ti fagi lé ṣì ń sopọ̀? Ṣàyẹ̀wò ìmúṣẹ CRL
Àwọn ìwé-ẹ̀rí tí a fagi lé ṣì ń sopọ̀ nígbà tí CRL kò bá dé ọ̀dọ̀ olùṣàyẹ̀wò. Ṣàyẹ̀wò ní ìtẹ̀sí yìí olùgbéjáde, nọ́mbà ìtẹ̀lentẹ̀lẹ tí a gbé wọlé, ìhùwàsí àtúnwọlé àti àwọn ìpàdé tí ń ṣiṣẹ́.
O fagi lé ìwé-ẹ̀rí náà, o ṣẹ̀dá àkọsílẹ̀ tuntun, àmọ́ profáìlì àtijọ́ ṣì ń gbé tunnel kan ró. Fífi fagi lé kò já: CRL jẹ́ gbólóhùn tí a fọwọ́ sí pé nọ́mbà ìtẹ̀lentẹ̀lẹ kò tún wúlò, ó sì ń yí àwọn àǹfààní padà nígbà tí ẹ̀yà tí ń parí TLS bá gbé e wọlé, fún olùgbéjáde tí ó tọ́, kí ó tó ṣe ìpinnu ìtẹ́wọ́gbà. Ibẹ̀ ni ọ̀pọ̀lọpọ̀ irú àwọn ọ̀ràn báyìí wà, ìdí nìyẹn tí fífi fagi lé àti kíkọ̀ yàtọ̀ síra.
Lọ gbà àwọn ìgbésẹ̀ àyẹ̀wò márùn-ún tí ó wà nísàlẹ̀ ní ìtẹ̀sí, kí o sì dúró ní èyí àkọ́kọ́ tí kò bá ṣe, nítorí ẹ̀kọ̀ọ̀kan tí ń bọ̀ ń gbà pé àwọn ti ṣáájú tọ̀nà.
Ṣàyẹ̀wò ẹ̀yà wo ni ó ń ṣe ìpinnu ìtẹ́wọ́gbà
Dárúkọ ìlànà tí ń ṣàyẹ̀wò ìwé-ẹ̀rí aládàáni, nítorí ìlànà yẹn nìkan ló lè mú àkọsílẹ̀ ṣẹ. Ní orí àpótí OpenVPN ìgbà ni daemon fúnra rẹ̀, tí a ṣètò pẹ̀lú crl-verify. Nínú ocserv ó jẹ́ ìlà crl nínú ocserv.conf. Nínú strongSwan àwọn ìwọlé ni CRL tí a gbé wọlé pẹ̀lú strictcrlpolicy. Proxy tàbí ẹ̀rọ tí ń parí TLS níwájú VPN lè jẹ́ olùṣàyẹ̀wò gidi pẹ̀lú, àti bí ó bá rí bẹ́ẹ̀, daemon tí ó wà lẹ́yìn rẹ̀ kò rí ìwé-ẹ̀rí aládàáni rárá.
WireGuard wà nínú ẹ̀ka mìíràn. Kò ní ìwé-ẹ̀rí, kò sì ní àkọsílẹ̀ fífi fagi lé; a gba peer pẹ̀lú kọ́kọ́rọ́ gbangba rẹ̀ nínú ìṣètò, nítorí náà pípa àǹfààní dúró túmọ̀ sí yíyọ kọ́kọ́rọ́ yẹn kúrò. Bí o bá ń wá CRL nínú ìfilélẹ̀ tí ó ní WireGuard nìkan, ẹrọ yẹn kò sí níbẹ̀.
Ṣọ́ra fún tẹ́ńpìlì ní ẹ̀gbẹ́ aládàáni pẹ̀lú. Aládàáni tí ó kọ̀ láti sopọ̀ nítorí kò fẹ́ràn ìwé-ẹ̀rí àpótí ń mú ìdè àpótí ṣẹ, kì í fagi lé àmì-ìdánimọ̀ tirẹ̀. Ìwé-ẹ̀rí olùmúlò ni a ń fagi lé níbẹ̀ tí a ti ń ṣàyẹ̀wò ìwé-ẹ̀rí olùmúlò yẹn, àti pé ìyẹn fẹ́rẹ̀ẹ́ jẹ́ ẹ̀gbẹ́ àpótí nígbà gbogbo.
Ṣàyẹ̀wò fún olùgbéjáde wo ni a fi àkọsílẹ̀ náà fọwọ́ sí
CRL ní ààlà sí CA kan tí ń gbé jáde. Pẹ̀lú gbòǹgbò àti agbẹ̀gẹ̀, àwọn ìwé-ẹ̀rí ewé wá láti ọ̀dọ̀ agbẹ̀gẹ̀, nítorí náà àkọsílẹ̀ tí ó ṣe pàtàkì ni CRL agbẹ̀gẹ̀; àkọsílẹ̀ gbòǹgbò kò sọ nǹkan kan nípa àwọn ewé yẹn. Olùṣàyẹ̀wò tí a tọ́ sí fáìlì tí kò tọ́ yóò ṣàyẹ̀wò rẹ̀ pẹ̀lú ìdùnnú, kò ní rí àkọsílẹ̀ tí ó bá mu, yóò sì gba gbogbo rẹ̀.
Jẹ́rìí ìbámu kí o tó fi ọwọ́ kan daemon. Olùgbéjáde lórí ìwé-ẹ̀rí gbọdọ̀ bá subject àkọsílẹ̀ mu:
openssl x509 -in client.crt -noout -issuer -serial
openssl crl -in intermediate.crl -noout -issuer -lastupdate -nextupdateNígbà tí àwọn méjèèjì bá wá láti CA kan, nọ́mbà ìtẹ̀lentẹ̀lẹ tí a tẹ̀ fún ìwé-ẹ̀rí ni iye tí ó gbọdọ̀ farahàn nínú àkọsílẹ̀. Bí wọn kò bá bá mu, o di CRL tí kò tọ́ tàbí ẹ̀dà tí kò tọ́ rẹ̀ mú.
Wíwúlò wà nínú àyẹ̀wò kan náà. nextUpdate nínú ìgbà tí ó ti kọjá ń sọ àkọsílẹ̀ di àtijọ́, olùṣàyẹ̀wò tí ó kùnà ní pípadé yóò kọ̀ gbogbo aládàáni dípò ẹni tí a fagi lé nìkan.
Ṣàyẹ̀wò pé nọ́mbà ìtẹ̀lentẹ̀lẹ wà nínú ẹ̀dà tí daemon gbé wọlé
Fífi fagi lé ń kọ àkọsílẹ̀ sínú ibi-ìpamọ́ CA, àtúnṣe ń kọ fáìlì tuntun. Kò sí èyí tí ó dé ọ̀dọ̀ daemon tí ń ṣiṣẹ́ tí ó gbé ẹ̀dà àtijọ́ wọlé nígbà ìbẹ̀rẹ̀. Yọ àkọsílẹ̀ jáde kí o sì wá nọ́mbà ìtẹ̀lentẹ̀lẹ:
openssl crl -in intermediate.crl -noout -text | grep -i -A2 'Serial Number'
openssl ca -revoke client.crt
openssl ca -gencrl -out intermediate.crlLẹ́yìn náà ṣàyẹ̀wò bí ìmúṣe rẹ ṣe ń gba fáìlì náà. OpenVPN ń ka ipa tí a fún crl-verify ní ẹ̀ẹ̀kan nígbà ìbẹ̀rẹ̀, nítorí náà àkọsílẹ̀ tuntun nílò àtúnbẹ̀rẹ̀ tàbí àmì àtúnbẹ̀rẹ̀; àṣàyàn kan náà tí a tọ́ sí folda ni a ń kà lẹ́ẹ̀kan sí i ní gbogbo ìsopọ̀, ìdí nìyẹn tí ipò folda fi wà. strongSwan gbọdọ̀ tún àwọn àmì-ìdánimọ̀ rẹ̀ gbé wọlé, fún àpẹẹrẹ pẹ̀lú swanctl --load-creds. Fáìlì tí ó tọ́ lórí disiki àti bí olùṣàyẹ̀wò ṣe ń lò ó jẹ́ òtítọ́ méjì tí ó yàtọ̀.
Ṣàyẹ̀wò ìlànà fún àkọsílẹ̀ tí ó sọnù tàbí tí ó ti pẹ̀
Èyí ni ìpinnu tí ọ̀pọ̀lọpọ̀ ìfilélẹ̀ kì í ṣe ní gbangba rárá, ó sì ń pinnu bóyá fífi fagi lé ń dáàbò bò ọ́ tàbí ń tì gbogbo ènìyàn mọ́ òde. Fail-closed túmọ̀ sí pé láìsí ìsọfúnni fífi fagi lé tí ó ṣeéṣe, ìkọ̀ yóò ṣẹlẹ̀; fail-open túmọ̀ sí pé olùṣàyẹ̀wò ń tẹ̀síwájú láìsí rẹ̀. strongSwan ń fi àṣàyàn hàn gẹ́gẹ́ bí strictcrlpolicy. OpenVPN pẹ̀lú crl-verify kọ̀ láti bẹ̀rẹ̀ lórí fáìlì tí kò lè kà tàbí ṣàyẹ̀wò, àkọsílẹ̀ tí ó ti pẹ̀ yóò sì farahàn gẹ́gẹ́ bí àṣìṣe àyẹ̀wò TLS nípa CRL tí ó ti pẹ̀ dípò gbígba ní ìdákẹ́jẹ́ẹ́.
| State of the revocation data | Fail-closed result | Fail-open result |
|---|---|---|
| List missing or unreadable | Verification fails, so expect an outage | Every client connects, including the revoked one |
List past nextUpdate | Validation errors until a fresh list is deployed | Old status is trusted indefinitely |
| Revoked serial present in the loaded list | Handshake rejected for that certificate | Handshake rejected for that certificate |
Ọ̀nà yòówù tí o bá yàn, ìmúra-ẹni-lójú ṣe pàtàkì ju àṣàyàn lọ: iṣẹ́ tí ń tún CRL ṣe kí nextUpdate tó dé, àti ìkìlọ̀ nígbà tí ẹ̀dà tí a fi sílẹ̀ bá ń gbó, ń dáàbò bo ìlànà méjèèjì kí wọ́n má bàa di ìṣẹ̀lẹ̀. Àyẹ̀wò orí ayélujára pẹ̀lú OCSP ń gbé ìtuntun sí olùdáhùn, ṣùgbọ́n ìlànà kan náà ni ó wà, nítorí olùṣàyẹ̀wò tí a kò ṣètò láti ṣàyẹ̀wò ìdáhùn kò yí nǹkan kan padà.
Ṣàyẹ̀wò ìpàdé tí ń ṣiṣẹ́, lẹ́yìn náà àwọn ẹ̀dà kọ́kọ́rọ́
A ń ṣàyẹ̀wò fífi fagi lé nígbà àyẹ̀wò ìwé-ẹ̀rí, èyí tí ń ṣẹlẹ̀ nígbà ìsopọ̀ àti nígbà ìdúnàádúrà tuntun. Ìpàdé tí ó ti wà yóò ń lọ títí yóò fi ṣe ìdúnàádúrà tuntun, àti ìpín àkọ́kọ́ OpenVPN ni ẹ̀ẹ̀kan ní wákàtí pẹ̀lú reneg-sec 3600. Bí ẹni náà bá gbọdọ̀ jáde kúrò nínú nẹ́tíwọ́kì báyìí, parí ìpàdé náà pẹ̀lú ìgbéjáde àkọsílẹ̀, lẹ́yìn náà jẹ́rìí pé a kọ̀ ìsopọ̀tún.
Ya àmì-ìdánimọ̀ kúrò nínú àwọn ẹ̀dà rẹ̀. Pípa profáìlì rẹ́ lórí kọ̀m̀pútà gbé-n-dé kan kò dá àbò bo ẹ̀dà mìíràn ti kọ́kọ́rọ́ àdáni kan náà láti ṣe ìjẹ́rìí; fífi fagi lé ni ó ń sọ gbogbo ẹ̀dà di aláìlèṣeéṣe, àti nígbà tí àwọn àyẹ̀wò àtẹ̀yìnwá bá ṣe nìkan. Fún ẹ̀rọ àrọ́po ẹ̀dà ìwé-ẹ̀rí tirẹ̀ kí a lè fagi lé ọ̀kan láìfi ọwọ́ kan èkejì.
Kí o tó sọ pé ó ti parí: a ti dárúkọ ẹ̀yà tí ń ṣàyẹ̀wò, olùgbéjáde àkọsílẹ̀ bá olùgbéjáde ewé mu, nọ́mbà ìtẹ̀lentẹ̀lẹ tí a fagi lé wà nínú ẹ̀dà tí daemon gbé wọlé níti gidi, ìlànà fún àwọn àkọsílẹ̀ tí ó sọnù tàbí tí ó ti pẹ̀ wà ní ìmọ̀ọ́nú àti ní àbójútó, àti pé a parí ìpàdé tí ń ṣiṣẹ́ dípò kí a dúró dè é. Àwọn ọ̀nà ìkọ̀wé tí ó wà lẹ́yìn gbogbo èyí ni a ṣàlàyé nínú RFC 5280.