Àṣìṣe náà tọ́ka sí ila akọkọ fáìlì .ovpn kan ó sì fa ohun kan tí ó dà bí lẹ́tà tí wọ́n dàpọ̀ níbẹ̀ tí client yẹ kí ó wà. Fáìlì náà ṣí dáadáa nínú ẹ̀rọ àtúnṣe rẹ, ila akọkọ ka client, àti ìtọ́nisọ́nà náà jẹ́ ojúlówó. Àwọn àkíyèsí méjèèjì jẹ́ òtítọ́, nítorí ẹ̀rọ àtúnṣe náà ń yọ báìtì kúrò gẹ́gẹ́ bí àmì, ṣùgbọ́n alábàáṣiṣẹ́ kò ṣe bẹ́ẹ̀. Ohun tí o ń rí ni ó fẹ́rẹ̀ẹ́ jẹ́ ìṣòro àgbékalẹ̀ kóòdù nígbà gbogbo, kì í ṣe ìṣòro ìlànà.

Àròsọ: ẹ̀rọ àtúnṣe fi fáìlì náà hàn ọ́

Ẹ̀rọ àtúnṣe ọ̀rọ̀ ń yọ báìtì padà sí àmì pẹ̀lú àgbékalẹ̀ kóòdù tí ó yàn tàbí tí ó dí. Nígbà tí ó bá dí UTF-16, fáìlì náà dà bí ẹni tí ó péye lórí ojú ẹ̀rọ nígbà tí àwọn báìtì tí ó wà nísàlẹ̀ jẹ́ orísìísí méjì, pẹ̀lú báìtì òdo kan lẹ́yìn lẹ́tà Látìn kọ̀ọ̀kan. OpenVPN ka àwọn báìtì wọ̀nyẹn gẹ́gẹ́ bí àmì, àìbáramu náà sì farahàn ní ìtọ́nisọ́nà àkọ́kọ́ tí ó gbìyànjú láti ṣàyẹ̀wò.

Nítorí náà ila tí a rí àti ila tí a fi ránṣẹ́ jẹ́ ohun méjì tí ó yàtọ̀. Pípa àwọn àmì àjèjì tí o rí kúrò jẹ́ ìyípadà nínú ìfihàn, kì í ṣe nínú àgbékalẹ̀ kóòdù, àti àyẹ̀wò tí ó tẹ̀le yóò kùnà fún ìdí kan náà pẹ̀lú ìfiránṣẹ́ tí ó yàtọ̀ díẹ̀. Ìdí ni pé lílépa àmì tí ó wà nínú àṣìṣe kò ní rí ibi kankan láé. Àwọn báìtì kò tọ́ ní orísun, gbogbo olùkà tí ó wà níwájú sì ń dí ìlàwẹ̀sí tí ó já kan náà.

Ó yẹ kí a dá ìrísí pàtó ti ìkùnà mọ̀, nítorí ó jẹ́ àyẹ̀wò kan ní ọ̀nà pàtó. Àmì kan ní ìbẹ̀rẹ̀ fáìlì gan-an, nínú profáìlì tí ó ti ṣiṣẹ́ níbi mìíràn lórí ẹ̀rọ mìíràn, jẹ́ ìbéèrè nípa ìtòlẹ́sẹẹsẹ báìtì kì í ṣe nípa ọ̀rọ̀.

Kí ni àwọn báìtì àkọ́kọ́ ń sọ gan-an

Ka àwọn báìtì dípò àwọn àmì. Àwọn àṣẹ kékeré méjì ń pinnu rẹ̀ ní ìṣẹ́jú àáyá, kò sì sí èyí tí ó nílò ṣíṣí fáìlì nínú ohun èlò tí ó lè yí i padà:

file client.ovpn
head -c 24 client.ovpn | od -An -tx1

Àpẹẹrẹ tí o ń wá ni orísìísí báìtì ìbẹ̀rẹ̀ méjì tí ọ̀rọ̀ tí gbogbo báìtì kejì rẹ̀ jẹ́ òdo tẹ̀le. FF FE fi UTF-16 little-endian hàn, FE FF fi big-endian hàn, EF BB BF sì fi UTF-8 pẹ̀lú àmì ìtòlẹ́sẹẹsẹ báìtì hàn. Fáìlì UTF-8 lasan tí kò ní àmì bẹ̀rẹ̀ tààrà pẹ̀lú báìtì lẹ́tà àkọ́kọ́.

Àwọn báìtì òdo láàárín àwọn lẹ́tà ni àmì pàtàkì. Nínú UTF-16 little-endian, ọ̀rọ̀ client gba báìtì méjìlá dípò mẹ́fà, nítorí àmì ASCII kọ̀ọ̀kan ní òdo lẹ́yìn. Ìrísí yẹn kì í ṣe ohun tí ìfihàn ẹ̀rọ àtúnṣe lè fi hàn ọ́, kì í sì ṣe ohun tí pípa báìtì méjì lè yọ kúrò.

Níbí ìtumọ̀ pàtàkì kan wà: olùkà àgbékalẹ̀ OpenVPN ń fo àmì ìtòlẹ́sẹẹsẹ báìtì UTF-8 kan ní ìbẹ̀rẹ̀ fáìlì gan-an, gẹ́gẹ́ bí olùkà àgbékalẹ̀ 2.6 ti fi hàn. Ìfaradà yẹn jẹ́ pàtó fún àmì yẹn, kò sì ṣe ohun kan fún fáìlì UTF-16 tí wọ́n fi òdo kún àwọn lẹ́tà rẹ̀. Mímú àwọn àmì méjèèjì bí ìṣòro kan ni ìlàjì kejì àròsọ náà.

Yíyípadà jẹ́ fífipamọ́ bí, kì í ṣe pípa

Fi ẹ̀dà tí a kò fi ọwọ́ kàn pamọ́ ti ìpilẹ̀ṣẹ̀ olùṣiṣẹ́ náà kí o tó ṣe ohunkóhun, kí o sì ṣiṣẹ́ lórí fáìlì ọ̀tọ̀. Profáìlì lè ní kọ́kọ́rọ́ àdáni tàbí ohun èlò àkọsílẹ̀, nítorí náà ẹ̀dà náà jẹ́ ojú ọ̀nà ìpadàbọ̀ rẹ àti ìtọ́kasí rẹ.

Lẹ́yìn náà ṣe ìyípadà àgbékalẹ̀ kóòdù gidi, yálà nípasẹ̀ àkójọ àgbékalẹ̀ kóòdù tí ó ṣe kedere ti ẹ̀rọ àtúnṣe tàbí pẹ̀lú ẹ̀rọ ìyípadà tí ó sọ àgbékalẹ̀ kóòdù ìwọlé àti ìjáde rẹ̀:

iconv -f UTF-16 -t UTF-8 client.ovpn > client-utf8.ovpn
file client-utf8.ovpn

Ṣàyẹ̀wò àbájáde dípò gbẹ́kẹ̀lé ipò ìjáde àṣẹ náà. Ìyípadà náà yẹ kí ó pa ìtọ́nisọ́nà kọ̀ọ̀kan mọ́, ó sì gbọdọ̀ pa blọ́ọ̀kì ìwé-ẹ̀rí tàbí kọ́kọ́rọ́ tí ó wà nínú mọ́ báìtì dé báìtì nínú àwọn àmì rẹ̀. Mímú dátà PEM yí ká lẹ́ẹ̀kan sí i, yíyí àwọn òpin ìlà padà nínú blọ́ọ̀kì kan tàbí títúnṣe profáìlì ní àkókò ìyípadà ń dá ìṣòro tuntun sílẹ̀ nígbà tí ó ń tún èyí àtijọ́ ṣe.

Tọ́ alábàáṣiṣẹ́ tàbí iṣẹ́ náà sí fáìlì tí a ti yí padà kí o sì wo àṣìṣe àkọ́kọ́ tí ó ń ròyìn. Bí àmì tí ó dàpọ̀ náà bá ti lọ, iṣẹ́ àgbékalẹ̀ kóòdù ti parí, ohunkóhun tí ó kùnà lẹ́yìn náà sì jẹ́ ìbéèrè mìíràn.

Ohun tí àgbékalẹ̀ kóòdù tí a túnṣe kò túnṣe

Àgbékalẹ̀ kóòdù ń pinnu bí a ṣe ń ka ọ̀rọ̀; kò sọ ohunkóhun nípa bóyá àwọn àṣàyàn náà tọ́ fún alábàáṣiṣẹ́ tí ó wà níwájú rẹ. Profáìlì tí a kó jáde fún ìmúṣẹ mìíràn lè ṣàyẹ̀wò dáadáa kí a sì ṣì kọ̀ ọ́ nítorí àṣàyàn tí ìkọ́lé tí ń ṣiṣẹ́ kò ṣe àtìlẹ́yìn, tàbí nítorí ìtọ́nisọ́nà tí àríyànjiyàn rẹ̀ túmọ̀ sí ohun mìíràn nínú alábàáṣiṣẹ́ yẹn.

Àwọn àṣìṣe tí ó tẹ̀le wọ̀nyẹn yẹ fún ìwádìí tiwọn: àkọtọ́ gbáà, ìlànà àríyànjiyàn àti ẹ̀yà tí ó gbà á. Má ṣe kà àyẹ̀wò tí ó ṣe àṣeyọrí sí profáìlì tí ó ṣe àṣeyọrí.

Jẹ́ kí ìwádìí náà wà ní àdúgbò nígbà tí o bá ń ṣe é. Àwọn ẹ̀rọ ìyípadà orí ayélujára gbangba àti àwọn ìdàwọ́lé hex tí a lẹ̀ mọ́ jẹ́ ibi tí kò dára fún fáìlì tí ó lè ní kọ́kọ́rọ́ àdáni, nítorí ìṣòro àgbékalẹ̀ kóòdù rọrùn láti túnṣe, kọ́kọ́rọ́ tí ó jáde kò rọrùn.

Àwọn àpilẹ̀kọ tó jọra