CentOS搭建http代理(轉)


一、配置:
一台centos雲服務器:

主要說下我這里的一些搭建的問題,centos的系統版本不要選的太高,不然可能設置不成功。

我這里的是設置CentOS7.2 位系統的linux阿里雲服務器。
重要的事情說三遍(不然肯定踩坑,我搞了第三天才找到原因,才弄出來):CentOS7.2 位系統的linux阿里雲服務器,CentOS7.2 位系統的linux阿里雲服務器,CentOS7.2 位系統的linux阿里雲服務器

吐槽一下啊,之前是用的是centos8系統,結果就是搭建不成功,然后我正好設置socks5嘗試,結果還是不行,偶然看到一個文章說需要7.2 centos系統,我更換系統之后,然后再搜些文章,測試就成功了搭建sock5,然后想着squid搭建http不成功是不是也是系統版本的原因,然后我就用我自己的服務器測試,結果還真是系統的原因,我自己的系統更換為7.2的搭建sock5和http都成功了。

步驟:

1、安裝openssl

判斷是否安裝openssl:

openssl version -a

如果出現下面的界面,說明已經安裝,然后不用再安裝:

 

 

 安裝命令:

yum install openssl

2、安裝squid

安裝命令:

yum install squid -y
# -y 代表自動選擇y,全自動安裝

3、安net-tools

安裝命令:

yum install net-tools

4、修改squid的配置文件squid.conf

①、修改端口號

參考配置內容:

cat /etc/squid/squid.conf

默認是3128的端口號,建議修改,防止人家掃描代理被分享

 

 

 

使用vi修改配置文件,找到上面端口號的位置,我這里改為6128

vi /etc/squid/squid.conf

改好端口號:

 

 

 

默認squid的access日志里的時間為unix時間戳,不方便閱讀,可以通過在 /etc/squid/squid.conf 增加一行logformat配置:

#此行加在配置文件末尾即可
#access log time human-readable
logformat squid %tl.%03tu %6tr %>a %Ss/%03>Hs %<st %rm %ru %un %Sh/%<A %mt

②、開啟防火牆

netstat -tunpl

 

 

開啟squid的端口號並且重新啟動:

firewall-cmd --zone=public --add-port=6128/tcp --permanent
firewall-cmd --reload

然后再執行上面開啟squid的端口號6128(你的根據自己的設置進行更改)

5、啟動squid

systemctl start squid

查看進程:

netstat -tunpl

 

 

 

6、本機代理訪問:

本機代理訪問

curl -x 127.0.0.1:6128 www.baidu.com

說明初步配置代理成功了。但是使用自己電腦還不能使用這個代理。

 

 

 

7、修改支持所有代理訪問(使用)

編輯squid的配置文件,在http_access deny all的前面添加倆行:

acl client src 0.0.0.0/0
http_access allow client

可以把下圖的中的http_access deny all 直接注釋
如果修改並且保存:

 

 

 然后重新啟動squid:

systemctl restart squid

這個時候可以使用代理了,但是會是透明代理,需要設置用戶名和密碼,增強代理的可用性,防止被隨意掃描使用,也可以加些設置字段,然后弄成高匿的代理。

8、設置用戶名+密碼

①、設置密碼文件

#設置密碼
yum -y install httpd-tools
touch /etc/squid/passwd && chown squid /etc/squid/passwd

②、創建用戶密碼

#創建用戶密碼
htpasswd /etc/squid/passwd yourusername

執行命名(yourusername就是代理的用戶名)之后,倆次輸入密碼(代理的密碼)

 

 

 

③、更改配置文件:

vi /etc/squid/squid.con
#在配置文件的acl代碼塊下添加
auth_param basic program /usr/lib64/squid/basic_ncsa_auth /etc/squid/passwd
auth_param basic children 5
auth_param basic realm Squid Basic Authentication
auth_param basic credentialsttl 2 hours
acl auth_users proxy_auth REQUIRED
http_access allow auth_users
#添加
http_access allow all
#或注釋掉
http_access deny all

④、重啟服務squid:

systemctl restart squid

這個時候可以使用用戶名的代理進行測試了。

我這里使用的是谷歌的一個插件SwitchyOmega

然后訪問:http://httpbin.org/ip

 

 

 

從結果中可以看出 、即使設置了用戶+密碼,http的代理依然不是高匿的,前面就是我的本機代理,后面是代理ip,還是不好,下面需要在配置中設置一下即可。

9、把代理設置為高匿的代理:

vi /etc/squid/squid.conf

在配置的文件中后面加入這些自段即可。

request_header_access X-Forwarded-For deny all
request_header_access From deny all
request_header_access Via deny all

更改配置文件之后記得保存:
然后重啟:

systemctl restart squid

然后再次訪問:http://httpbin.org/ip

 

 這個時候,即可變成高匿的代理。

10、設置開機自啟動:

systemctl enable squid

 

轉自:https://blog.csdn.net/weixin_42081389/article/details/105405148

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM