手机版 | 登陆 | 注册 | 留言 | 设首页 | 加收藏
当前位置: 网站首页 > DNS/邮件 > 文章 当前位置: DNS/邮件 > 文章

Debian 编译安装 SNI Proxy 反向代理教程(可用于Hosts/DNS服务器)

时间:2018-11-13    点击: 次    来源:网络    作者:佚名 - 小 + 大

系统要求

本教程只适用于 Debian7 / 8 系统,其他系统都不适用。

安装SNI Proxy依赖需要 最少150MB大小的空间,所以请确保你的系统硬盘空闲空间有 300MB。

简单说明

SNI Proxy 简单的来说是一个 反向代理软件,可以把你的请求原封不动的发送给指定网站,然后再把指定网站返回的数据原封不动的返回给你,目前网上可以 科学上网的Hosts和DNS,都是通过把 谷歌等域名指向 SNI Proxy代理的IP来实现“直连”访问谷歌的,所以在某种程度上,SNI Proxy承担一个流量数据搬运工的作用。

因为 Hosts和DNS科学上网,都必须使用 https 来访问,所以过程都是加密的,而SNI Proxy只会原封不动的把流量转发过去,所以不会去解密(也不能),也就不需要担心安全问题了。

SNI Proxy Github项目:https://github.com/dlundquist/sniproxy

安装步骤

安装依赖

首先为了确保依赖安装正常、完整,我们需要更换系统 软件包源为最新的稳定源 jessie (本步骤必做,否则很容易出错)。

默认下面的代码是 美国的镜像源,可以更换下面代码 us.sources.list 中的 us ,具体可以看这里

  1. rm -rf /etc/apt/sources.list && wget -N --no-check-certificate -O "/etc/apt/sources.list" https://raw.githubusercontent.com/ToyoDAdoubi/doubi/master/sources/us.sources.list

注意:这个更换 镜像源的步骤,Debian 8、Debian 9 不需要执行,可以直接跳过,Debian 7 必须执行!

然后我们更新软件包列表,并开始安装依赖

  1. apt-get update
  2. apt-get install autotools-dev cdbs debhelper dh-autoreconf dpkg-dev gettext libev-dev libpcre3-dev libudns-dev pkg-config fakeroot devscripts build-essential unzip -y
  3. # 安装依赖会很大,可能会有 100-300MB大小,所以一开始的镜像源一定要选近的,否则会很慢。
  1. # 在安装过程中可能会提示如下内容,选择 Yes 即可。
  2. ======================== Configuring libc6:amd64 ========================
  3. x ....... x
  4. x ....... x
  5. x Restart services during package upgrades without asking? x
  6. x x
  7. x Yes No x
  8. x x
  9. =========================================================================

安装SNI Proxy

  1. mkdir sniproxy && cd sniproxy
  2. # 新建一个 SNI Proxy文件夹并进入
  3.  
  4. wget -N --no-check-certificate https://github.com/dlundquist/sniproxy/archive/master.zip
  5. # 下载 SNI Proxy 最新软件包
  6.  
  7. unzip master.zip && cd sniproxy-master
  8. # 解压 SNI Proxy 软件包并进入解压后的文件夹
  9.  
  10. ./autogen.sh && dpkg-buildpackage
  11. # 开始构建 deb 包
  12.  
  13. sniproxy_deb=$(ls ..|grep "sniproxy_.*.deb") && echo ${sniproxy_deb}
  14. # 获取构建后的 deb 包的文件名,正常情况下会返回一个类似于 sniproxy_0.X.X_amd64.deb 这样的文件名
  15.  
  16. [[ ! -z ${sniproxy_deb} ]] && dpkg -i ../${sniproxy_deb}
  17. # 判断获取的文件名是否为空,如果不为空就 安装 deb 包。

最后安装完毕,我们可以用 sniproxy -V 来查看是否安装成功,正常情况下会返回版本号。

安装完毕之后,还需要配置一下配置文件,才能使用,具体看这个教程:一个 反代无需证书 适用于DNS/Hosts的小工具 —— SNI Proxy代理 安装教程

DNS服务搭建教程:

  1. 『原创』快速自建DNS服务器以 科学上网+屏蔽广告 —— dowsDNS 一键脚本
  2. Linux 使用 dowsDNS 快速自建DNS服务器以 科学上网+屏蔽广告
  3. Linux 自建DNS 并使用SNI Proxy实现科学上网 —— DNSmasq配置教程

使用说明

启动:/etc/init.d/sniproxy start(如果运行无反应并没有启动,那么请直接使用 sniproxy 来启动试试)

停止:/etc/init.d/sniproxy stop

重启:/etc/init.d/sniproxy restart

查看状态:/etc/init.d/sniproxy status

配置文件:/etc/sniproxy.conf

通过 dpkg -S sniproxy 命令可以查询 SNI Proxy 的所有安装文件。

运行优化说明

建议在运行 SNIProxy前,执行一下这个命令,作用是提高系统的文件符同时打开数量,对于TCP连接过多的时候系统默认的 1024 就会成为速度瓶颈。

  1. ulimit -n 51200

这个命令只有临时有效,重启后失效,如果想要永久有效,请执行:

  1. echo "* soft nofile 51200
  2. * hard nofile 51200" >> /etc/security/limits.conf

然后最后再执行一下 ulimit -n 51200 即可。

添加开机启动

  1. update-rc.d -f sniproxy defaults

取消开机启动

  1. update-rc.d -f sniproxy remove

卸载SNI Proxy

  1. apt-get remove --purge sniproxy

上一篇:Linux 自建DNS 并使用SNI Proxy实现科学上网 —— DNSmasq配置教程

下一篇:一个 反代无需证书 适用于DNS/Hosts的小工具 —— SNI Proxy代理 安装教

推荐阅读
快乐是福    备案号: 陕ICP备17022982号-2