O fi àṣẹ ìlà kan ti olùfisín náà pamọ́ láti inú ẹ̀kọ́ kan, tẹ Enter, kí o sì gba curl: (77). Ìfiránṣẹ́ náà dárúkọ àwọn ibi ìjẹ́rìí ẹ̀rí, nítorí náà ìmọ̀lára ni kí o rò pé ẹ̀rí olùpèsè VPN ti bàjẹ́ kí o sì wá àsíà tí ń fò ìjẹ́rìí kọjá. Ìkàsí yẹn kò tọ́, àti ṣíṣe ní ìbámu pẹ̀lú rẹ̀ yí ìṣòro fáìlì ìbílẹ̀ padà di ìpinnu ààbò. Ẹ jẹ́ kí a padà lọ láti ìbẹ̀rẹ̀.

Ìgbésẹ̀ 1: kà ohun tí nọ́mbà yìí túmọ̀ sí

Àṣìṣe 77 kan ìwọlé CA ìbílẹ̀: curl kò lè kà tàbí gbé ẹ̀rọ ẹ̀rí tí wọ́n sọ pé kí ó gbẹ́kẹ̀ lé. Àṣìṣe 60 ni ti ẹ̀gbẹ́ kejì, nígbà tí ẹ̀wọ̀n olùpèsè kò bá ṣe ìjẹ́rìí. Wọ́n máa ń yọ jáde lẹ́gbẹ̀ẹ́ ara wọn nínú àwọn ẹ̀kọ́, orí kò sì yẹn náà ni ìtumọ̀ wọn.

Bí ìjáde rẹ bá sọ 77, olùpèsè kò tíì jẹ́ ìṣòro rí. Ẹ̀rọ ìbánisọ̀rọ̀ kò lè ṣí fáìlì tí ó fẹ́ lò fún àyẹ̀wò, ìyẹn sì jẹ́ ìṣòro ipa-ọ̀nà, àṣẹ tàbí pípo lórí ẹ̀rọ rẹ.

Ìgbésẹ̀ 2: kà àṣẹ tí o dà

Àwọn àṣẹ tí a dà máa ń fi lẹ́tà pamọ́. Lẹ́tà kékeré -l ni --list-only, ó kan àkọsílẹ̀ àwọn ìlànà ìbánisọ̀rọ̀. Lẹ́tà ńlá -L ni --location, ó ń tẹ̀lé ìtúnjáde HTTP. Wọn kì í ṣe ọ̀nà kíkọ mìíràn, ẹ̀kọ́ tí ó kọ ọ̀kan tí ó sì ń ṣàpèjúwe èkejì máa ń rán àwọn ènìyàn lọ sí ipa-ọ̀nà ìtúnjáde tí a kò gbèrò rí.

Títẹ̀lé ìtúnjáde kò tún ipa-ọ̀nà ilé ìgbẹ́kẹ̀lé ṣe, kò sì fi hàn pé olùgbàlejò ìkẹyìn ni olùtẹ̀jáde tí o ní lọ́kàn. Bí àṣẹ náà bá wá láti ìfiránṣẹ́ fọ́rọ́mù, tún un kọ láti inú àwọn ìtọ́ni iṣẹ́ náà fúnra rẹ̀ dípò gbẹ́kẹ̀ lé ohun tí a lẹ̀ mọ́.

Ìgbésẹ̀ 3: ṣàwárí ìwọlé CA wo ni ìkọ́ náà ń lò

Bẹ̀rẹ̀ pẹ̀lú dídá binary mọ̀, nítorí ìdáhùn dá lórí bí a ṣe kóò rẹ̀ jọ:

curl --version

Kọ ẹ̀dà àti TLS backend sílẹ̀. Ìkọ́ tí ó ń lò ilé ìgbẹ́kẹ̀lé àbínibí ń ka ilé ẹ̀rọ náà nípasẹ̀ ilé ìkàwé TLS, nígbà tí ìkọ́ tí ó tọ́ka sí àkópọ̀ ń ka fáìlì. --cacert tí ó ṣe kedere, ètò CURL_CA_BUNDLE tàbí ìbòrí shell lè borí èyíkéyìí nínú àwọn méjèèjì, nítorí náà ìfisín láti àkópọ̀ lè má tẹ̀ fáìlì tí ń kùnà ní ti gidi.

