今天研究了一下如何在CentOS上部署Squid代理服務器並可加密訪問,之前歷來沒接觸過,這裏記錄一下。
具體需求以下:java
yum install squid
爲了達到綁定B的IP,須要修改配置文件,在/etc/squid/squid.conf,添加兩行:git
acl server_b src <A的外網IP> ... http_access allow server_b
squid
squid -k reconfigure
curl -x localhost:<代理端口> https://httpbin.org/get?showenv=1
在服務器B的shell下執行:github
ssh -C -N -f -L 0.0.0.0:<B的本地端口>:<服務器A的IP>:<A的代理端口> root@<A的主機名或IP>
若是須要關閉隧道,直接殺掉ssh進程便可:shell
ps -ef | grep <本地端口>
找到進程PIDkill -9 <PID>
便可關閉隧道用curl驗證代理及隧道是否生效:服務器
curl -x <B的外網IP>:<B的本地端口> https://httpbin.org/get?showenv=1
至此,已初步達到目的ssh
ssh-keygen -t rsa
,在後面的交互式界面中不要設定密鑰的密碼cat /root/.ssh/id_rsa.pub
,複製公鑰內容/root/.ssh/authorized_keys
,把B的公鑰文本粘貼到最後,確保獨佔一行,保存ssh -L ...
命令時,就不須要輸入密碼了