代理快取服務
Squid是Linux系統中最為流行的一款高性能代理服務軟體,通常用作Web網站的前置快取服務,能夠代替用戶向網站服務器請求頁面資料并進行快取,簡單來說,Squid服務程式會按照收到的用戶請求向網站源服務器請求頁面、圖片等所需的資料,并將服務器回傳的資料存盤在運行Squid服務程式的服務器上,當有用戶再請求相同的資料時,則可以直接將存盤服務器本地的資料交付給用戶,這樣不僅減少了用戶的等待時間,還緩解了網站服務器的負載壓力,
Squid服務程式具有配置簡單、效率高、功能豐富等特點,它能支持HTTP、FTP、SSL等多種協議的資料快取,可以基于訪問控制串列(ACL)和訪問權限串列(ARL)執行內容過濾與權限管理功能,還可以基于多種條件禁止用戶訪問存在威脅或不適宜的網站資源,因此可以保護企業內網的安全,提升用戶的網路體驗,幫助節省網路帶寬,
在使用Squid服務程式為用戶提供快取代理服務時,具有正向代理模式和反向代理模式之分,
所謂正向代理模式,是指讓用戶通過Squid服務程式獲取網站頁面等資源,以及基于訪問控制串列(ACL)功能對用戶訪問網站行為進行限制,在具體的服務方式上又分為標準代理模式與透明代理模式,
標準正向代理模式是把網站資料快取到服務器本地,提高資料資源被再次訪問時的效率,但是用戶在上網時必須在瀏覽器等軟體中填寫代理服務器的IP地址與埠號資訊,否則默認不使用代理服務,
透明正向代理模式的作用與標準正向代理模式基本相同,區別是用戶不需要手動指定代理服務器的IP地址與埠號,所以這種代理服務對于用戶來講是相對透明的,
Squid服務程式提供正向代理服務

反向代理模式是指讓多臺節點主機反向快取網站資料,從而加快用戶訪問速度,可以使用Squid服務程式提供的反向代理模式來進行回應,而且,如果反向代理服務器中恰巧已經有了用戶要訪問的靜態資源,則直接將快取的這些靜態資源發送給用戶,這不僅可以加快用戶的網站訪問速度,還在一定程度上降低了網站服務器的負載壓力,
Squid服務程式提供的反向代理模式

正向代理和反向代理
正向代理模式一般用于企業局域網之中,讓企業用戶統一地通過Squid服務訪問互聯網資源,可以在一定程度上減少公網帶寬的開銷,還能對用戶訪問的網站內容進行監管限制;
反向代理模式一般是為大中型網站提供快取服務的,它把網站中的靜態資源保存在國內多個節點機房中,當有用戶發起靜態資源的訪問請求時,可以就近為用戶分配節點并傳輸資源,
配置Squid服務程式
基本設定:
Squid服務端:雙網卡,內網(僅主機)IP地址192.168.10.10,外網(橋接)DHCP自動獲取IP地址,能上外網;
Squid客戶端:一張網卡(僅主機)IP地址192.168.10.20,客戶端是Windows、Linux都行;
實驗目的:在服務端部署squid程式,讓原本只能訪問內網的客戶端通過Squid服務器進行代理上網,
服務端安裝Squid服務程式:yum install -y squid,
Squid服務程式的組態檔:/etc/squid/squid.conf,
常用的Squid服務程式配置引數以及作用

標準正向代理
Squid服務程式軟體包在正確安裝并啟動后,默認就已經可以為用戶提供標準正向代理模式服務了,而不再需要單獨修改組態檔或者進行其他操作,
如果客戶端是Linux系統,服務端還需要清空iptables防火墻
systemctl restart squid #重啟squid服務
systemctl enable squid #把squid服務加入開機啟動項
iptables -F #清空iptables防火墻
service iptables save #保存iptables當前策略狀態
t添加網卡

標準正向代理
代理點網路設定
[root@lizhiqiang Desktop]# yum install -y dhcp squid
[root@lizhiqiang Desktop]# systemctl restart squid
[root@lizhiqiang Desktop]# systemctl enable squid
[root@lizhiqiang Desktop]# iptables -F






