Linux配置http代理(原理)
我們可以在很多地方設(shè)置Proxy,生產(chǎn)環(huán)境中最常見(jiàn)的還是在應(yīng)用中直接調(diào)用一些庫(kù)來(lái)為應(yīng)用設(shè)置Proxy,但在測(cè)試Proxy的時(shí)候,就需要用到系統(tǒng)全局的Proxy設(shè)置以及部分應(yīng)用的Proxy
常見(jiàn)的Proxy一般就兩種,Socks和HTTP,HTTP是一種七層代理,而Socks則是封裝過(guò)后的四層代理
顧名思義,HTTP只能代理HTTP協(xié)議的流量,Socks則只接受Socks封裝過(guò)的流量,對(duì)于大部分Web應(yīng)用,我們會(huì)部署HTTP代理,因?yàn)槿绻?jīng)過(guò)了Socks封裝,前置在應(yīng)用和代理服務(wù)器之間的防火墻就無(wú)法看到URL了(你可能會(huì)奇怪防火墻為什么不是在最外面,事實(shí)上這里的防火墻專用于URL過(guò)濾,放在代理服務(wù)器外側(cè)也可以,但如此一來(lái),防火墻將看不到真正的源主機(jī)的地址,而只能看到代理服務(wù)器的地址了)
而對(duì)于無(wú)法通過(guò)HTTP代理的協(xié)議,比如SSH和SFTP,就需要用到Socks代理了
使用Socks代理,和使用的Socks Server有一定的相關(guān)性,日常大家用的最多的Socks代理是**************************,不過(guò)我們?cè)谝恍┉h(huán)境中不會(huì)使用這么麻煩的,Dante Socks就是一個(gè)比較好的選擇
Windows以及部分瀏覽器(例如Firefox)可以設(shè)置Socks代理,Linux全局下似乎無(wú)法設(shè)置,但是一些其他方法可以在不安裝Socks客戶端的情況下使用Socks代理
全局代理
在/etc/profile下增加下列配置即可設(shè)置HTTP/HTTPS/FTP代理
如果要全局用戶使用應(yīng)用于所有的Shell,就需要修改 /etc/profile 文件
代理服務(wù)開(kāi)啟
設(shè)置全局代理,需要編輯profile文件
vi /etc/profile文末添加以下代理配置,參考代理是否需要用戶名密碼
#無(wú)用戶名密碼 export http_proxy=http://proxy_ip:prot export https_proxy=https://proxy_ip:prot#有用戶名密碼 export http_proxy=http://username:password@proxy_ip:prot export https_proxy=https://username:password@proxy_ip:port export ftp_proxy=http://username:password@proxyserver:port如
export http_proxy=http://192.168.64.1:1080 export https_proxy=http://192.168.64.1:1080# 或者建議這樣配置 http_proxy=proxy.abc.com:8080 https_proxy=$http_proxy ftp_proxy=user:password@proxy.abc.com:8080 no_proxy=*.abc.com,10.*.*.*,192.168.*.*,*.local,localhost,127.0.0.1 export http_proxy https_proxy ftp_proxy no_proxy其中:
- http_proxy:http協(xié)議使用代理服務(wù)器地址;
- https_proxy:https協(xié)議使用安全代理地址;
- ftp_proxy:ftp協(xié)議使用代理服務(wù)器地址;
- user:代理使用的用戶名;
- password:代理使用用戶名的密碼;
- proxy.abc.com:代理地址,可以是IP,也可以是域名;
- 8080:使用的端口;
- no_proxy:不使用代理的主機(jī)或IP。
備注:
| http_proxy | 為http變量設(shè)置代理;默認(rèn)不填開(kāi)頭以http協(xié)議傳輸 | 10.0.0.51:8080 user:pass@10.0.0.10:8080 socks4://10.0.0.51:1080 socks5://192.168.1.1:1080 |
| https_proxy | 為https變量設(shè)置代理; | 同上 |
| ftp_proxy | 為ftp變量設(shè)置代理; | 同上 |
| all_proxy | 全部變量設(shè)置代理,設(shè)置了這個(gè)時(shí)候上面的不用設(shè)置 | 同上 |
| no_proxy | 無(wú)需代理的主機(jī)或域名; 可以使用通配符; 多個(gè)時(shí)使用“,”號(hào)分隔; | *.aiezu.com,10.*.*.*, 192.168.*.*,*.local,localhost,127.0.0.1 |
| 1、在/etc/profile文件 | ||
| 2、在~/.bashrc | ||
| 3、在~/.zshrc | ||
| 4、在/etc/profile.d/文件夾下新建一個(gè)文件xxx.sh |
寫入如下配置:
export proxy="http://192.168.5.14:8118" export http_proxy=$proxy export https_proxy=$proxy export ftp_proxy=$proxy export no_proxy="localhost, 127.0.0.1, ::1"而對(duì)于要取消設(shè)置可以使用如下命令,其實(shí)也就是取消環(huán)境變量的設(shè)置:
unset http_proxy unset https_proxy unset ftp_proxy unset no_proxy此方法只適合配置http代理,使用socket代理上網(wǎng)的另有其他配置方法。
生效配置文件
source /etc/profile . /etc/profile查看當(dāng)前已設(shè)置代理
echo $http_proxy echo $https_proxy測(cè)試
因?yàn)?/p>
subversion的代理服務(wù)器配置
要配置subversion的代理服務(wù)器,需要修改$HOME/.subversion/servers文件,在此文件的[global]段加上:
http-proxy-host = 192.168.1.1 http-proxy-port = 8080 http-proxy-username = easwy http-proxy-password = 123456現(xiàn)在svn就可以使用代理服務(wù)器訪問(wèn)版本庫(kù)了。
yum的代理服務(wù)器配置
針對(duì)yum配置走代理:
經(jīng)過(guò)測(cè)試其實(shí)只要設(shè)置上面的變量之后已經(jīng)可以走代理了,但如果要單獨(dú)設(shè)置,可以設(shè)置如下文件的變量:
如果想讓CentOS中的yum可以通過(guò)代理服務(wù)器更新程序,則需要修改文件/etc/yum.conf,在此文件中加上:
proxy=http://easwy:123456@192.168.1.1:8080https://blog.csdn.net/weixin_34378969/article/details/94684696
總結(jié)
以上是生活随笔為你收集整理的Linux配置http代理(原理)的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: DTOJ3026 geronimo
- 下一篇: linux服务器系统时间和bios时间,