Squid ń dáhùn ìbéèrè CONNECT pẹ̀lú ìlà http_access àkọ́kọ́ tí ó bá mu, ìlà yẹn sì lè jẹ́ ìkọ̀sílẹ̀. Òtítọ́ kan ṣoṣo yìí ṣàlàyé ìdí tí ìyọkùrò fún ojú-ọ̀nà VPN fi máa ń kùnà ní ìgbìyànjú àkọ́kọ́, nítorí ìbéèrè kò dé ìgbàláyè tí ẹnìkan fi kún ní ìsàlẹ̀ rárá. Àtúnṣe tó há ń pa àwọn olùṣọ́ ibùdó tó wà mọ́, ó sì ń kọ́ wọn nípa orísun kan, ibi àfojúsùn kan àti ibùdó kan tí a ti ṣàyẹ̀wò. Gbogbo ohun mìíràn lórí prókísì ń ṣe bákan náà bí ti àtẹ̀yìnwá.

Báwo ni Squid ṣe ń pinnu ìbéèrè CONNECT

Ìbéèrè CONNECT ń dárúkọ akọ̀wé kan àti ibùdó kan, Squid sì ń là àwọn ìlà http_access kọjá ní ìtòlẹ́sẹẹsẹ títí ìkan nínú wọn yóò fi bá mu. Ìkọ̀sílẹ̀ tó bá mu ń parí ìgbéléwọ̀n lẹ́sẹ̀kẹsẹ̀, olùlò sì ń gba 403 láti ọ̀dọ̀ prókísì. Ìdí ni pé ipò òfin kan ṣe pàtàkì ju ọ̀rọ̀ rẹ̀ lọ. Gbígbé ìlà kan náà ní ìgbésẹ̀ kan sókè lè yí àbájáde padà pátápátá.

Àwọn olùṣọ́ àṣà ń kọ̀ ohunkóhun tó wà ní ìta Safe_ports, wọ́n sì ń kọ̀ CONNECT tó wà ní ìta SSL_ports. Àwọn orúkọ yẹn jẹ́ ACL tí a ṣàlàyé nínú ìṣètò tirẹ, nítorí náà àwọn ohun tó wà nínú wọn jẹ́ tirẹ, kì í ṣe ti ìlànà. Ìpínlẹ̀ kan lè gba ìwọ̀n ibùdó tó gbòòrò láyè gẹ́gẹ́ bí Safe_ports nígbà tí ó ń dènà CONNECT lọ́nà ọ̀tọ̀. Ka àwọn iye tó wà ní ààyè kí o tó ro pé ibùdó kan ti dí nípasẹ̀ àpẹẹrẹ.

Jẹ́rìí pé prókísì ni ẹ̀yà tó ń kọ̀ ìbéèrè náà. 403 tí Squid ń dá kò dà bí ìkìlọ̀ TLS láti ọ̀dọ̀ sáfà VPN rárá, àti dída méjèèjì pọ̀ sí ìṣòro kan ń gba wákàtí àkọ́kọ́. Ṣàyẹ̀wò ìlà àkọsílẹ̀ àgbàwọlé fún ìbéèrè náà, nítorí ó ń kọ ìgbésẹ̀ àti òfin tó dá a pọ̀.

Kọ ìbámu àpapọ̀ kan dípò ACL mẹ́ta ọ̀tọ̀ọ̀tọ̀

Kọ ìyọkùrò náà láti inú òtítọ́ mẹ́ta: ìwọ̀n orísun tí a fọwọ́ sí, àdírẹ́sì ibi àfojúsùn kan tí a fọwọ́ sí àti ibùdó kan ṣoṣo tí ojú-ọ̀nà ń gbọ́. ACL méjì ọ̀tọ̀ọ̀tọ̀ àti ìbámu àpapọ̀ kan ń dá ìlànà tó yàtọ̀ gbáà, nítorí àpapọ̀ ni a ń ṣàyẹ̀wò. Sọ orúkọ ACL àpapọ̀ náà nípa ohun tí ó ń gbà láyè, kì í ṣe nípa ọ̀nà tí ó ń gbé.

