OpenVPN tls-crypt-v2: ohun tí kọ́kọ́rọ́ alábàáṣiṣẹ́ àti blob tí a ká ṣe
Profáìlì tls-crypt-v2 ní kọ́kọ́rọ́ ìṣàkóso alábàáṣiṣẹ́ àti ẹ̀dà tí a ká tí sẹ́bà nìkan lè ṣí. Pa ohun kọ̀ọ̀kan àti ìgbésẹ̀ ìyọkúrò kọ̀ọ̀kan mọ́ ọ̀tọ̀ọ̀tọ̀.
Fífi profáìlì tls-crypt-v2 sínú tíkẹ́ẹ̀tì dà bí aláìléwu títí tí ẹ fi kà ohun tí fáìlì náà ní. Kọ́kọ́rọ́ ọ̀nà ìṣàkóso alábàáṣiṣẹ́ wà lẹ́gbẹ̀ẹ́ ẹ̀dà tí a fi ààlà pa ti kọ́kọ́rọ́ kan náà, ohun kẹta sì, kọ́kọ́rọ́ ìkárí, kì í fi sẹ́bà tí ó gbà sílẹ̀. Àwọn mẹ́ta wọ̀nyí dá ìdáhùn sí àwọn ìbéèrè ọ̀tọ̀ọ̀tọ̀ nípa ìtọ́jú, pípín àti ìyọkúrò. Pípín wọn yàtọ̀ parí ọ̀pọ̀lọpọ̀ àríyànjiyàn ètò ìṣàkóso kí wọ́n tó bẹ̀rẹ̀.
Ohun tí profáìlì ní ní tòótọ́
Ìdajì alábàáṣiṣẹ́ ti tls-crypt-v2 jẹ́ kọ́kọ́rọ́ kan pẹ̀lú ẹ̀dà tí a ká rẹ̀. Alábàáṣiṣẹ́ ń lo kọ́kọ́rọ́ tí ó ṣe kedere fún ààbò ọ̀nà ìṣàkóso, ó sì ń fi ẹ̀dà tí a ká fún sẹ́bà nígbà ìṣètò, kí sẹ́bà lè gba kọ́kọ́rọ́ kan náà padà láìfi ẹ̀dà ọ̀rọ̀ tí ó ṣe kedere pamọ́ fún alábàáṣiṣẹ́ kọ̀ọ̀kan. Kọ́kọ́rọ́ ìkárí ni ó mú ìmúpadà yẹn ṣeéṣe, ó sì jẹ́ ti ẹ̀gbẹ́ tí ó gbà nìkan. Gbogbo ohun tí ó wà nísàlẹ̀ wá láti ibi tí àwọn ohun mẹ́ta yẹn ń gbé.
| Object | Where it lives | What can open it | What a leak costs |
|---|---|---|---|
| Server wrapping key | accepting servers only | the unwrap step inside the server | every wrapped copy issued to that group becomes readable |
| Wrapped client key | inside the client profile | the server wrapping key | it names a client and exposes its metadata, but not the key inside |
| Client control key | inside the client profile, usable as-is | the client that owns it | someone can open handshakes as that client until the server refuses the key |
Ka tábìlì nípa ìtọ́jú, kì í ṣe nípa orúkọ, àwọn àbájáde yóò sì farahàn fúnra wọn. Pípàdánù kọ́kọ́rọ́ ìkárí jẹ́ ìṣẹ̀lẹ̀ gbówó lórí, nítorí kò sí ohun kan nínú profáìlì tí ó lè tún un kọ́, ìmúpadà olódodo sì ni pípín àgbègbè náà lẹ́ẹ̀kan sí i. Profáìlì tí ó tú kọ́ ni ó din owó mọ́, ṣùgbọ́n ó wọ́pọ̀ jù, nítorí àwọn ènìyàn ń fi profáìlì sínú tíkẹ́ẹ̀tì ní ìgbàgbọ́ pé ẹ̀dà tí a ká ń mú kí fáìlì náà ní ààbò fún pípín. Àwọn ìkùnà méjèèjì nílò ìdáhùn ọ̀tọ̀ọ̀tọ̀, ìdí ni pé a fi àwọn ohun náà pamọ́ lọ́tọ̀ọ̀tọ̀.
Ìdí tí ẹ̀dà tí a ká kì í ṣe ìtàn gbogbo
Profáìlì ń gbé ohun èlò alábàáṣiṣẹ́ tí ó ṣeéṣe lò pẹ̀lú ẹ̀dà rẹ̀ tí a ká, nítorí náà ààbò ẹ̀dà fún sẹ́bà kò sọ ohun kan nípa ààbò fáìlì. Blob ní ààbò fún gbígbé jáde, kò sì ní ààbò fún títẹ̀ jáde. Mẹ́tádéètà tí ó wà nínú rẹ̀ hàn fún ẹnikẹ́ni tí ó gba blob, pẹ̀lú ẹnikẹ́ni tí yóò ka tíkẹ́ẹ̀tì tí a fi í sí nígbà tí ó tẹ̀ ẹ́.
Wo profáìlì gẹ́gẹ́ bí ẹ̀rí ìdánimọ̀, kì í ṣe àpẹẹrẹ ìṣètò. Fáìlì tí ó tú kọ́ ń fún olùgbé rẹ̀ ní ìdánimọ̀ alábàáṣiṣẹ́ tí ń ṣiṣẹ́ títí tí sẹ́bà yóò fi jáwọ́ gbígba ìdánimọ̀ yẹn, ìkárí kò sì ṣe ohun kan nípa àkókò yẹn. Ṣe àtẹ̀jáde profáìlì kan fún alábàáṣiṣẹ́ kọ̀ọ̀kan kí ìyọkúrò lè wà ní ìpinnu fáìlì kan, kí o sì ṣe ẹ̀dà ààbò kọ́kọ́rọ́ ìkárí lọ́tọ̀ọ̀tọ̀ sí ìṣètò sẹ́bà tí ó mú ṣeéṣe. Kò sí ọ̀kan nínú àwọn àṣà méjèèjì tí ó tún profáìlì tí a ti bà jẹ́ ṣe, ṣùgbọ́n àwọn méjèèjì ń pinnu bí a ṣe máa dẹ́kun èyí tí ó kàn pẹ̀lú kíákíá.
Ibi tí ìkọ̀kọ̀ ìjẹ́rìí wà nínú ìfọwọ́sowọ́pọ̀
Ìkọ̀kọ̀ ìjẹ́rìí ń ṣiṣẹ́ kí a tó ṣí àkójọ TLS, iṣẹ́ rẹ̀ sì ni láti yẹ mẹ́tádéètà tí a gbé nínú blob tí a ká wò. Ó ń gba mẹ́tádéètà yẹn pẹ̀lú àyíká kékeré tí a kọ sílẹ̀, ó sì ní ohun tí ó máa fi ṣiṣẹ́ díẹ̀ ju ìkọ̀kọ̀ ìjẹ́rìí ìdánimọ̀. Láti rò pé ó ń rí orúkọ olùlò, ipò ìpàdé tàbí àwọn àyípadà àfikún ni ọ̀nà tí a sábà máa ń fi kọ ìkọ̀kọ̀ yìí ní búburú. Ka apá ìwé ìtọ́sọ́nà ìkọ̀kọ̀ fúnra rẹ̀ dípò kíkó àwọn ìrètí láti ìkọ̀kọ̀ mìíràn.
Ipò jáde rẹ̀ ni ìpinnu: àbájáde tí kì í ṣe òdo kọ alábàáṣiṣẹ́, àbájáde òdo sì jẹ́ kí ìfọwọ́sowọ́pọ̀ tẹ̀síwájú. Nítorí náà ètò gbọ́dọ̀ sọ ohun tí ó ṣẹlẹ̀ nígbà tí mẹ́tádéètà kò sí, kò lè ṣe àyẹ̀wò tàbí kò jẹ́ ìrètí. Kọ ọ̀nà ìkọ̀kọ̀ kọ́kọ́, lẹ́yìn náà pinnu àwọn iye tí ó ṣeé gbà.
tls-crypt-v2 /etc/openvpn/server/tcv2-server.key
tls-crypt-v2-verify /etc/openvpn/server/verify-client-metadata.shÀwọn ìlà méjì yẹn ni ojú ètò ìṣàkóso lorí sẹ́bà: ọ̀kan ń dárúkọ kọ́kọ́rọ́ ìkárí, èkejì ń dárúkọ ètò tí ó ń ṣe ìdájọ́ alábàáṣiṣẹ́ kọ̀ọ̀kan. Gbogbo ohun tí ó ní ìfẹ́ wà nínú skírípù, tí ó yẹ fún ìṣàkóso ẹ̀dà àti àyẹ̀wò kan náà bí òfin ìwọlé mìíràn.
Àkọsílẹ̀, ẹ̀rí àti kọ́kọ́rọ́ ìṣàkóso ń jáde lọ́tọ̀ọ̀tọ̀
Gbígba ọ̀nà ìṣàkóso ní kùtùkùtù kì í ṣe ìjẹ́rìí ìdánimọ̀, nítorí pé ó ṣẹlẹ̀ kí a tó yẹ ìdánimọ̀ TLS wò àti kí a tó gba àṣẹ àkọsílẹ̀. Dída àkọsílẹ̀ dúró, fífagilé ẹ̀rí àti kíkọ̀ kọ́kọ́rọ́ ìṣàkóso alábàáṣiṣẹ́ ni ìgbésẹ̀ mẹ́ta pẹ̀lú ọ̀nà mẹ́ta. Ìṣètò tí ó ṣe ọ̀kan nínú wọn nìkan ní àlàfo, kì í ṣe ètò. Ṣe àdéhùn mẹ́tẹ̀ẹ̀ta pẹ̀lú ìfẹ́, kí o sì kọ igbésẹ̀ wo ni ó ń lo àṣẹ wo.
Àkókò ni ìyàtọ̀ kejì. Àtòjọ gbígba tí ó yípadà kan àwọn ìfọwọ́sowọ́pọ̀ tuntun, nígbà tí àwọn ìpàdé tí a ti dá yóò máa bá a lọ títí tí ohun kan yóò fi parí wọn. Kíkà àwọn àkọsílẹ̀ nínú àtòjọ tuntun gẹ́gẹ́ bí ẹ̀rí pé àwọn ìpàdé àtijọ́ ti parí ni ọ̀nà tí alábàáṣiṣẹ́ tí a yọ kúrò fi ń wà ní ìsopọ̀ fún wákàtí púpọ̀.
Àwọn àṣẹ tí a kò ṣe àdéhùn wọn ń fi ihò méjì sílẹ̀ tí ó rọrùn láti rí nínú ìṣe. A lè da àkọsílẹ̀ dúró nígbà tí kọ́kọ́rọ́ ìṣàkóso rẹ̀ ṣì ń ṣí ìfọwọ́sowọ́pọ̀, a sì lè fagilé ẹ̀rí nígbà tí ètò mẹ́tádéètà ṣì ń gba alábàáṣiṣẹ́ kan náà. Àwọn méjèèjì jẹ́ àṣìṣe kan náà ní ibi ọ̀tọ̀ọ̀tọ̀, nítorí olùṣakoso ka àtòjọ kan gẹ́gẹ́ bí gbogbo àṣẹ. Fi àtòjọ mẹ́ta náà sẹ́gbẹ̀ẹ́ ní àkókò yíyọkúrò, àṣìṣe yóò sì hàn.
Pípèsè àti yíyọ profáìlì kúrò
Pípèsè ni ìdajì tí ó rọrùn: dá kọ́kọ́rọ́ alábàáṣiṣẹ́ ní ẹ̀gbẹ́ tí ó gbà, fi profáìlì fún olóhun kan ṣoṣo, pa ohun èlò ìkárí mọ́ ní ààlà, kí o sì ṣe ètò ìjẹ́rìí kan náà lórí gbogbo sẹ́bà tí ó gbà. Gbígba ọ̀wọ̀ ni ẹ̀yà ti gbogbo àgbègbè, kì í ṣe ti ẹ̀rọ tuntun jù. Sẹ́bà kejì tí ó ní skírípù àtijọ́ tàbí tí ó lọ́wọ́ọ́lọ́wọ́ yóò di ọ̀nà aláìlera jù nínú ìṣètò ní ìdákẹ́jẹ́ẹ́.
Yíyọkúrò nílò àwọn ìgbésẹ̀ mẹ́ta ní ìtòlẹ́sẹẹsẹ tí a mọ̀ọ́mọ̀ yàn. Kọ̀ alábàáṣiṣẹ́ nínú ìkọ̀kọ̀ ìjẹ́rìí kí àwọn ìfọwọ́sowọ́pọ̀ tuntun lè kùnà, fagilé ẹ̀rí rẹ̀ tí PKI bá ń ṣiṣẹ́, kí o sì da àkọsílẹ̀ dúró kí àṣẹ tí ó tẹ̀le má baà ní ohun tí yóò gbà. Lẹ́yìn náà parí àwọn ìpàdé tí gbígba àtijọ́ gbà, nítorí wọn kò ní ṣe àkíyèsí ọ̀kan nínú mẹ́ta. Dáná ìtòlẹ́sẹẹsẹ náà lórí alábàáṣiṣẹ́ tí o lè faradà bí ó bàjẹ́.
Mẹ́tádéètà nínú profáìlì jẹ́ ìwọlé fún ètò yẹn, kì í ṣe ẹ̀rí pé ìṣàkóso ìwọlé ti wà. Ìwé àpẹẹrẹ ìṣètò OpenVPN 2.6 ń ṣàlàyé àwọn ohun àti ààlà tí wọ́n fa, nígbà tí ìmúṣẹ wọn wà lọ́wọ́ olùṣakoso.