网页如何不用登录可以看(突破网络限制访问音乐网站)

当您在工作时想查些资料,正好这些资料是视频或音乐形式的. 咦为啥打不开,但是手机4G/5G可以打开呀, 原来是办公网络限制访问了视频音乐等网站.用手机多费电,还费流量,还不方便.

突然想到家里的宽带网速也挺快的.要是在公司也能用家里宽带就好了…满足你,这就是今天要说的正向代理, 上原理图:正常工作时的网络是这样的

网页如何不用登录可以看(突破网络限制访问音乐网站)(1)

图1

一.架设代理

我们使用代理后是这样的.

网页如何不用登录可以看(突破网络限制访问音乐网站)(2)

图2

代理软件有很多,比如squid,goProxy等.squid主要是http的代理比较局限.无论是goProxy还是squid配置起来都比较麻烦

本次采用我基于go-socks5实现的,使用简单不用配置,不记日志,默认端口8000,启动时可加-p参数修改.

下载地址: 链接: https:///s/108_3fGP14o8REfRJBtZE4g 提取码: w93c

1.1 启动服务端

在上边 图1 中右侧,服务端操作, 进入mysocks5所在的目录,运行

./mySocks -p 7777

1.2 客户端配置代理

在上边 图1 中左侧,PC端操作.使用chrome或火狐浏览器.下载SwitchyOmega插件 https://proxy-switchyomega.com/download/ ,用于连接服务端的代理进行上网.安装后新增情景模式参考如下:

网页如何不用登录可以看(突破网络限制访问音乐网站)(3)

服务端的IP地址为公网IP.如果没有,请往下滑参考最底部的附言

并在浏览器的右上角启用

网页如何不用登录可以看(突破网络限制访问音乐网站)(4)

1.3 测试

打开网址 cip.cc看显示的IP是不是服务端的IP. 惊不惊喜,意不意外!

二.加密代理请求,突破限制

别着急,完成上面的步骤后,仅是用代理换了个IP上网,发现视频音乐网站依然上不去,这是为什么呢.因为是明文的请求,那么把所有请求加密下就可以了么? 对, 并且要在代理服务端解密,原理图如下:

网页如何不用登录可以看(突破网络限制访问音乐网站)(5)

图3

说到这个连接加密就不得不提Stunnel了,主要用于隧道加密. 上图中淡蓝色背景即是它完成的功能.客户端对数据进行加密,服务端对数据解密,然后再走代理.

2.1 下载

stunnel下载地址, https://www.stunnel.org/downloads.html如果是Linux 建议用yum或apt安装,mac建议用brew安装. 因为这个下载的是源码(win可以直接安装),需要编译安装.安装后的Stunnel即可以是客户端也可以是服务端, 只是配置文件不一样

2.2 配置并启动服务端

这里配置实现的是上边 图3 中右侧淡蓝色背景部分

2.2.1 生成自签名证书

这里推荐使用mkcert,下载地址 https://github.com/FiloSottile/mkcert/releases

用它不需要一堆复杂的参数.非常简单,执行如下两条命令

./mkcert -install

./mkcert testxxx.com

会生成两个文件,一个cert(testxxx.com.pem),一个key(testxxx.com-key.pem).

2.2.2 配置文件(默认在/etc/stunnel目录下)

; **************************************************************************

; * Global options *

; **************************************************************************

; It is recommended to drop root privileges if stunnel is started by root

setuid = stunnel4

setgid = stunnel4

; PID file is created inside the chroot jail (if enabled)

pid = /var/run/stunnel4/stunnel.pid

debug = info

output = /var/log/stunnel4/stunnel.log

[socksProxy]

accept = 6666

connect = 7777

cert = /etc/stunnel/testxxx.com.pem

key = /etc/stunnel/testxxx.com-key.pem

注* pid的文件目录必须存在,且属主属组均是setuid和setgid设定的stunnel4,

accept 是要暴露到公网的端口,防火墙中放行

connect 是解密数据要连接的代理的端口

cert和key设置为上一步生成的证书

2.2.3 启动服务

stunnel4 /etc/stunnel/stunnel.conf

不确定是否启动成功可用命令查看 ps -ef|grep stunnel

2.3 配置并启动客户端

这里配置实现的是上边 图3 中左侧淡蓝色背景部分.

2.3.1 配置文件

; It is recommended to drop root privileges if stunnel is started by root

; PID file is created inside the chroot jail (if enabled)

pid = /usr/local/var/run/stunnelSocks.pid

[socksProxy]

client = yes

accept = 5555

connect = testxxx.com:6666

verifyChain = no

client 客户端一定要为yes

accept 客户端的代理端口也就是SwitchyOmega连接的端口.

connect 服务端的公网IP及端口

verifyChain 可以先为no, 后续玩转了再深究

2.3.2 启动服务

stunnel4 /etc/stunnel/stunnel.conf

如果是windows客户端的就更简单的,直接有界面.

2.4 测试

参考1.2中的SwitchyOmega插件配置, 把代理地址设置为localhost,端口设置为5555, 并启用代理后.

打开网址 cip.cc

看显示IP是否为服务端的IP.

实际打开视频音乐网站. 搞定!

如果你的服务端部署在阿里云或亚马逊云的国外服务器, 科学上网也是一样的道理,在此不再深究!

附言:

要完成上述功能,需要在公网上暴露出Stunnel的服务端端口,如果家中宽带无公网IP且不想拥有,可参考<<没有公网IP的机器如何能被外网访问>>

如果想拥有公网IP参考<<如何拥有自己的公网IP>><<免费域名申请(一) >><<免费域名申请(二) >><<如何通过外网访问家中闲置的电脑>>

只要你的机器暴露到公网就可能会面临网络攻击.可参考<<如何对服务器进行安全加固>>

-----------------end-----------------

欢迎大神补充指正! 如有疑问请留言!

原创不易,感谢各位 关注、点赞、评论、转发 !

,

免责声明:本文仅代表文章作者的个人观点,与本站无关。其原创性、真实性以及文中陈述文字和内容未经本站证实,对本文以及其中全部或者部分内容文字的真实性、完整性和原创性本站不作任何保证或承诺,请读者仅作参考,并自行核实相关内容。文章投诉邮箱:anhduc.ph@yahoo.com

    分享
    投诉
    首页