Ṣí àwọn irinṣẹ́ aṣègbétà, kó àpùlẹ̀kùn inú, kí o sì wo bí ìbéèrè kan ṣe ń kọjá àwọn ibi ìṣàyẹ̀wò mẹ́rin kí ojú-ìwé tó hàn. Lákọ̀ọ́kọ́ orúkọ ni a yanjú, lẹ́yìn náà ni ìsopọ̀ TCP ṣí, lẹ́yìn náà ni ìfọwọ́sowọ́pọ̀ TLS fi dá wa pé ẹni tó ń ṣe olùpèsè ni ẹni wo, àti lẹ́yìn náà ni àpùlẹ̀kùn béèrè ẹni tí ìwọ jẹ́. Kà wọ́n sí àwọn ìṣẹ̀lẹ̀ ọ̀tọ̀ọ̀tọ̀, nítorí ọ̀kọ̀ọ̀kan wọn ń kùnà pẹ̀lú ẹ̀rí ọ̀tọ̀ọ̀tọ̀, ọ̀kọ̀ọ̀kan sì jẹ́ ti ẹgbẹ́ ọ̀tọ̀ọ̀tọ̀. Ìdàrúdàpọ̀ púpọ̀ nínú àwọn ìṣẹ̀lẹ̀ wá láti kíkà 401 gẹ́gẹ́ bí ìṣòro ojú-ẹ̀wọ̀n, tàbí kíkà ìṣòro ojú-ẹ̀wọ̀n gẹ́gẹ́ bí ọ̀rọ̀ ìkọ̀kọ̀ tí kò tọ́.

Ibi ìṣàyẹ̀wò kìíní: ṣé èyí ni olùpèsè tí o fẹ́ bá sọ̀rọ̀

Ìfọwọ́sowọ́pọ̀ TLS ń dáhùn ìbéèrè yẹn kí a tó fi ẹ̀rí ìdánimọ̀ kankan ránṣẹ́. Ẹ̀rọ ìbánisọ̀rọ̀ rẹ ń ṣàyẹ̀wò ẹ̀wọ̀n ìwé-ẹ̀rí lòdì sí ibi ìkópamọ́ ìgbẹ́kẹ̀lé, ó sì ń wo bóyá orúkọ inú ìwé-ẹ̀rí bá olùgbàlejò tí o tẹ̀ mọ́. Bí ìyẹn bá kùnà, aṣàwákiri yóò fi àṣìṣe ìwé-ẹ̀rí hàn, kò sì ní fi orí-ọ̀rọ̀ Authorization ránṣẹ́ rárá. Nítorí náà ìbéèrè ọ̀rọ̀ ìkọ̀kọ̀ kì í ṣe ẹ̀rí pé olùpèsè jẹ́ ojúlówó; ẹ̀rí ni pé àpùlẹ̀kùn ti dáhùn.

Níbí ni ààlà kìíní ti farahàn. TLS ń dáàbò bo ìsopọ̀ títí dé ibi tí ó ti parí. Bí ẹ̀rọ ìdọ́gba ẹrù bá parí TLS, tí ó sì fi HTTP lásán ránṣẹ́ sí àpùlẹ̀kùn, apá tí a ti fi àmì pamọ́ yóò parí ní ẹ̀rọ ìdọ́gba ẹrù, ẹ̀rí ìdánimọ̀ yóò sì wà ní ààbò ní ìpele kìíní yẹn nìkan.

Ibi ìṣàyẹ̀wò kejì: kí ni ó ń ṣe ìrìnàjò ní ti gidi nínú pàṣípààrọ̀ 401

Ìjẹ́rìí HTTP Basic ń fi ìdánimọ̀ olùlò àti ọ̀rọ̀ ìkọ̀kọ̀ ránṣẹ́ nínú orí-ọ̀rọ̀ kan, tí a fi Base64 kọ́ gẹ́gẹ́ bí a ṣe ṣàlàyé rẹ̀ nínú RFC 7617. Authorization: Basic dXNlcjpwYXNz ni ìrísí rẹ̀; ẹnikẹ́ni tí ó lè ka ìbéèrè náà lè yí ìkọ́ náà padà, nítorí náà gbogbo ìkọ̀kọ̀ wá láti inú ìgbékalẹ̀ tí ó wà nísàlẹ̀. curl -v ń fi ìpèníjà WWW-Authenticate: Basic àti orí-ọ̀rọ̀ tí o fi ránṣẹ́ padà hàn.

Orí-ọ̀rọ̀ yẹn ń sọ fún àpùlẹ̀kùn ẹni tí ń béèrè. Kò sọ fún nẹ́tíwọ́kì ẹni tí ó lè sopọ̀, kò sì fi àmì pamọ́ ohunkóhun fúnrarẹ̀. Àpùlẹ̀kùn ṣì ní láti ṣàyẹ̀wò ẹ̀rí ìdánimọ̀ lòdì sí ibi ìkópamọ́ kan, kí ó sì pinnu ohun tí àkọsílẹ̀ yẹn lè ṣe, ìyẹn ni àṣẹ fífúnni tí ó sì ń ṣẹlẹ̀ lẹ́yìn ìjẹ́rìí.

Ibi tí ojú-ẹ̀wọ̀n IPsec wà nínú ọ̀nà yẹn

Nísinsìnyí rìn jáde láti aṣàwákiri. Ojú-ẹ̀wọ̀n IPsec láàárín ẹnu-ọ̀nà méjì ń dáàbò bo ìrìnàjò tí a yàn láàárín àwọn ẹnu-ọ̀nà ààbò méjì, kì í ṣe láàárín kọ̀mpútà gbé-ní-ìtàn rẹ àti ìlànà àpùlẹ̀kùn. ESP ní ipò ojú-ẹ̀wọ̀n ń fi àpò ìsọfúnni ìpilẹ̀ wé, àwọn ẹnu-ọ̀nà ń fi àmì pamọ́, wọ́n sì ń jẹ́rìí rẹ̀, àwọn àdírẹ́sì inú sì wà kí ẹ̀gbẹ́ òkè lè tọ́ ìbéèrè lọ sí àpùlẹ̀kùn.

Yíyàn ni apá tí ń mú àwọn ènìyàn kọsẹ̀. Àwọn ojú-ẹ̀wọ̀n tí ó dá lórí ìlànà ń lo àwọn olùyàn ìrìnàjò, tí a sábà kọ gẹ́gẹ́ bí àkójọ ìṣàkóso ìwọlé, láti pinnu àwọn àpò ìsọfúnni tí yóò wọ ojú-ẹ̀wọ̀n. Àwọn ojú-ẹ̀wọ̀n tí ó dá lórí ọ̀nà ń lo ojú-ìkànnkùn àràánu àti tábìlì ìtọ́nisọ́nà ní ààyè wọn. Ní Linux, ip xfrm policy ń fi àwọn olùyàn hàn, ip xfrm state sì ń fi àwọn ìsopọ̀ ààbò tí a ti dá hàn; lórí ẹ̀rọ odi-iná, ohun tí ó dọ́gba ni tábìlì SA ti ojú-ẹ̀wọ̀n pẹ̀lú olùtọpinpin àpò ìsọfúnni.

Ó yẹ kí a sọ àbájáde náà ní kedere. Àpò ìsọfúnni lè wà nínú ojú-ẹ̀wọ̀n tí ó ní ìlera pípé, tí yóò sì ṣì gbé ìbéèrè HTTPS kan tí àpùlẹ̀kùn kọ̀, àwọn ẹ̀rí ìdánimọ̀ tí ó tọ́ sì lè dé nípasẹ̀ ọ̀nà tí kò ní ojú-ẹ̀wọ̀n rárá bí ìtọ́nisọ́nà bá gbà á.

Ka ìkùnà ní ìpele tí ó ròyìn rẹ̀

401 túmọ̀ sí pé àpùlẹ̀kùn kò gba ẹ̀rí ìdánimọ̀. 403 túmọ̀ sí pé ó gba ìdánimọ̀, ó sì kọ ìṣe náà. Àṣìṣe TLS túmọ̀ sí pé ẹ̀rọ ìbánisọ̀rọ̀ kò gba olùpèsè. Kò sí ọ̀nà tàbí àìbáramu ìlànà túmọ̀ sí pé àpò ìsọfúnni kò dé ẹnu-ọ̀nà òkè rárá. Àwọn ìkùnà mẹ́rin ọ̀tọ̀ọ̀tọ̀, àwọn olóhun mẹ́rin ọ̀tọ̀ọ̀tọ̀, kò sì sí ọ̀kan nínú wọn tí a ń ṣàyẹ̀wò nípa wíwo fọ́ọ̀mù ìwọlé.

