Squid نىڭ myportname ۋە src نى ئايرىم ACL بىلەن بىرلەشتۈرۈش
بىر تەرىپتە ئىككى خىل ACL قويمىغان ھالدا ئاتالغان Squid listener نى رۇخسەت قىلىنغان خېرىدار تورى بىلەن بىرلەشتۈرۈڭ.
سەپلىمە تۇنجى قاراشتا ئىشەنچلىك كۆرۈنىدۇ:
acl team_a myportname 3128 src 198.51.100.0/24
ئەمما ACL ئېنىقلىمىسىدا پەقەت بىرلا تىپ بولىدۇ. بۇ يەردە myportname تىپ بولىدۇ؛ src دېگەن سۆزنى قوشقاندا ئىككىنچى سىناق باشلانمايدۇ. قالغان سۆزلەر بىرىنچى تىپنىڭ قىممەت تىزىملىكىگە تەۋە. بۇ قۇر «بۇ listener ۋە بۇ خېرىدار تورى» دېگەننى ئىپادىلىمەيدۇ.
ھەر بىر شەرتكە ئىسىم بېرىڭ
تىڭشايدىغان socket ئۈچۈن ئىسىم، مەنبە ئۈچۈن ئايرىم ACL ئىشلىتىڭ. بۇ پارچە ھۆججەت ئادرېسلىرىنى ئىشلىتىدۇ، ئۇلارنى قۇرۇلۇشقا ماس ئادرېسلار بىلەن ئالماشتۇرۇش كېرەك:
http_port 192.0.2.10:3128 name=team_a_port
acl team_a_port myportname team_a_port
acl team_a_clients src 198.51.100.0/24
http_access allow team_a_port team_a_clients
http_access deny all
رۇخسەت قائىدىسىنى خەتەرلىك نىشان پورتلار، چەكلەنگەن CONNECT نىشانلىرى ۋە باشقۇرۇش كىرىشى ئۈچۈن مەۋجۇت قوغداشلاردىن كېيىن قويۇڭ. پارچە خېرىدار/listener شەرتىنى كۆرسىتىدۇ؛ ئۇ بۇ قوغداشلارنىڭ ئورنىنى ئالمايدۇ.
بىر http_access قۇرىدىكى شەرتلەر AND بىلەن بىرلەشتۈرۈلىدۇ. ئايرىم ئىككى رۇخسەت قۇرى ھەر بىر شەرتنى مۇستەقىل ئۆتكۈزەتتى، بۇ سىياسەتنى زور دەرىجىدە ئۆزگەرتىۋېتەتتى. بىر ACL ئىچىدىكى بىر قانچە قىممەت ئادەتتە شۇ بىر سىناق ئۈچۈن تاللانمىلارنى بېرىدۇ.
چىقىشنى ئايرىم تاللاڭ
ماس كېلىدىغان listener نى tcp_outgoing_address ئارقىلىق يەرلىك مەنبە ئادرېسىنى تاللاش ئۈچۈن ئىشلىتىشكىمۇ بولىدۇ. بۇ يول تاللاش، proxy ئىشلىتىش رۇخسىتى ئەمەس. چىقىش ئادرېسى قائىدىسى رەت قىلىنغان تەلەپنى http_access ئارقىلىق ئۆتكۈزەلمەيدۇ.
ئەگەر كۆپ ئادرېسلىق سەپلىمە يېڭىلانغاندىن كېيىن ئىشلىمەي قالسا، ئىسپاتلارنى ئايرىڭ: تەھلىل خاتالىقى سەپلىمە گرامماتىكىسىنى كۆرسىتىدۇ؛ كىرىش رەت قىلىنىشى قائىدە ماسلىشىشىنى؛ خاتا چىقىش بىلەن رۇخسەت قىلىنغان تەلەپ چىقىش تاللىشى ياكى كېيىنكى NAT نى كۆرسىتىدۇ. ئۈچىنى بىرلا ۋاقىتتا ئۆزگەرتىش كىچىك ACL خاتالىقىنى تېپىشنى تېخىمۇ قىيىنلاشتۇرىدۇ.