運用dhcp共享網路設定

[root@lizhiqiang Desktop]# systemctl restart dhcpd
[root@lizhiqiang Desktop]# systemctl restart squid
[root@lizhiqiang Desktop]# firewall-config




使用iptables 開啟共享網路

[root@lizhiqiang Desktop]# iptables -F
[root@lizhiqiang Desktop]# iptables -t nat -A POSTROUTING -p udp --dport 53 -o eno33554992 -j MASQUERADE
[root@lizhiqiang Desktop]# vim /etc/sysctl.conf

[root@lizhiqiang Desktop]# vim /etc/squid/squid.conf

[root@lizhiqiang Desktop]# squid -k parse
2020/11/17 07:32:06| Startup: Initializing Authentication Schemes ...
2020/11/17 07:32:06| Startup: Initialized Authentication Scheme 'basic'
2020/11/17 07:32:06| Startup: Initialized Authentication Scheme 'digest'
2020/11/17 07:32:06| Startup: Initialized Authentication Scheme 'negotiate'
2020/11/17 07:32:06| Startup: Initialized Authentication Scheme 'ntlm'
2020/11/17 07:32:06| Startup: Initialized Authentication.
[root@lizhiqiang Desktop]# squid -z
2020/11/17 07:32:13 kid1| /var/spool/squid exists
2020/11/17 07:32:13 kid1| Making directories in /var/spool/squid/00
2020/11/17 07:32:13 kid1| Making directories in /var/spool/squid/01
2020/11/17 07:32:13 kid1| Making directories in /var/spool/squid/02
2020/11/17 07:32:13 kid1| Making directories in /var/spool/squid/03
2020/11/17 07:32:13 kid1| Making directories in /var/spool/squid/04
2020/11/17 07:32:13 kid1| Making directories in /var/spool/squid/05
2020/11/17 07:32:13 kid1| Making directories in /var/spool/squid/06
2020/11/17 07:32:13 kid1| Making directories in /var/spool/squid/07
2020/11/17 07:32:13 kid1| Making directories in /var/spool/squid/08
2020/11/17 07:32:13 kid1| Making directories in /var/spool/squid/09
2020/11/17 07:32:13 kid1| Making directories in /var/spool/squid/0A
2020/11/17 07:32:13 kid1| Making directories in /var/spool/squid/0B
2020/11/17 07:32:13 kid1| Making directories in /var/spool/squid/0C
2020/11/17 07:32:13 kid1| Making directories in /var/spool/squid/0D
2020/11/17 07:32:13 kid1| Making directories in /var/spool/squid/0E
2020/11/17 07:32:13 kid1| Making directories in /var/spool/squid/0F
[root@lizhiqiang Desktop]# systemctl restart squid
[root@lizhiqiang Desktop]# iptables -t nat -A PREROUTING -p tcp -m tcp --dport 80 -j REDIRECT --to-ports 8888
[root@lizhiqiang Desktop]# iptables -t nat -A POSTROUTING -s 192.168.11.0/24 -o eno33554992 -j SNAT --to 172.20.10.9
[root@lizhiqiang Desktop]# service iptables save
iptables: Saving firewall rules to /etc/sysconfig/iptables:[ OK ]


修改埠號
[root@lizhiqiang Desktop]# vim /etc/squid/squid.conf
[root@lizhiqiang Desktop]# systemctl restart squid
[root@lizhiqiang Desktop]# semanage port -l | grep squid_port_t
squid_port_t tcp 3128, 3401, 4827
squid_port_t udp 3401, 4827
[root@lizhiqiang Desktop]# semanage port -a -t squid_port_t -p tcp 10000
[root@lizhiqiang Desktop]# semanage port -l | grep squid_port_t
squid_port_t tcp 10000, 3128, 3401, 4827
squid_port_t udp 3401, 4827
[root@lizhiqiang Desktop]# systemctl restart squid


轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/224875.html
標籤:其他
下一篇:小白教程:虛擬機的安裝并排錯