Lo ẹ̀rí tí ìpele kọ̀ọ̀kan ń mú jáde: pánẹ́ẹ̀lì nẹ́tíwọ́kì aṣàwákiri fún ipò àti àwọn orí-ọ̀rọ̀, openssl s_client -connect host:443 fún ẹ̀wọ̀n ìwé-ẹ̀rí, àwọn olùkà SA àti àkọsílẹ̀ ẹnu-ọ̀nà fún ìrìnàjò ojú-ẹ̀wọ̀n, àti àkọsílẹ̀ àpùlẹ̀kùn fún ìpinnu àkọsílẹ̀. Nígbà tí ìpele méjì bá ròyìn àṣìṣe lẹ́ẹ̀kan náà, tún èyí tí ó wà nísàlẹ̀ ṣe kí ó tó, nítorí ojú-ẹ̀wọ̀n tí ó ti kú lè fi ìkùnà ìjẹ́rìí pamọ́ ní rọ̀rùn, bẹ́ẹ̀ sì ni ìdàkejì.

Ṣe àwòrán iṣẹ́ kan láti ìbẹ̀rẹ̀ dé òpin

Kọ ìlà márùn-ún fún iṣẹ́ tí ìwọ ń yanjú: àwọn ẹ̀gbẹ́ tí ojú-ẹ̀wọ̀n ń so pọ̀, àwọn ẹ̀ka-nẹ́tíwọ́kì àti ibùdókọ̀ tí àwọn olùyàn ń gbà, ibi tí TLS ti parí àti ìdánimọ̀ tí ìwé-ẹ̀rí ń fi dá wa, àkọsílẹ̀ àpùlẹ̀kùn àti ipa tí a ń lò, àti ibi tí ìpele kọ̀ọ̀kan ti ń kọ àkọsílẹ̀. Pa wọ́n mọ́ ní ojú-ìwé kan, nítorí èrò àwòrán náà ni láti fi hàn ibi tí ojúṣe ìpele kan ti parí tí èyí tí ó tẹ̀lé yóò sì bẹ̀rẹ̀.

Lẹ́yìn náà dán ìṣẹ̀lẹ̀ òdì kan wò fún ìpele kọ̀ọ̀kan. Lo ọ̀rọ̀ ìkọ̀kọ̀ tí kò tọ́ kí o sì fi dá wa pé 401 ni o rí, kì í ṣe àkókò tí ó tán. Sopọ̀ láti ẹ̀ka-nẹ́tíwọ́kì tí ó wà ní òde àwọn olùyàn kí o sì fi dá wa pé àpò ìsọfúnni kò gba ojú-ẹ̀wọ̀n kọjá. Fi ìwé-ẹ̀rí fún orúkọ tí kò tọ́ hàn kí o sì fi dá wa pé ẹ̀rọ ìbánisọ̀rọ̀ kọ̀ ṣáájú kí ó tó fi ẹ̀rí ìdánimọ̀ ránṣẹ́. Àwọn àbájáde mẹ́ta yẹn sọ fún ọ nípa àpẹrẹ náà ju àwòrán àpótí èyíkéyìí lọ.

Níkẹyìn, pinnu pẹ̀lú ìmọ̀ràn irú ààbò tí ìbáṣepọ̀ kọ̀ọ̀kan nílò. Ìjẹ́rìí Basic lórí TLS bá a mu fún irinṣẹ́ inú kékeré tí ó wà lẹ́yìn ẹnu-ọ̀nà; kì í ṣe àròpo àṣẹ fún olùlò kọ̀ọ̀kan tàbí ààbò ìrìnàjò tí ó rékọjá ibi ìparí TLS. Ojú-ẹ̀wọ̀n ń dáàbò bo ọ̀nà, ìwé-ẹ̀rí ń dáàbò bo ìpele, 401 sì ń dáàbò bo àkọsílẹ̀, àti èyí tí ó kẹ́yìn nínú wọn nìkan ni ó mọ ẹni tí ìwọ jẹ́.

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