前言:筆者使用的長城寬帶,訪問國外網站,比如mysql,nginx等站點的速度.......,你懂得,於是想到使用騰訊雲主機搭建squid代理服務器,這里搭建的是一般代理服務器,squid代理服務器分為三種,后面有時間再慢慢研究,步驟如下:
1、 源碼安裝或者rpm安裝Squid
我這里使用源碼安裝
tar -xf squid-3.5.24.tar.gz
編譯時未指定任何參數,默認安裝目錄/usr/local/squid,安裝步驟不再贅述。
2、 新建用戶
useradd -g nobody -r squid
chown -Rf squid:nobody /usr/local/squid
chown -Rf nobody /usr/local/squid/var/cache/
chown -Rf nobody /usr/local/squid/var/logs/
3、配置squid
vim /usr/local/squid/etc/squid.conf
cache_dir ufs /usr/local/squid/var/cache/squid 100 16 256
coredump_dir /usr/local/squid/var/cache/squid
cache_mem 60 MB
dns_nameservers 8.8.8.8
http_port 3128
http_access allow all
4、 初始化squid
/usr/local/squid/sbin/squid -z
啟動squid
/usr/local/squid/sbin/squid
5、 瀏覽器使用代理,驗證http代理是否正常。
6、 配置https代理
申請證書
- openssl req -new -keyout /usr/local/squid/etc/key.pem -nodes -x509 -days 365 -out /usr/local/squid/etc/cert.pem
squid.conf添加:
https_port 443 cert=/usr/local/squid/etc/cert.pem key=/usr/local/squid/etc/key.pem transparent
瀏覽器ssl代理也為IP 3128,進行訪問驗證。
7、 訪問權限控制
我是在騰訊雲搭建代理服務器,代理公用顯然不合適,簡單起見,設置賬戶控制訪問;
htpasswd -c /usr/local/squid/etc/passwd username
然后輸入密碼即可
squid.conf添加:
auth_param basic program /usr/local/squid/libexec/basic_ncsa_auth /usr/local/squid/etc/passwd
acl auth_user proxy_auth REQUIRED
http_access allow auth_user #注意上面的all 改為auth-user
瀏覽器重新訪問驗證
輸入密碼訪問即可
查看日志會發現,https請求日志類似下面格式: