日韩av黄I国产麻豆传媒I国产91av视频在线观看I日韩一区二区三区在线看I美女国产在线I麻豆视频国产在线观看I成人黄色短片

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 >

Squid在企业中的应用

發布時間:2025/3/20 45 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Squid在企业中的应用 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

? ???Squid在企業中的應用

???Squid是一個很好的代理軟件,與NAT是不同的技術,具有很強的控制力度,是應用層的,能基于應用層參數【協議】、網絡層參數【地址】、傳輸層參數【協議?端口號等】進行控制,唯一的缺點是支持的應用少。而NAT支持的應用比較多。如ipsecAH等。

Windows上的代理有:wingate?sygate?winroute?proxy等等

Linux上的代理有:squid?等。

代理服務器的原理、作用及緩存加速機制這里就不提了,不懂的可以百度一下,代理一般走的端口號是8080或者是3128squid的就是3128,下面是具體配置

CDN?內容分發網絡

1Squid的安裝與簡單配置

?????????????????????????(圖一)

以上是我的局域網拓撲圖?要求pc1通過squid代理服務器訪問到外網

1)、首先配置eth0eth1網卡及dns指向確保squid代理服務器能與外網通信

2)、?安裝squid服務器

???yum?-y?install?squid??yum?安裝

???Rpm?-ivh???squid-2.6.STABLE21-3.el5.i386.rpm??rpm安裝

配置目錄?/etc/squid/

默認訪問日志文件?/lvar/log/squid/access.log

監聽端口?http_port?3128

cache_mem?64M??用多少內存來進行緩存默認為64M

maxinum_object_size?4086KB?最大緩存對象4M

reply_body_max_size?10240000?allow?all?最大訪問的對象10M

visible_hostname??proxy.test.com?這個地方一定要配置一下,可以任意寫一些內容,不配置squid服務器啟動不起來,主要是在客戶端訪問出錯時要顯示的字符

cache_dir?ufs?/var/spool/squid?100?16?256?

Ufs??是緩存數據的存儲格式

/var/spool/squid/??存放緩存存放的磁盤目錄?(在第一次啟動squid是初始化)

100?為緩存目錄分配的磁盤空間(默認100M)?

16?緩存空間的一級子目錄?(16個)

256?緩存空間的二級子目錄?(265個)

由于squid.conf配置文件很大,有4千多行,可以先用如下命令看一下沒用注釋的行,即要配置的內容。

grep?-v?"^#"?squid.conf?|grep?-v?"^$"?

acl?all?src?0.0.0.0/0.0.0.0????????????acl定義某些元素名稱,即策略元素?

acl?manager?proto?cache_object

acl?localhost?src?127.0.0.1/255.255.255.255

acl?to_localhost?dst?127.0.0.0/8

acl?SSL_ports?port?443

acl?Safe_ports?port?80?#?http

acl?Safe_ports?port?21?#?ftp

acl?Safe_ports?port?443?#?https

acl?Safe_ports?port?70?#?gopher

acl?Safe_ports?port?210?#?wais

acl?Safe_ports?port?1025-65535?#?unregistered?ports

acl?Safe_ports?port?280?#?http-mgmt

acl?Safe_ports?port?488?#?gss-http

acl?Safe_ports?port?591?#?filemaker

acl?Safe_ports?port?777?#?multiling?http

acl?CONNECT?method?CONNECT

http_access?allow?manager?localhost???http_access來定義策略

http_access?deny?manager

http_access?deny?!Safe_ports

http_access?deny?CONNECT?!SSL_ports

http_access?allow?localhost

http_access?deny?all??默認拒絕全部

icp_access?allow?all???

http_port?3128????監聽的端口,為了安全期間3128前面最好加一個地址,即eth1的地址,這樣只允許內網的用戶使用squid服務器。

hierarchy_stoplist?cgi-bin??

access_log?/var/log/squid/access.log?squid

acl?QUERY?urlpath_regex?cgi-bin?\?

cache?deny?QUERY

refresh_pattern?^ftp:?1440?20%?10080

refresh_pattern?^gopher:?1440?0%?1440

refresh_pattern?.?0?20%?4320

acl?apache?rep_header?Server?^Apache

broken_vary_encoding?allow?apache

coredump_dir?/var/spool/squid

(3)、編輯squid.conf配置文件(/et/c/squid/squid.conf

?添加如下二行

visible_hostname?192.168.2.100

http_port?192.168.2.100:3128

(4)、啟動squid服務器

重啟之前先檢查一下語法?squid?-k?parse

上面提到的16X256個目錄在/var/spool/squid/下已建立??

Squid已經啟動了

(5)、在pc1上使用代理測試一下

pc1上設置代理為,依次單擊IE瀏覽器上的"工具">"Internet選項">"連接">選擇"局域網設置"》如圖:

訪問一下百度看看

?

用上面的出錯信息可以看到,別拒絕了,因為默認是拒絕所有的http_access?deny?all?,所以為了我們測試在squid.conf配置文件http_access?deny?all?前面再加上一句?http_access?allow?all????重啟squid服務

(6)、再次測試并查看squid日志

打開了百度網頁?,好了可以上網了

其中日志中帶有的?TCP_HIT?表示緩存命中,可以提高訪問速度,對應TCP_MISS表示緩存丟失

下面是實例

2Squid實現正向代理

拓撲圖同圖一

1、禁止ip192.168.2.2的內網訪問外網

squid中寫入下策略(在上述的基礎上)

重啟squid服務并測試和查看日志

2、禁止ip192.168.2.2---2.10的內網訪問外網

重啟squid服務并測試和查看日志如下:(時刻要觀察日志)

3、只允許192.168.2.10的內網訪問192.168.1.1進行路由管理

4、綜合,禁止在上班時間08:00--18:00內訪問網址中帶有"qq"的網址,禁止訪問域名是.sina.com.cn的所有站點,禁止瀏覽網站中的.jpg圖片

?好了,1234后都有http_access?allow?all?這一項,測試我就不截圖了,是沒問題的。

3squid的透明代理

本實驗的內網網段為192.168.2.0/24?代理服務器的eth0網卡的ip地址為192.168.2.20?用于模擬連接內網???eht1的網卡ip地址為192.168.3.1用于模擬連接外網,內網用戶不需要配置使用代理的設置,就可以通過squid代理訪問外網,即透明代理,,

內網的測試機的ip地址為192.168.2.10,外網web服務器及DNS服務器的ip地址都為192.168.3.100?

按照以上拓撲圖,要求pc1通外網的DNS解析訪問外網的web頁面

試驗配置如下:

1)首先你必須先確保能啟動squid,如何啟動請看上面的配置

2)打開數據包轉發功能

vim?/etc/sysctl.conf?

net.ipv4.ip_forward?=?1??1為開啟?0?為關閉

sysctl?-p??加載系統

3)實現DNS解析通過

如果是靜態IP用下條命令

iptables?-t?nat?-A?POSTROUTING?-s?192.168.2.0/24?-p?udp?--dport?53?-j?SNAT?--to?192.168.3.1

如果是動態的IP用下面的命令

iptables?-t?nat?-R?POSTROUTING?1?-s?192.168.2.0/24?-p?udp?--dport?53?-j?MASQUERADE

??(4)設置端口重定向

iptables?-t?nat?-A?PREROUTING?-p?tcp?--dport?80?-j?REDIRECT?--to-port?3128

??(5)編輯squid.conf

?http_port?192.168.2.20:3128?transparent???

?http_access?allow?all?

5、測試結果及squid日志

?

4squid之反向代理

上述拓撲圖,某公司內網用一臺web服務器,要求internet的用戶通過訪問本公司的合法ip192.168.3.10080端口即可訪問內網的web服務器。

我們用squid緩存服務器的反向代理來實現

配置如下:

1)首先你必須先確保能啟動squid,如何啟動請看上面的配置

2)修改squid.conf配置文件?如下:

http_port?192.168.3.100:80?vhost?

cache_peer??192.168.2.10?????????parent?????80????0????originserver

http_access?allow?all?

上面的一句話的意思是指明web服務器的地址,在squid沒用查到用戶請求的數據后,會向自己的父級即內網web服務器,去幫客戶去查詢。。

?(3)重啟squid?,在pc上訪問192.168.3.100測試

可以了,不懂的可以留言


本文轉自 abc16810 51CTO博客,原文鏈接:http://blog.51cto.com/abc16810/1052097



總結

以上是生活随笔為你收集整理的Squid在企业中的应用的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。