Fún ilé ìgbẹ́kẹ̀lé tí ó dá lórí fáìlì, yẹ̀wò ohun mẹ́ta ní tẹ̀léra: ipa-ọ̀nà wà, àkọsílẹ̀ tí ń pè àṣẹ lè kà Á, àti pé ó ní ẹ̀rọ CA tí o retí. Àkópọ̀ tí àṣẹ rẹ̀ kò tọ́ máa ń kùnà bákan náà pẹ̀lú èyí tí kò sí, àwọn méjèèjì sì ń kùnà ṣáájú ìjíròrò nẹ́tíwọ́kì èyíkéyìí nípa olùpèsè.

Ìgbésẹ̀ 4: tún ìwọlé ṣe, kì í ṣe ìjẹ́rìí

Dá ètò ìgbẹ́kẹ̀lé tí a ṣe àtìlẹ́yìn fún padà nípasẹ̀ ẹni tí ó ní i: àkópọ̀ ìpín, ìṣàkóso ètò rẹ tàbí àyípadà àyíká tí a kọ sílẹ̀. Èrò ni ìwọlé CA tí ó ṣeé kà àti tí ó tọ́ fún binary yẹn.

Má ṣe yí URL padà sí HTTP, má ṣe fi --insecure kún un, kí o sì má gbẹ́kẹ̀ lé ẹ̀rí tí a dà láti inú ìgbàsílẹ̀ tí a kò ṣàlàyé. Ọ̀kọ̀ọ̀kan àwọn àyípadà yẹn máa ń yí ohun tí o ṣetán láti gbà padà dípò títún ohun tí curl kò lè kà ṣe, àyípadà náà sì sábà máa ń pẹ́ ju ìṣẹ̀lẹ̀ náà lọ.

Ìtọ́kasí fún àwọn nọ́mbà ni àkójọ àwọn àṣìṣe curl, ó sì kúrú tó láti kà Á dáadáa lẹ́ẹ̀kan.

Ìgbésẹ̀ 5: gbà á sílẹ̀, wò ó, kí o sì ṣiṣẹ́ rẹ̀

Gbé olùfisín náà sínú fáìlì dípò kí o fi Á gba páìpù sínú shell nínú àṣẹ kan náà. Àyípadà kan náà yẹn ya ìgbékalẹ̀ tí o lè yẹ̀wò kúrò nínú kóòdù tí ń ṣiṣẹ́ pẹ̀lú àṣẹ rẹ.

curl -fL -o vpn-installer.sh https://example.invalid/install.sh
file vpn-installer.sh
head -n 40 vpn-installer.sh

Yẹ̀wò pé ìdáhùn ni script tí o retí kì í ṣe ojú-ìwé àṣìṣe HTML, ìkìlọ̀ ìtúnjáde tàbí fáìlì òfo. Bí olùtẹ̀jáde bá pèsè checksum tàbí ìsọwọ́, ṣe ìjẹ́rìí rẹ̀ nípasẹ̀ ìlànà ìtẹ̀jáde tí a kọ sílẹ̀ dípò iye tí a tọ́ka sí nínú okùn fọ́rọ́mù kan náà.

Rántí ohun tí HTTPS ṣe àti ohun tí kò ṣe. Ó ṣe ìjẹ́rìí gbígbé lọ sí olùgbàlejò tí o bá sọ̀rọ̀; kò yẹ̀wò àkóónú script, kò sì sọ fún ọ bóyá olùtẹ̀jáde yẹn gbẹ́kẹ̀lé.

Ìgbésẹ̀ 6: pa àwọn ìgbésẹ̀ ìfisín mọ́ lọ́tọ̀

Gbigba fáìlì sílẹ̀, fífi ẹ̀rọ ìbánisọ̀rọ̀ sínú, ṣíṣe ètò tunnel àti ìjẹ́rìí àwọn ipa-ọ̀nà jẹ́ iṣẹ́ mẹ́rin pẹ̀lú ọ̀nà ìkùnà mẹ́rin tí ó yàtọ̀. Ṣíṣe wọn ọ̀kọ̀ọ̀kan túmọ̀ sí pé àṣìṣe tí ó wá lẹ́yìn nínú ìtẹ̀léra ní ohun tí ó hàn gbangba kan dípò olùdíje mẹ́rin.

Bí ìfisín bá ṣàṣeyọrí tí tunnel sì gòkè, ṣe ìjẹ́rìí àwọn ipa-ọ̀nà àti ibi-ẹ̀dá gidi kan ṣáájú kí o tó pa tikẹ́ẹ̀tì. Àṣìṣe curl ni a tún ṣe nígbà tí curl -I https://example.invalid tí ó rọrùn bá tún ṣiṣẹ́, kì í ṣe nígbà tí olùfisín bá dá ṣíṣe ìròhìn dúró.

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