巧用Squid的ACL和訪問列表實現高效訪問控制

2022-09-10 13:27:19 字數 1885 閱讀 4597

squid可以工作在很多的作業系統中,如aix、digital、unix、freebsd、hp-ux、irix、linux、netbsd、nextstep、sco、solaris、os/2等。

在使用過程中,合理使用訪問控制是非常重要的工作。使用訪問控制特性,可以控制其在訪問時根據特定的時間間隔進行快取、訪問特定站點或一組站點等 等。squid訪問控制有兩個要素:acl元素和訪問列表。訪問列表可以允許或拒絕某些使用者對此服務的訪問。下面分別介紹acl元素以及訪問列表的使用方 法。

1.acl元素

該元素定義的語法如下:

acl aclname acltype string1…

acl aclname acltype "file"…

當使用檔案時,該檔案的格式為每行包含乙個條目。

其中,acltype可以是src、dst、srcdomain、dstdomain、url_regex、urlpath_regex、time、port、proto、method中的一任意一種。

acl aclname src ip-address/netmask ... 客戶ip位址

acl aclname src addr1-addr2/netmask ... 位址範圍

acl aclname dst ip-address/netmask ...
srcdomain:指明客戶所屬的域,squid將根據客戶ip反向查詢dns。語法為:

acl aclname srcdomain foo.com ...
dstdomain:指明請求伺服器所屬的域,由客戶請求的url決定。語法為:

acl aclname dstdomain foo.com ...。此處需要注意的是:如果使用者使用伺服器ip而非完整的網域名稱時,squid將進行反向的dns解析來確定其完整網域名稱,如果失敗,就記錄為「none」。

time:指明訪問時間。語法如下:

acl aclname time [day-abbrevs] [h1:m1-h2:m2][hh:mm-hh:mm]
日期的縮寫指代關係如下:

s:指代sunday

m:指代monday

t:指代tuesday

w:指代wednesday

h:指代thursday

f:指代friday

a:指代saturday

另外,h1:m1必須小於h2:m2,表示式為[hh:mm-hh:mm]。

port:指定訪問埠。可以指定多個埠,比如:

acl aclname port 80 70 21 ...

acl aclname port 0-1024 ... 指定乙個埠範圍

proto:指定使用協議。可以指定多個協議:

acl aclname proto http ftp ...
method:指定請求方法。比如:

acl aclname method get post ...
url_regex:url規則表示式匹配,語法為:

acl aclname url_regex[-i] pattern
urlpath_regex:url-path規則表示式匹配,略去協議和主機名。其語法為:

acl aclname urlpath_regex[-i] pattern
在使用上述acl元素的過程中,要注意如下幾點:

acltype可以是任乙個在acl中定義的名稱。

任何兩個acl元素不能用相同的名字。

每個acl由列表值組成。當進行匹配檢測的時候,多個值由邏輯或運算連線;換句話說,任一acl元素的值被匹配,則這個acl元素即被匹配。

並不是所有的acl元素都能使用訪問列表中的全部型別。

不同的acl元素寫在不同行中,squid將這些元素組合在乙個列表中。

巧用Squid的ACL和訪問列表實現高效訪問控制

squid可以工作在很多的作業系統中,如aix digital unix freebsd hp ux irix linux netbsd nextstep sco solaris os 2等。在使用過程中,合理使用訪問控制是非常重要的工作。使用訪問控制特性,可以控制其在訪問時根據特定的時間間隔進行快...

巧用Squid的ACL和訪問列表實現高效訪問控制

2010 09 19 22 52 52 squid可以工作在很多的作業系統中,如aix digital unix freebsd hp ux irix linux netbsd nextstep sco solaris os 2等。在使用過程中,合理使用訪問控制是非常重要的工作。使用訪問控制特性,可...

許可權和ACL訪問控制 01 許可權

rwxrwrwx 左三位 定義user owner 的許可權,屬主許可權 中三位 定義group的許可權,屬組許可權 有三位 定義other的許可權,其他的許可權 程序對檔案的訪問許可權應用模型 程序的屬主與檔案的屬主是否相同。如果相同,則應用屬主許可權 否則去檢查金證的屬於是否屬於檔案的屬組 如果...