centos上使用squid+stunnel代理上网

环境准备:服务端centos7海外服务器1台安装squid,客户端centos内网服务器一台安装stunnel,可以是你的工作网络

服务端安装squid

1.安装squid

yum install squid openssl openssl-devel
cd /etc/squid 
openssl req -new > tank.csr //要求输入密码和确认密码 
openssl rsa -in privkey.pem -out tank.key //输入上面输入的密码 
openssl x509 -in tank.csr -out tank.crt -req -signkey tank.key -days 3650 

2.配置squid

vi /etc/squid/squid.conf 
#####增加如下内容
acl OverConnLimit maxconn 10 //限制每个IP最大允许10个连接,防止攻击 

cache_swap_low 10 //最小允许使用swap 10% 
cache_swap_high 25 //最大允许使用swap 25% 
cache_mem 300 MB //可使用内存 

#####修改内容 
cache_dir ufs /var/spool/squid 2048 16 256 //2048存储空间大小,一级目录16个,二级256个 
https_port 4430 cert=/etc/squid/tank.crt key=/etc/squid/tank.key //端口可自定义 
http_access allow all 

3.启动squid

squid -z
squid start

4.客户端安装stunnel

yum install stunnel 
vi /etc/stunnel/stunnel.conf
client = yes 
fips = no 
[https] 
accept = 30898
connect = squid的IP:4430

5.启动stunnel

stunnel //启动,默认配置文件路径 /etc/stunnel/stunnel.conf 

5.添加认证用户yang19

htpasswd -c /etc/squid/passwd yang19
# vim /etc/squid/squid.conf //添加以下内容 
auth_param basic program /usr/lib64/squid/ncsa_auth /etc/squid/passwd //认证方式为basic,认证程序路径和密码文件路径 
auth_param basic children 5 //认证程序的进程数 
auth_param basic credentialsttl 1 hours //认证有效时间 
auth_param basic realm my test prosy //浏览器显示输入用户/密码对话框时,显示的内容 
acl test123 proxy_auth REQUIRED 
http_access allow test123 //普通用户需要通过认证才能访问 
http_access deny all //最下面,匹配是从上到下的 

安装之后在浏览器设置代理即可:内网客户端ip:30898

shell代理上网配置:
在 ~/.bashrc里添加如下语句则有代理,取消之,则无。

proxy有密码方式:
export http_proxy=http://username:passwd@proxyip:port
export https_proxy=http://username:passwd@proxyip:port
proxy无密码方式
export http_proxy=http://proxyip:port
export https_proxy=http://proxyip:port

编辑之后注意需要打开新的终端设置才会生效!!!

你可能感兴趣的:(centos上使用squid+stunnel代理上网)