Àpẹẹrẹ tó wà nísàlẹ̀ ń lò àwọn ìwọ̀n àkọsílẹ̀ tí a ní láti fi iye tí a ṣàyẹ̀wò rọ́pò. Squid kò dá àbò bo ọ̀kan nínú àwọn orúkọ wọ̀nyí fún ara rẹ̀, nítorí náà ìwọ ni yóò yan wọ́n, ìwọ sì ni yóò pa wọ́n mọ́ ní ìbámu. Ìlànà yìí kò kọjá Squid 6 àti 7, tí ìṣètò àkọsílẹ̀ wọn ń ṣètìlẹ́yìn fún ẹgbẹ́ all-of. Ìtọ́kasí ìsinsìnyí ń sàmì sí àwọn ìtọ́sọ́nà yẹn gẹ́gẹ́ bí ohun tí kò sí ní Squid 8, nítorí náà gbà pé èyí jẹ́ ìlànà tó so mọ́ ẹ̀dá, kì í ṣe ọ̀nà ìṣíkiri, kí o sì ṣàyẹ̀wò ìtọ́sọ́nà náà nínú ìtọ́kasí ẹ̀dá tirẹ kí o tó lò ó.

acl pvpn_src src 192.0.2.128/25
acl pvpn_dst dst 198.51.100.77/32
acl pvpn_port port 1194
acl pvpn_ok all-of CONNECT pvpn_port pvpn_dst pvpn_src

Ẹgbẹ́ all-of ń bá mu nígbà tí gbogbo ọmọ ẹgbẹ́ bá mu, ìyẹn ni pé a ń ṣàyẹ̀wò orísun, ibi àfojúsùn àti ibùdó lórí ìlà kan. Ẹgbẹ́ náà fúnra rẹ̀ kò fúnni ní ohunkóhun, ìbéèrè tó bá mu pẹ̀lú méjì péré nínú òtítọ́ mẹ́ta kò sì lè tẹ́ ẹ lọ́rùn. Ànímọ́ yẹn ń pa ìyọkùrò mọ́ ní há nígbà tí ẹnìkan bá fi gáètì kejì kún ní ìgbà tó ń bọ̀. Yálà a fi ibi àfojúsùn tuntun kún mọ̀ọ́mọ̀, tàbí ìbéèrè padà sọ́dọ̀ àwọn olùṣọ́ ìpilẹ̀.

Tẹ àwọn olùṣọ́ ibùdó lọ́rùn láì yọ wọ́n kúrò

Ní ipò wọn ìsinsìnyí, àwọn ìlà olùṣọ́ méjì ti àṣà ń yanjú báyìí. Wọ́n sábà wà lẹ́yìn ìjẹ́rìí àti níwájú àwọn ìlà ìlànà tó ń gba ohunkóhun láyè.

http_access deny !Safe_ports
http_access deny CONNECT !SSL_ports

Fi ìbámu àpapọ̀ tí a kọ̀ kún mọ́ ọ̀kọ̀ọ̀kan, kí ìyọkùrò tó bá mu lè la olùṣọ́ tí yóò kọ̀ ọ́ nígbà mìíràn kọjá. Àwọn ìlà olùṣọ́ nìkan ni ó ń yí padà, ọ̀kọ̀ọ̀kan sì ń gba ẹ̀rí àfikún kan péré.

http_access deny CONNECT !SSL_ports !pvpn_ok
http_access deny !Safe_ports !pvpn_ok

Àwọn ẹ̀rí lórí ìlà àgbàwọlé kan ní a ń dà pọ̀, nítorí náà ìlà náà ń kọ̀ àwọn ìbéèrè tó kùnà nínú àyẹ̀wò ìpilẹ̀ àti nínú ìyọkùrò pẹ̀lú nìkan. Ìbéèrè sí ojú-ọ̀nà tí a fọwọ́ sí ń kọjá, gbogbo ìbéèrè mìíràn sì ń pa ìhùwàsí ibùdó àtijọ́ mọ́. Èyí há ju fífi ibùdó kún àkọsílẹ̀ SSL_ports àgbáyé lọ, èyí tí yóò gba ibùdó yẹn láyè fún gbogbo ibi àfojúsùn. Bí ibùdó náà bá ti wà nínú àkọsílẹ̀ yẹn, ACL yìí kò dín ohunkóhun kù, àṣẹ àtijọ́ tó gbòòrò sì ń lò fún àwọn ibi àfojúsùn mìíràn, nítorí náà ka àkọsílẹ̀ ààyè náà kí o tó sọ pé ìyọkùrò náà ṣí ibùdó. Ó tún lè yí padà, nítorí àwọn ìlà méjì ń padà sí ojú rẹ̀ àtẹ̀yìnwá. Ìtọ́kasí ìṣàkóso àgbàwọlé ń kọ ìtòlẹ́sẹẹsẹ àti àwọn olùṣọ́ àṣà tí ìyípadà yìí gbára lé.

Ibi tí kò gbọdọ̀ gbé ìyọkùrò náà

Ìdánwò ni láti gbé àṣẹ láyè sórí àwọn olùṣọ́ kí ó sì parí. Ipò yẹn tún ń fò àwọn ààbò ìjẹ́rìí àti ibi àfojúsùn àdúgbò tí ó sábà wà nítòsí òkè ìṣètò tó ń ṣiṣẹ́ kọjá. Àbájáde kì í ṣe ìyọkùrò tó há, ihò ni pẹ̀lú àkọsílẹ̀ lórí rẹ̀. Pa àṣẹ tuntun kankan mọ́ ní ìpele tí a ṣàyẹ̀wò bákan náà bí ìyókù ìlànà olùlò.

Ṣàyẹ̀wò ohun tí ìbéèrè ṣì nílò lẹ́yìn àwọn olùṣọ́ ibùdó. Àkọọlẹ̀ tí a jẹ́rìí, àdírẹ́sì olùlò tí a gbà láyè àti ìlànà ibi àfojúsùn ṣì ń lò, ìyọkùrò náà kò sì yí ọ̀kan nínú wọn padà. Bí prókísì rẹ bá ti ń gba àkọọlẹ̀ tí a fọwọ́ sí láyè láti dé àwọn ibi àfojúsùn àìdájú, olùṣọ́ ibùdó kò jẹ́ ìṣàkóso gidi rárá.

Ronú bóyá ojú-ọ̀nà náà jẹ́ TCP pátápátá. Ìyọkùrò CONNECT ń gbé àwọn ìṣàn TCP, iphrofáìlì OpenVPN tó ń lò UDP kò sì ní dé ọ̀dọ̀ rẹ̀. Yí iphrofáìlì náà padà sí TCP pẹ̀lú bí sáfà náà bá ń gbọ́ bẹ́ẹ̀, tí olùṣàkóso sì gba ìyàtọ̀ ìhùwàsí náà.

Ṣàyẹ̀wò ààlà pẹ̀lú aṣàyẹ̀wò àti ìbéèrè gidi

Ṣàyẹ̀wò ìṣètò náà kí o tó tún gbé e, kí o sì pa ìpàdé kejì mọ́ ní ṣíṣí nígbà tí o ń ṣe é. Àṣìṣe ìkọ́wé ní àkókò ìtúngbé lè fi prókísì sílẹ̀ lórí ìṣètò àtijọ́ tàbí kọ̀ ẹ̀dá tuntun náà pátápátá. Aṣàyẹ̀wò náà ń jábọ̀ ìlà tí a kọ̀, èyí tó pọ̀ ju ohun tí àṣìṣe olùlò yóò sọ fún ọ lọ.

Lẹ́yìn náà tún gbé e, kí o sì fi CONNECT gidi kan ránṣẹ́ nípasẹ̀ prókísì láti orísun tí a fọwọ́ sí. Ṣíṣe aṣàyẹ̀wò náà wá ní àkọ́kọ́, nítorí ìtúngbé tó ní àṣìṣe títẹ̀ kò kọ́ ọ ní ohunkóhun nípa ìlànà.

squid -k parse
squid -k reconfigure
curl -v -p -x http://proxy.lab.internal:3128 https://vpn.lab.internal:1194/ --max-time 5

Dán àwọn ipò mẹ́ta wò: orísun àti àkọọlẹ̀ tí a fọwọ́ sí, orísun tí a kò fọwọ́ sí, àti ibi àfojúsùn mìíràn lórí ibùdó kan náà. Ipò kẹta ni ó ń fi hàn pé ìyọkùrò náà há, nítorí ó ń lo ibùdó náà láìsí ìbámu ibi àfojúsùn. Ka àkọsílẹ̀ àgbàwọlé fún àwọn mẹ́tẹ̀ẹ̀ta dípò gbígbẹ́kẹ̀lé ìfiránṣẹ́ olùlò. CONNECT tó ṣàṣeyọrí ń gbé ìṣàn TCP kalẹ̀, kò sì ju bẹ́ẹ̀ lọ, nítorí náà ìfọwọ́ sowọ́pọ̀ VPN ṣì jẹ́ ìdánwò ọ̀tọ̀.

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