Alábàákẹ́gbẹ́ sọ́kẹ́tì tàbí àkọlé tí a fi ránṣẹ́: àdírẹ́sì wo ni kí a gbọ́kàn lé?
Alábàákẹ́gbẹ́ sọ́kẹ́tì àti àkọlé tí a fi ránṣẹ́ jẹ́ ẹ̀rí ọ̀tọ̀ọ̀tọ̀. Fi ohun tí ọ̀kọ̀ọ̀kan ń fidi hàn wé ara wọn, kí o sì gbọ́kàn lé àkọlé nípasẹ̀ ẹ̀wọ̀n proksi tí ìwọ fúnra rẹ̀ ń ṣàkóso nìkan.
Ìbéèrè tí ó dé àpùṣe rẹ gbé ẹ̀rí àdírẹ́sì onírúurú méjì: alábàákẹ́gbẹ́ tí ó ṣí ìsopọ̀ nẹ́tíwọ́kì, àti pápá HTTP tí ó sọ àdírẹ́sì oníbàárà ìṣáájú. Wọ́n ń dáhùn àwọn ìbéèrè ọ̀tọ̀ọ̀tọ̀. A ń wo alábàákẹ́gbẹ́ sọ́kẹ́tì, ṣùgbọ́n ẹni tí ó kọ àkọlé ni ó ń sọ nípa rẹ̀, kò sì yẹ kí ọ̀kan wọn rọ́pò èkejì ní ìdàkejì nínú àkọsílẹ̀ tàbí òfin ìráàyèsí. Ìfiwéra tí ó wà nísàlẹ̀ yà wọ́n sọ́tọ̀, lẹ́yìn náà ó fi ìṣètò kan ṣoṣo hàn tí àkọlé ti di èyí tí a lè lò.
Ṣàpèjúwe ipa-ọ̀nà kí o tó fi ohunkóhun wé ara wọn:
Client -> approved reverse proxy -> application originNínú ìṣètò yẹn, alábàákẹ́gbẹ́ sọ́kẹ́tì orísun sábà jẹ́ proksi, àkọlé ìránṣẹ́ sì lè gbé ìdánilójú proksi nípa oníbàárà. Iye rẹ̀ wá láti inú ìbáṣepọ̀ tí a ṣàkóso pẹ̀lú proksi yẹn, kì í ṣe láti orúkọ àkọlé.
Ẹ̀rí àdírẹ́sì onírúurú méjì
Alábàákẹ́gbẹ́ sọ́kẹ́tì jẹ́ òtítọ́ nípa ìsopọ̀ TCP kan: ohun kan parí ìfọwọ́báṣepọ̀ láti àdírẹ́sì yẹn. Kò dandan kí ó jẹ́ ènìyàn, ẹ̀rọ tàbí àpamọ́ tí ìwọ bìkítà nípa rẹ̀, nítorí VPN tàbí àbájáde Tor lè jẹ́ orísun tí iṣẹ́ ń wo ní ẹ̀tọ́. Bí ó ti wù kó rí, òun ni àdírẹ́sì kan ṣoṣo tí olùgbàlejò fúnra rẹ̀ ti jẹ́rìí, ìyẹn sì ni gbogbo iye rẹ̀.
Pápá ìránṣẹ́ jẹ́ mẹ́tádátà nípa ẹ̀wọ̀n kan. X-Forwarded-For, X-Real-IP àti pápá tí a ṣe ìdánilẹ́kọ̀ọ́ Forwarded ni oníbàárà èyíkéyìí tí ó dé ibi ìparí tí ń dá wọn padà lè kọ, nítorí náà ìgbẹ́kẹ̀lé wọn sinmi pátápátá lórí ẹni tí a fún ní àṣẹ láti ṣètò wọn.
Tọ́jú àwọn méjèèjì nínú àyíká ìbéèrè lábẹ́ orúkọ ọ̀tọ̀ọ̀tọ̀. Àpùṣe tí ó fi àkọlé kọ lu alábàákẹ́gbẹ́ yóò pàdánù agbára láti tún àṣìṣe ìgbẹ́kẹ̀lé kọ́ nígbà tí ó bá yá, ìyẹn sì ni àkókò tí ìwọ yóò nílò rẹ̀ gan-an.
Àkọlé kì í yí ipa-ọ̀nà ìsopọ̀ padà rárá
Kíkọ àdírẹ́sì sínú pápá ìránṣẹ́ kò yí orísun ìsopọ̀ TCP tí ó dé sórí sáfà padà, kò sì yí ìtọ́ni-ọ̀nà padà ní ibikíbi lórí ipa-ọ̀nà. Ìtọ́ni-ọ̀nà VPN àṣà tàbí NAT orísun ń fi ìrìnàjò jáde láìsí àkọlé HTTP kankan. Bákan náà, ẹnubodè ìrékọjá kì í tún ìpààrọ̀ HTTPS tí a dáàbò bo dáadáa kọ láìyí ìṣètò ibi ìparí TLS padà.
Àṣìṣe òdì kejì pọ̀ bákan náà: HTTPS kì í sọ àkọlé ìránṣẹ́ tí oníbàárà pèsè di òtítọ́. Ó ń dáàbò bo gbígbé ẹ̀sùn irọ́ bí ó ti ń dáàbò bo ti òtítọ́.
Bí ẹlẹgbẹ́ kan bá dábàá ìyípadà àkọlé láti tún ìṣòro ìtọ́ni-ọ̀nà ṣe, a ti ṣì ìṣàyẹ̀wò náà tẹ́lẹ̀. Tún ipa-ọ̀nà ṣe, tàbí tún ìṣètò proksi tí ó kọ àkọlé ṣe.
Dárúkọ proksi tí a fún ní àṣẹ láti ṣe ẹ̀sùn
Òfin méjì ń sọ pápá ìránṣẹ́ di èyí tí a lè lò, àwọn méjèèjì sì jẹ́ ìṣètò kì í ṣe kóòdù. Ẹ̀gbẹ́ ń ṣe ìdánilẹ́kọ̀ọ́ tàbí ń dan gbogbo ohun tí ó wá láti ìta, gẹ́gẹ́ bí ìhùwàsí rẹ̀ tí a kọ sílẹ̀ fún àwọn pápá yẹn. Lẹ́yìn náà orísun gba àdírẹ́sì àròpọ̀ láti ipa-ọ̀nà proksi tí o dárúkọ àti láti ibòmíì kankan. Òfin kejì gbé kalẹ̀ níkan nígbà tí àwọn oníbàárà kò bá lè dé orísun ní ọ̀nà mìíràn, nítorí orísun tí ń dáhùn àwọn ìbéèrè tààrà àti ti proksi kò mọ èwo ni ó ń sìn.
Mọ́dúùlù IP gidi ti NGINX fi ìpínyà hàn kedere. set_real_ip_from dárúkọ àwọn olùránṣẹ́ tí a ka ẹ̀sùn wọn, àti real_ip_header sọ pápá wo ni ó gbé e; èkíní ń ṣe ìgbẹ́kẹ̀lé, èkejì kàn sọ ibi tí a gbọ́dọ̀ wò.
set_real_ip_from 10.20.0.0/24;
real_ip_header X-Forwarded-For;
# real_ip_recursive off - take the rightmost value in the field
# real_ip_recursive on - walk the list back past every trusted address
Ìtọ́nisọ́nà yíyan àkọlé nìkan kò tíì fi ohunkóhun múlẹ̀ nípa ẹni tí ó rán iye náà.
Ààbò ìgbékalẹ̀ gbọ́dọ̀ gba gbogbo ipa-ọ̀nà láàrín àwọn ẹ̀yà tí ìwọ gbọ́kàn lé. Ẹ̀gbẹ́ tí ń ṣe ìdánilẹ́kọ̀ọ́ tọ́ yóò pàdánù iye yẹn ní àkókò tí ìgbésẹ̀ àìdáàbò kan ní ìsàlẹ̀ bá gbà ẹlòmíràn láàyè láti ṣàtúnṣe ẹ̀sùn náà bí ó ti ń rìn.
Fi ọ̀nà mímọ̀ ṣe àkóso ẹ̀wọ̀n onígbésẹ̀ púpọ̀
Àwọn proksi mélòó kan nílò àwòrán ẹ̀wọ̀n tí ó ṣe kedere. Má ṣe mú iye tí ó wà ní apá òsì tàbí apá ọ̀tún tí kọ́mà pín gbà nítorí àpilẹ̀kọ blog kan ṣe bẹ́ẹ̀; wádìí èwo nínú àwọn proksi rẹ ni ó ń fi kún, èwo ni ó ń rọ́pò àti èwo ni ó ń tọ́jú pápá tí ó wọlé. Fún àpẹẹrẹ, NGINX lè rìn ìtòlẹ́sẹẹsẹ náà sẹ́yìn lòdì sí àkójọ tí ó gbọ́kàn lé, kí ó sì dúró ní àdírẹ́sì àkọ́kọ́ tí kì í ṣe tirẹ̀, ìyẹn sì ni òfin ọjà yẹn, kì í ṣe òfin kan tí gbogbo ìlànà ń tẹ̀lé. Ka ìwé àkọsílẹ̀ proksi rẹ pẹ̀lú àwọn ìbéèrè méjì kan náà: iye wo ni ó yàn, àti àwọn olùránṣẹ́ wo ni ó gbà?
Kọ ẹ̀wọ̀n náà sílẹ̀: ìtòlẹ́sẹẹsẹ ìgbésẹ̀, ìgbésẹ̀ wo ni ó ṣètò pápá àti ìgbésẹ̀ wo ni ó yọ àwọn àdàkọ tí ó wọlé kúrò. Lẹ́yìn náà tọ́jú àkọsílẹ̀ yẹn lẹ́gbẹ̀ẹ́ ìṣètò proksi, kì í ṣe nínú tíkẹ́ẹ̀tì nìkan. Lẹ́yìn náà dán an wò nípa fífi ìbéèrè pẹ̀lú àkọlé àréké ránṣẹ́ gba ìlànà ìjẹ́rìí tí a fọwọ́ sí, kí o sì jẹ́rìí pé orísun kò ka á.
Nígbà tí o bá fi ìgbésẹ̀ kún un, ṣàtúnyẹ̀wò ìwé yẹn. Olùdọ́gba ẹrù tuntun tí a fi sí iwájú proksi tí a gbọ́kàn lé lè yí àdírẹ́sì tí ó máa ṣẹ́gun padà láìsí pé ẹnikẹ́ni ṣàtúnṣe àpùṣe.
Tọ́jú àwọn àkíyèsí méjèèjì nínú àkọsílẹ̀
Níbi tí a ti gbà láàyè fún ìṣàyẹ̀wò, ṣàkọsílẹ̀ alábàákẹ́gbẹ́ ìsopọ̀ àti àdírẹ́sì oníbàárà tí a ṣe ìdánilẹ́kọ̀ọ́ gẹ́gẹ́ bí pápá méjì ọ̀tọ̀ọ̀tọ̀, kí o sì fi kún mẹ́tádátà ìránṣẹ́ tí èròǹgbà nílò gan-an. Lẹ́yìn náà fi ìbéèrè méjì fi ìgbékalẹ̀ hàn: ọ̀kan gba proksi tí ó yẹ kí ó kọ àwọn iye méjèèjì sílẹ̀ lọ́nà tí ó bọ́gbọ́n mu, àti ìgbìyànjú tààrà sí orísun tí ó gbọ́dọ̀ kọ̀.
Rántí ohun tí ẹgbẹ́ yìí túmọ̀ sí. Àkọlé ń fi àyíká kún un tí ẹ̀yà tí o yàn láti gbọ́kàn lé pèsè; alábàákẹ́gbẹ́ ni ó ṣì jẹ́ àdírẹ́sì kan ṣoṣo tí olùgbàlejò rẹ gbọ́dọ̀ rí gan-an. Kò sí èyí tí ó jẹ́ ẹ̀rí ìdánimọ̀ ẹnìkọ̀ọ̀kan, àpẹẹrẹ tí ó ka èyíkéyìí nínú wọn sí ẹ̀rí yóò ṣe àṣìṣe nípa ẹnìkan.