Linux中级(六)Proxy服务器
一、Apach的正向代理
?? 場(chǎng)景:客戶端無法直接連接Internet,可以通過代理服務(wù)器(一個(gè)跳板機(jī)),代理訪問外部資源,返回客戶端需要的數(shù)據(jù)!
?
客戶端:明確所要訪問的代理服務(wù)器,知道代理服務(wù)器的IP地址,還有代理程序的端口,所以稱之為正向!
案例引入
問題:我是一個(gè)用戶,我訪問不了國(guó)外某網(wǎng)站,但是我能訪問一個(gè)香港代理服務(wù)器,而這個(gè)代理服務(wù)器它能訪問那個(gè)我不能訪問的網(wǎng)站過程:于是我先連上代理服務(wù)器,告訴代理服務(wù)器我需要那個(gè)無法訪問網(wǎng)站的內(nèi)容,代理服務(wù)器去取回來,然后返回給我。網(wǎng)站的角度:只在代理服務(wù)器來取內(nèi)容的時(shí)候有一次記錄,并不知道是用戶的請(qǐng)求,也隱藏了用戶的資料,這取決于代理告不告訴網(wǎng)站。?實(shí)驗(yàn)環(huán)境的搭建??
(1)server虛擬機(jī)可以連接網(wǎng)絡(luò)--->可以連接百度(2)desktop無法上網(wǎng) --->無法連接百度需求:dsktop通過server來連接Internet測(cè)試1:客戶端IP 172.25.2.103,目前ping www.baidu.com,也無法連接網(wǎng)絡(luò)
測(cè)試2:Proxy提供代理服務(wù),客戶端和服務(wù)器端進(jìn)行相應(yīng)的配置,實(shí)現(xiàn)客戶端連接網(wǎng)絡(luò)
? 1)server安裝代理服務(wù)軟件
???????? 概念:Squid是一個(gè)高性能的代理緩存服務(wù)器,Squid支持FTP、HTTPS和HTTP等協(xié)議。和一般的代理緩存軟件不同,Squid用一個(gè)單獨(dú)的、非模塊化的、I/O驅(qū)動(dòng)的進(jìn)程來處理所有的客戶端請(qǐng)求。
yum install squid.x86_64 -y rpm -qc squid.x86_64 --->/etc/httpd/conf.d/squid.conf(CDN用的到)squid:八爪魚、槍烏賊、魷魚? 2)服務(wù)器防火墻得允許通過服務(wù)和端口
netstat -antlupe |grep squid -->3128端口firewall-cmd --add-port=3128/tcp vim /etc/squid/squid.conf -->第56行(允許所有的人來訪問我這臺(tái)代理服務(wù)器)、創(chuàng)建緩存目錄(62行)systemctl restart squid說明:squid服務(wù)啟動(dòng)前后查看緩存目錄!
3)客戶端的設(shè)置
說明:(1)和代理服務(wù)器是一個(gè)WLAN或者通過網(wǎng)關(guān)的形式連接代理服務(wù)器(2)客戶端不需要設(shè)置DNS,因?yàn)樗械挠蛎馕龅榷际荘roxy在進(jìn)行,可以理解為是代理服務(wù)器在地址欄中輸入域名等!?????????? 客戶端的Proxy代理設(shè)置
????????? 說明:這里以Firefox瀏覽器為案例
Edit-->Preferences-->Advice-->Network-->Settings-->Manual-->代理服務(wù)器的IP-->Port說明:最好勾選所有的!
4)測(cè)試
說明:ping www.baidu.com仍然無法ping通,因?yàn)?span style="color:#3399ea;">走的不是代理!
強(qiáng)調(diào):客戶端利用的是Proxy的緩存來訪問!
現(xiàn)象2:同一個(gè)網(wǎng)頁(yè)第二次的快,緩存的原因!
說明:省略了VPN(利用運(yùn)營(yíng)商來模擬網(wǎng)線的連接)!
二、Apach的反向代理
概念:客戶端是無感知代理的存在的,反向代理對(duì)外都是透明的,訪問者并不知道自己訪問的是一個(gè)代理
特點(diǎn):因?yàn)榭蛻舳瞬恍枰魏闻渲镁涂梢栽L問!
反向代理(Reverse Proxy)實(shí)際運(yùn)行方式是指以代理服務(wù)器來接受internet上的連接請(qǐng)求,然后將請(qǐng)求轉(zhuǎn)發(fā)給內(nèi)部網(wǎng)絡(luò)上的服務(wù)器,并將從服務(wù)器上得到的結(jié)果返回給internet上請(qǐng)求連接的客戶端,此時(shí)代理服務(wù)器對(duì)外就表現(xiàn)為一個(gè)服務(wù)器。
需求引入:
??? 騰訊服務(wù)器大本營(yíng)在深圳,作為西安的一名騰訊游戲的資深玩家,我如果連接騰訊的服務(wù)器,勢(shì)必要經(jīng)過路由(NAT地址轉(zhuǎn)換耗費(fèi)時(shí)間),并且由于自己是以電話線連接,帶寬太慢,感覺老實(shí)卡頓!
?騰訊解決思路:在西安設(shè)立幾臺(tái)服務(wù)器,但是我不知道,因?yàn)檫B接的是深圳的服務(wù)器,其實(shí)是本地的服務(wù)器,但是體驗(yàn)更好!
模擬
(1)server作為反向代理服務(wù)器(騰訊放在西安的服務(wù)器) -->shenzhen.qq.com(2)desktop作為資源主機(jī)(騰訊在深圳大本營(yíng)服務(wù)器) -->xian.shenzhen.qq.com(3)客戶端(真機(jī)-->西安本地的用戶) -->clent.qq.com目標(biāo):真機(jī)訪問server的資源!案例:買煙(腿長(zhǎng)短)測(cè)試1:先測(cè)試客戶端能不能直接訪問遠(yuǎn)程服務(wù)器端
客戶端:測(cè)試成功!
測(cè)試2:
說明:必須重啟服務(wù),systemctl restart squid,在這里犯了錯(cuò)誤,代理服務(wù)器的防火墻開著的!
安裝了Apach服務(wù)器的沒有安裝代理服務(wù)器,安裝了代理服務(wù)器的沒有安裝Apach服務(wù)器!
核心:中間服務(wù)器必須開啟80端口,加到防火墻上!
http_port 80 vhost vport [使用http主機(jī)作為虛擬主機(jī)]cache_peer IP(深圳服務(wù)器的IP) parent(資源主機(jī)) 80(訪問的端口) 0(沒有備用的服務(wù)器) proxy-only(只作為代理服務(wù)器,不作為Web服務(wù)器)說明:如果遠(yuǎn)程服務(wù)器的防火墻開啟會(huì)出現(xiàn)如下的情況,建議關(guān)閉防火墻測(cè)試或者將http服務(wù)加到防火墻上
原理:客戶端去訪問代理服務(wù)器的IP,代理服務(wù)器會(huì)去騰訊總部去取數(shù)據(jù),拿到squid緩存中,供客戶端訪問!
三、正向代理和反向代理的區(qū)別
相關(guān)參考
三、論壇的搭建
總結(jié)
以上是生活随笔為你收集整理的Linux中级(六)Proxy服务器的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: fir1截止频率计算_请教一下关于FIR
- 下一篇: linux下载nginx