显示标签为“over wall”的博文。显示所有博文
显示标签为“over wall”的博文。显示所有博文

2017年10月17日星期二

翻墙协议的三要素

上一篇文章介绍了从用户的角度如何理解翻墙工具,这次我们来讨论一下从工程的角度如何理解翻墙协议,每个翻墙协议有什么差别。
首先,我们来设定一个概念:一个代理(翻墙)协议可能具备的三要素。
一、传输:能在 A、B 两个主机之间建立一条安全可靠的通信通道,用于传输数据;
二、协议:对于将要传输的数据,能将这些数据的目的地告知代理服务器;
三、内容:可以对传输的数据进行优化,比如压缩、合并等。
任何一个翻墙协议都具备以上三要素中的几个或全部。
文字可能较难理解,我们来举一个简单的例子:Socks 协议。Socks 只具备协议要素,即告知代理服务器要把数据发送到哪里去,以达到代理的目的。但众所周知单纯的 Socks 不具备翻墙能力,因为它不能建立可靠的通道(即会被墙)。于是就有了 Shadowsocks。Shadowsocks 在 Socks 的基础上增加了传输要素,对数据加了密,使墙无法分析其内容。而 Shadowsocks 不具备内容要素,因为对于客户端的发来的内容,Shadowsocks 不进行任何修改,直接发送给了代理服务器。
在翻墙过程中,我们可能会使用几个协议的组合,比如 Shadowsocks + KcpTun。无论我们怎么组合,所产生的结果,必须包含传输要素和协议要素,才可以进行可靠的翻墙。
为什么不能单独使用 KcpTun 来翻墙,因为 KcpTun 只有传输+内容要素。KcpTun 只能建立连接,对内容进行一定的处理,比如加密以及其内置的 mux 模式。但它不能发送数据的实际目的地,导致了一定要再套一个其它协议才可以用于翻墙。
而在 Shadowsocks (传输+协议) + KcpTun (传输+内容) 的场景中,由于两者都有传输要素,重复了,以至于 Shadowsocks 的加密在这个场景中多余。因为 KcpTun 已经有加密了,Shadowsocks 再多加一层也没用。
这也就是 ShadowsocksR 最近的几个协议推荐使用不加密的原因。
ShadowsocksR 本质上是对 Shadowsocks 进行了一层封装,即 Shadowsocks + X。这个 X 包含了对协议要素的扩(单端口多用户多种加密方式),加强了传输要素(伪装和其它的加密方式)。和 Shadowsocks + KcpTun 同理,Shadowsocks 本身的传输要素就显得不那么重要了。
而 Shadowsocks 最近也加强了传输要素,即 obfs plugin。两者在要素这一层面相差无几,这也是为什么很多人不认为 ShadowsocksR 之于 Shadowsocks 有很大改进的原因。
顺便整理一下常用协议所具备的要素,仅供参考:
  • HTTP/1.1: 协议
  • HTTP/2 (不带 TLS): 协议+内容
  • TLS: 传输
  • Shadowsocks: 传输+协议。AEAD 只是强化了传输,并没有添加新的要素。
  • ShadowsocksR: 传输+协议
  • KcpTun: 传输+内容
  • GoProxy: 等价于 HTTP/2 + TLS,即传输+协议+内容
  • VMess (V2Ray): 传输+协议
  • mKCP (V2Ray): 传输
  • WebSocket (V2Ray): 传输
  • Mux (V2Ray): 协议+内容
当然,一个翻墙协议的效率和它具备几个要素没有半点关系。以上这些内容只是帮助大家理解每个翻墙协议的侧重点,哪些组合是有意义的,哪些是没有意义的。一个协议组合首先要有意义,其次才能探讨它的效率。
来源:https://steemit.com/cn/@v2ray/unzev

2017年9月11日星期一

科学上网的注意事项及相关法律(必读)

现在国内的网络自由受到了限制,很多人都会去科学上网,但我观察后发现这批人中有一部分是有反共心理的,出去后就一直诋毁、散播谣言之类的。虽然我对网络限制很厌恶,但是不代表我的政治立场。

前言

因为很重要,所以放到最前面!

科学上网必清CNNIC根证书,否则你在科学上网的时候他会一直粘着你,你会成为GFW的DDOS的肉鸡,并且他可能还会导致你的VPN、SS被封!所以必须要清除,否则你永远无法安心科学上网!详细介绍及清除方法

关于 安全卫士/杀毒软件/浏览器 等说明

各种国产杀毒/安全卫士和360/百度浏览器等软件都不能使用!简单给你们解释一下为什么。

安全卫士和杀毒软件,常常会在你访问 有病毒/木马网站 或者 嘿嘿嘿的网站的时候,突然弹窗提醒你这个网站不安全什么的。

他为什么知道这个网站不安全?因为他在监视你的一举一动,这很容易。

然后明知道国内在正常途径是不可能访问Google等网站,结果你突然 访问了Google等被墙的网站,那 安全卫士/杀毒软件 又不是傻子,自然知道你在使用代理或者VPN等方式科学上网。

杀毒软件和安全卫士都会以保护电脑不被侵害的理由监控电脑的一举一动,一旦你使用了vpn,他就可以检测到你正在使用vpn,虽然他无法知道你的传输数据,但是只要知道你在使用vpn就够了,然后再查询下你的ip就可以后台上传信息了,或许很快你的vpn的ip就被封了!

浏览器同样也是,比如你访问了国内根本不可能通过正常途径访问的网站(Google、Youtube),这样子浏览器肯定就知道你用了代理或者vpn,然后就会查一下ip然后上传信息,同样就会被封。

还有一些浏览器都有的同步数据功能,鬼知道他会不会借着同步你的数据作掩护去上传你的某些隐私和科学上网证据,反正加密了。对外声称这是在同步数据,骗过了大部分人。而且就算你关闭,他或许也会换个其他的理由继续上传,反正只要是个浏览器总不能禁止上传流量吧。

很多人会说:“我用了360安全卫士和360浏览器也没见到我的vpn/ss被封啊?”这只能说是时候未到,我们不应该把自己的vpn/ss安全寄托到不靠谱的希望上!我们要未雨绸缪,在问题出现前清除隐患!

大数据时代,就是要尽一切可能的收集任何用户的资料信息。


保护个人隐私信息细节 尽可能远离国内网络平台和服务

360浏览器、百度浏览器等国内浏览器官方内置的科学上网功能都不支持使用,这些代理很可能会被用于中间人攻击。如果该“中间人”与浏览器官方同一阵线,那么浏览器验证机制就会放行这种攻击。国内产浏览器也不推荐使用,有用户透露,360浏览器在安装的过程中就引发了win7系统报警,证明该程序有规避认证的行为。全球三大桌面浏览器在隐私保护方面的比较一般认为,Firefox最优,其次是Chrome/Chromium,再其次是IE。

发照片自爆是很多网友的喜好,但经常发表敏感政治言论的网友这方面就要小心些了,很容易因此被人肉搜索到。另,建议登陆海外网站的时候尽可能不使用和在大陆平台上同样的昵称和同样的本人照片头像,即便墙内身份暴露,只要否认墙外身份,“有关部门”就基本无法获取证据。

很多社交平台都有分享地理位置的功能,比如墙内的微信、微博和墙外的推特等,但不推荐使用,如果您用的是苹果产品,可以直接选择在设置中关闭定位服务的方法来保护行踪隐私。

有些网站希望用户输入求学就业经历,以便联系到同学同事互相添加。如果该应用是大陆开发的产品就不推荐使用这项功能。您肯定有其他方式联系到您觉得值得联系的同学和同事。

尽可能不使用公共场合免费的wifi,如果遭遇恶意搭建的wifi,很容易被盗取个人信息,其他安全性不明的wifi网络也要谨慎选择。

曾经有网友曝,小米手机和小米平板都会在用户使用加密数据或使用VPN科学上网時,窃取数据并发送到北京某服務器;360系列软件则会监控用戶的qq、skype等通讯窃取数据。对于后者已能基本确信,对于前者建议谨慎选择以防患于未然。

国内产的杀毒软件也不推荐使用,比如:360“监控”猥士、腾讯“收集”管家、百度猥士,本网曾有报道,奇虎 360 投资的一家微型公司“麦芽地”,其前身是个人网站“麦克孤独”,被曝是“WireLurker(MacHook)”木马制作者和传播者。

最近发现了一个很有趣的事情,北京大学的校园网VPN也注明了禁止使用360等安全软件,而且说必须卸载。看来他们也知道一些什么事情!

11月3号出台的《反恐法草案》中第十五条提到:

    电信业务经营者、互联网服务提供者应当在电信和互联网的设计、建设和运行中预设技术接口,将密码方案报密码主管部门审查。未预设技术接口,或者未报审密码方案的,相关产品或者技术不得投入使用。已经投入使用的,主管部门应当责令其立即停止使用。在中华人民共和国境内提供电信业务、互联网服务的,应当将相关设备、境内用户数据留存在中华人民共和国境内。拒不留存的,不得在中华人民共和国境内提供服务。

该草案很可能全盘通过,也就是说,极大程度上增强了使用国内平台和服务的危险性。

所以说,国内的软件千万不能用!国内的软件千万不能用!国内的软件千万不能用!很重要所以说三遍!!!

给你们普及一下相关的法律法规,免得水表被炒爆了也不知道!

根据《计算机信息网络国际互联网安全保护管理办法》(公安部令第33号)第五条:

任何单位和个人不得利用国际联网制作、复制、查阅和传播下列信息:


(一)煽动抗拒、破坏宪法和法律、行政法规实施的;

(二)煽动颠覆国家政权,推翻社会主义制度的;

(三)煽动分裂国家、破坏国家统一的;

(四)煽动民族仇恨、民族歧视,破坏民族团结的;

(五)捏造或者歪曲事实,散布谣言,扰乱社会秩序的;

(六)宣扬封建迷信、淫秽、色情、赌博、暴力、凶杀、恐怖,教唆犯罪的;

(七)公然侮辱他人或者捏造事实诽谤他人的;

(八)损害国家机关信誉的;

(九)其他违反宪法和法律、行政法规的。



违反法律、行政法规,有本办法第五条、第六条所列行为之一的,由公安机关给予警告,有违法所得的,没收违法所得,对个人可以并处五千元以下的罚款,对单位可以并处一万五千元以下的罚款;

情节严重的,并可以给予六个月以内停止联网、停机整顿的处罚,必要时可以建议原发证、审批机构吊销经营许可证或者取消联网资格;构成违反治安管理行为的,依照治安管理处罚条例的规定处罚;构成犯罪的,依法追究刑事责任。
情节较轻的只是警告一下,并进行经济处罚。虽然不多但是那些键盘侠屌丝就别再出去丢人乱说了,否则你也只能一辈子屌丝了!

但是情节严重给予的处罚就会很严重了,构成犯罪的还会追究刑事责任。所以那些反gong心理的人自己注意点吧!

根据2013年9月发布的最高人民法院和最高人民检察院

《关于办理利用信息网络实施诽谤等刑事案件适用法律若干问题的解释》中的第五条:

    利用信息网络辱骂、恐吓他人,情节恶劣,破坏社会秩序的,依照刑法第二百九十三条第一款第(二)项的规定,以寻衅滋事罪定罪处罚。

    编造虚假信息,或者明知是编造的虚假信息,在信息网络上散布,或者组织、指使人员在信息网络上散布,起哄闹事,造成公共秩序严重混乱的,依照刑法第二百九十三条第一款第(四)项的规定,以寻衅滋事罪定罪处罚。

这条司法解释曾经遭到了部分律师强烈反对,认为其对于网络言论的控制和镇压违背宪法有关言论自由的权利精神。

有些人看了上面的内容之后就会很担心科学上网会不会犯法、查水表,所以我在科普一下科学上网的相关法律法规。

从国内关于互联网管制立法角度上来讲,目前可以将科学上网行为解释为犯法的法律和条文只有

《中华人民共和国计算机信息网络国际联网惯例暂行规定》(国务院令第195号)中的第六条:

    计算机信息网络直接进行国际联网,必须使用邮电部国家公用电信网提供的国际出入口信道。任何单位和个人不得自行建立或者使用其他信道进行国际联网。

牵强一点的讲,提供和开发科学上网工具的行为,可以算作自行建立或者使用其它信道进行国际联网。而对这一条的违法行为的处罚措施,则列于同一规定的第十四、十五条:

    第十四条 违反本规定第六条、第八条和第十条的规定的,由公安机关责令停止联网,给予警告,可以并处15000元以下的罚款;有违法所得的,没收违法所得。     第十五条 违反本规定,同时触犯其他有关法律、行政法规的,依照有关法律、行政法规的规定予以处罚;构成犯罪的,依法追究刑事责任。
应该说,这项规定处罚较低,只是经济处罚,但另外约定构成犯罪的行为,也将追究刑事责任,但具体是什么行为构成犯罪,处罚依据哪条刑律,都没有具体言明。而且在实际操作中,也从未援引过这条法令对科学上网工具的开发者和使用者进行处罚。



综上,被查水表的是因为他们的不当言论造成的,而非单纯因为开发、提供和传播科学上网服务所引起的,当然也不排除上述多种因素的共同作用。

所以目前状况下不必因为使用科学上网服务而过分担心被查水表,但随着目前互联网管制的日趋紧张,今后的形势不容乐观。

最后,据称网警是通过“钓鱼执法”假扮一个需要购买科学上网服务的客户,通过QQ等通讯工具查水表的。



2014年11月28日星期五

shadowsocks for windows 2.0

由于 Windows 用户的反馈很多,所以赶了一下把这个版本做出来了。相当于把 ShadowsocksX 的全部功能移植过来了。

Features:

1. 原生 Windows UI,通过托盘菜单操作主要功能
2. 一键切换系统代理,无需浏览器插件
3. 内置可编辑的 PAC 服务
4. 提供 HTTP 代理,兼容 IE
5. 多服务器配置切换,兼容 shadowsocks-gui 的配置文件
6. 只有一个不到 200KB 的 exe

下载:

https://github.com/clowwindy/shadowsocks-csharp

使用说明:

1. 启动后在状态栏右下角找到 Shadowsocks 图标
2. 可以添加多个服务器,通过托盘菜单来快速切换
3. 配置后点击菜单中的 Enable 来启用系统代理
4. 用任意编辑器修改 PAC 保存后,会自动通知浏览器更新 PAC
5. 如果浏览器装了代理插件,把它们禁用或设为“使用系统代理设置”状态
6. 如果启动提示缺依赖可能要装 2008 运行时或 .Net 2.0,Google 之就有。

由于这个 Windows 版本以及 OS X 原生版都比 GUI 好用太多了,GUI 项目将废弃掉,如果还有什么想从 GUI 移植过来的功能或者其它问题请反馈。

附:

1.如果不 Enable,代理也会运行,proxy port 上会有一个 socks5 代理,8123 上会有一个 http 代理,都是只有本机才能访问的。

2.如果遇到错误,不能工作,速度慢等等请先更新最新版,如果还是不行请反馈。反馈的时候请提供从启动开始的所有具体操作步骤,比如具体点了哪些按钮和菜单项,不然无法重现问题。

3.看反馈在 Windows 8.1 上有些权限相关的兼容性问题,不过 8.1 连同开发工具装起来比较费事,这几天暂时没时间装,欢迎用 8.1 的童鞋帮忙 debug 和发 pull request……

如果遇到问题一般退出后 kill 掉 ss_polipo.exe 再启动应该能解决。

原地址:https://www.v2ex.com/t/144934

2014年9月29日星期一

SoftEther VPN——Linux下搭建VPN可以如此简单

我前段时间入手了一枚RamNode的VPS。因为RamNode恰好同时支持IPv4和IPv6网络,而我所在的教育网存在IPv4网络按流量收费、而IPv6网络不限速不计费的情况,所以我便盘算着用这台VPS做跳板机,这样以后就不用为流量发愁了。为了达到这个目的,我尝试了多种方案——GoAgent、PPTP、L2TP、OpenVPN、ShadowSocks,以及本文推荐的SoftEther VPN。
GoAgent和ShadowSocks的主要问题是不能支持全局代理,而且不知是不是ShadowSocks协议貌似被认证的缘故,我配置了数次均未成功;PPTP服务器的问题主要有两个:一个是容易被干扰,另一个是不支持IPv6访问,这样我就没法用它在IPv6网络下做跳板机了,排除;L2TP服务器的安全性不错,也支持IPv6,但是配置起来着实让人头大,所以只能作为备选方案;OpenVPN,我在配置完成后IPv4连接OK,IPv6未能配通。我在试尽各种利器却一无所获之时,偶然从老外网站上发现了这款名气不大、试用完后却惊呼神器的VPN软件——SoftEther VPN,真可谓是踏破铁鞋无觅处,得来全不费工夫。
SoftEther VPN是日本筑波大学的一个研究项目,它包括服务器端、客户端、服务器端管理工具等数个软件,支持 SSL-VPN (SoftEther VPN) 协议、 L2TP/IPsec 协议、 OpenVPN 协议和 Microsoft SSTP 协议,Windows、Linux、Android和IOS等操作系统都可以连接到SoftEther VPN服务器。
其实我很早以前就体验到了SoftEtherVPN Windows服务器端的强大,只不过我心想,这么强大的软件,凭一个大学的实力不可能同时支持多个操作系统吧;即使能够支持Linux,安装起来肯定也会十分复杂。但事实恰恰相反,SoftEther VPN的Linux服务器端是一键安装的,甚至比其Windows安装包的一路“Next”还要简单。
至于配置服务器,你也不必为不会使用Linux命令行或者手动修改配置文件担心,因为你根本不需要这样做——你只需要下载一个SoftEther VPN的管理工具,输入服务器端的IP地址,然后就可以通过图形界面进行管理了。当然,在第一次登陆服务器的时候系统会提示你设置一个管理密码,这样就不用担心别人也能操作你的服务器了。
SoftEther VPN默认就是支持IPv6网络的,所以事先你无需做任何配置,只要保证服务器支持IPv6网络即可。我用SSL-VPN协议和L2TP协议尝试了下,IPv6网络下均可以正常连接;至于其他几种协议,我没有测试,所以也不好妄下断言。
最后附上SoftEther VPN的详细配置教程:

一、服务器端配置

1.操作系统及软件要求

1)操作系统要求

根据官网介绍,虽然SoftEther VPN Server只要Linux内核版本在2.4及以上就可以运行,但是官方推荐使用如下三个Linux发行版:
Red Hat Enterprise Linux
Fedora
CentOS

2)软件和库的要求

在安装之前,需要安装以下软件和库(其实不用人工检查,安装前检查在检测到缺少依赖时会提示的):
gcc software
binutils software
tar, gzip or other software for extracting package files
chkconfig system utility
cat, cp or other basic file operation utility
EUC-JP, UTF-8 or other code page table for use in a Japanese language environment
libc (glibc) library
zlib library
openssl library
readline library
ncurses library
pthread library

2.下载SoftEther VPN Server

(以CPU是 Intel x86/Intel x64/AMD64为例,其他型号请到官网下载对应的版本,http://www.softether-download.com/cn.aspx?product=softether)服务器在国外的用户建议直接从官网下载。
Intel x86(32位):
wget http://www.softether-download.com/files/softether/v4.10-9473-beta-2014.07.12-tree/Linux/SoftEther_VPN_Server/32bit_-_Intel_x86/softether-vpnserver-v4.10-9473-beta-2014.07.12-linux-x86-32bit.tar.gz
Intel x64/AMD64(64位):
wget http://www.softether-download.com/files/softether/v4.10-9473-beta-2014.07.12-tree/Linux/SoftEther_VPN_Server/64bit_-_Intel_x64_or_AMD64/softether-vpnserver-v4.10-9473-beta-2014.07.12-linux-x64-64bit.tar.gz
国内用户因为需要爬梯子,所以可以使用我提供的镜像文件:
Intel x86(32位):
wget http://files.mawenjian.net/SoftEtherVPN/softether-vpnserver-v4.10-9473-beta-2014.07.12-linux-x86-32bit.tar.gz
Intel x64/AMD64(64位):
wget http://files.mawenjian.net/SoftEtherVPN/softether-vpnserver-v4.10-9473-beta-2014.07.12-linux-x64-64bit.tar.gz

3.解压文件

tar -zxvf softether-vpnserver-v4.10-9473-beta-2014.07.12-linux-x86-32bit.tar.gz
(64位对应的是:“tar -zxvf softether-vpnserver-v4.10-9473-beta-2014.07.12-linux-x64-64bit.tar.gz”)

4.安装程序(其实是运行环境检查)

此时会在当前目录解压出一个vpnserver目录,接下来运行安装脚本:
cd vpnserver
./.install.sh
接下来按照提示,输入3个“1”即可。如果满足运行条件,会提“The command completed successfully.”;反之,若不满足条件,则会提示相应的错误(一般是依赖的库没有安装完全)。
我在给第二台机器安装的时候遇到SoftEner VPN Server提示“/usr/bin/ld: crt1.o: No such file: No such file or directory”错误。经查,是因为我的操作系统是64位,而安装的SoftEther VPN Server是32位的缘故,换成64位的安装程序即恢复正常。

5.启动程序

执行以下命令启动Softether VPN Server服务:
./vpnserver start
如果要停止,执行:
./vpnserver stop
到这里,服务端就算配置完成了。怎么样,够简单吧?

二、使用本地管理工具配置服务器端

1.下载“SoftEther VPN Server管理器”:http://pan.baidu.com/s/1mghwPyK;
2.运行“vpnsmgr”,选择“新设置”,在新面板中填写“设置名”和“主机名”,保存配置信息;
3.连接到你刚才配置的服务器,首次登陆会提示你设置一个管理员密码:
SoftEther VPN设置管理密码

4.然后在弹出的”SoftEther VPN Server/Bridge 简单安装“面板中,选择”VPN的其他高级配置“(因为我们需要在服务器端做NAT转换),关闭;
选择“VPN的其他高级配置”

5.此时会提示”此VPN Server已具有支持兼容IPSec/L2TP/EtherIP/L2TPv3协议的VPN Client或VPN路由器的新功能。……您要设置IPSec吗?“,选择”是“。在新面板中,一般只启用L2TP服务器功能(L2TP over IPsec)就足够了,更改”IPsec预共享密钥“,确定。
启用L2TP服务器功能,设置IPsec预共享密钥

6.添加认证用户:
SoftEther VPN添加认证用户(1)
SoftEther VPN添加认证用户(2)
SoftEther VPN添加认证用户(3)
7.开启NAT转换和DHCP服务
选择“虚拟NAT和虚拟DHCP服务器”,然后选择“启用SecureDHCP”;再选择“SecureDHCP配置”。如果你不会配的话,可以按照我的配置来。
启用“虚拟NAT和虚拟DHCP服务器”
SecureNAT 配置

三、连接到服务器

根据刚才的配置,有两种连接方式(或者说我只测试了两种):第一种是下载SoftEther VPN Client,使用SSL-VPN协议连接;第二种是使用Windows/Linux/Android等自带的VPN连接(使用L2TP协议)。使用L2TP协议时应当注意:1)”VPN类型“需要选择”L2TP/IPsec“;2)需要到”高级设置“中输入先前设置的预共享密钥。细节就不再讲了,其他操作系统类似。
Windows建立VPN连接注意事项

使用Apache2搭建Google加密反向代理

几个月前Google就被从IPv4网络上彻底干掉了,但是IPv6网络的用户并没有受到什么影响,或许是用户数量少的缘故吧。不过从今天早晨开始,IPv6下加密访问Google也开始变得不正常了——每次用Chrome打开“https://www.google.com.hk/”,都会提示“您的连接不是私密连接,攻击者可能会试图从www.google.com.hk窃取您的信息”。从目前已知的信息来看,应该是Google的SSL证书在传输过程中被人为干扰了。
Google的不能正常使用使我的工作受到了严重影响,所以我只能想办法解决喽。恰好我前段时间入手了一枚RamNode的VPS,所以我便用这枚VPS搭建一个反向代理。从效果来看,确实还不错,而且比用VPN要方便得多。
下边把配置步骤简单地写一下吧。
1.从StartSSL申请一个域名证书,或者使用证书生成工具生成一张自签名的证书,并将生成的crt文件和key文件上传到服务器;
2.在Apache2的conf.d目录下新建一个名为“google_proxy.conf”的虚拟主机配置文件;
touch google_proxy.conf
3.在其中配置一台监听443端口的虚拟主机,配置域名和证书的路径,添加反向代理的域名(www.google.com 或者 www.google.co.jp ,反代Google香港会自动跳转);
<VirtualHost _default_:443>
ServerAdmin mail@localhost
DocumentRoot “/var/www/html”
ServerName 你的域名:443
SSLEngine On
SSLProtocol all -SSLv2
SSLCipherSuite ALL:!ADH:!EXPORT:!SSLv2:RC4+RSA:+HIGH:+MEDIUM
SSLCertificateFile crt文件路径
SSLCertificateKeyFile key文件路径
#SSLCertificateChainFile pem文件路径,可选
SetEnvIf User-Agent “.*MSIE.*” \
nokeepalive ssl-unclean-shutdown \
downgrade-1.0 force-response-1.0
SSLProxyEngine On
RequestHeader set Front-End-Https “On”
ProxyPass / https://www.google.com/
ProxyPassReverse / https://www.google.com/
CacheDisable *
</VirtualHost>
4.强制使用HTTPS访问,将使用HTTP协议访问的用户强制重定向到HTTPS;
<VirtualHost _default_:443>
ServerAdmin mail@localhost
DocumentRoot “/var/www/html”
ServerName 你的域名:80
RewriteEngine On
RewriteRule ^(.*)$ https://%{HTTP_HOST}$1 [R,L]
</VirtualHost>
5.重启Apache服务,输入证书的导出密码,重启完成。
service httpd restart
至此,安装结束。
附示例:我的配置文件

2014年9月6日星期六

基于Debian/Ubuntu的PPTP VPN 安装笔记

1.首先需要确定你的VPS是否支持PPTPD协议的VPN
modprobe ppp-compress-18 && echo ok
假如返回OK,则支持。否则进行下一步
cat /dev/net/tun
如返回
cat: /dev/net/tun: File descriptor in bad state
那就可以了。假如这两条都不可以,那你就只能向服务商发个ticket了。问一下他们能不能帮你启用TUN/TAP/PPP 模块,不过感觉上可能性不大。:D
2.安装PPTP。不建议编译安装,没有多大意义,得不偿失。命令如下
apt-get -y update
apt-get -y install pptpd
3.编辑 pptpd.conf
localip 是 VPN 服务器 IP,可任意指定。
remoteip 是可分配给 vpn 客户端 IP。
为避免冲突,localip、remoteip 最好不要与服务器当前内网或经常拨入的客户端内网地址在同一网段。
cat >>/etc/pptpd.conf<<EOF
localip 10.10.10.1
remoteip 10.10.10.2-245
EOF
4.编辑 pptpd-options
cp /etc/ppp/pptpd-options /etc/ppp/pptpd-options.bak
cat>etc/ppp/pptpd-options<<EOF
name pptpd
refuse-pap
refuse-chap
refuse-mschap
require-mschap-v2
require-mppe-128
ms-dns 8.8.8.8
ms-dns 8.8.4.4
proxyarp
nodefaultroute
debug
lock
nobsdcomp
EOF
name pptpd(pptpd服务名,可以随便填写。)
refuse-pap(拒绝pap身份认证模式。)
refuse-chap(拒绝chap身份认证模式。)
refuse-mschap(拒绝mschap身份认证模式。)
require-mschap-v2(在端点进行连接握手时需要使用微软的 mschap-v2 进行自身验证。)
require-mppe-128(MPPE 模块使用 128 位加密。)
ms-dns 8.8.8.8 (ppp 为 Windows 客户端提供 DNS 服务器 IP 地址。)
proxyarp (建立 ARP 代理键值。)
nodefaultroute(不替换默认路由)
debug(开启调试模式,相关信息记录在 /var/logs/message 中。)
lock(锁定客户端 PTY 设备文件。)
nobsdcomp (禁用 BSD 压缩模式。)
5.添加 VPN 用户
chap-secrets 文件为4段,分别是:用户名、服务器名称、密码、分配给客户端的IP。
服务器名可以是pptpd或今后的l2tpd,*号代表全部。
密码以明文填写,不需进行加密。
最后的*号代表从remoteip指定的IP段随机分配
cat >/etc/ppp/chap-secrets<<EOF
user * 123456 *
EOF
6.配置数据包转发
sed -i ‘s/#net.ipv4.ip_forward=1/net.ipv4.ip_forward=1/g’ /etc/sysctl.conf
sysctl -p
开启iptables转发
iptables -t nat -A POSTROUTING -s 10.10.10.0/24 -j SNAT --to-source “1.1.1.1”
将1.1.1.1替换成你VPS的公网IP
7.重启pptpd服务
/etc/init.d/pptpd restart
netstat -lntp
8.常见vpn错误处理
错误800:修改/etc/ppp/pptpd-options文件,#号注释掉 require-mppe-128
错误619:
mknod /dev/ppp c 108 0
然后重启 pptpd 服务。

Windows7设置PPTP登录账户教程 实现全局VPN

在前面的"实战Linux VPS CentOS搭建VPN教程(一键快速安装)"中,我们已经利用自己的VPS主机搭建了PPTP且有了登录账号和密码,作为站长来说肯定不会仅仅用来给手机上网用的,很多用户都是需要用到自己的电脑实现全局VPN功能的。目前我用的电脑系统是Windows 7的,所以写一篇Windows 7设置PPTP登录账户教程。
第一步,登陆"打开网络和共享中心"

新建"设置新的连接和网络"

第二步,选择连接到工作区

继续下一步,后选择"使用我的Internet连接VPN"

第三步,填写我们VPS的IP

按照上图,不要乱勾选,这个界面需要输入我们的VPS IP地址,然后给自己的设置取一个名字,然后下一步。
第四步,设置账号和密码

设置完毕之后就是链接验证。

这样我们的连接成功,目前本机已经是VPN状态。
最后,使用管理

我们在网络中可以看到当前在使用VPN,如果不使用可以断开。这样通过上述的步骤我们已经完成WIN 7设置PPTP VPN登录全局。
本文固定链接: http://www.laozuo.org/1431.html ,老左博客投稿。

实战Linux VPS CentOS搭建VPN教程(一键快速安装)

在我们玩VPS的时候肯定需要其中的一个功能,利用自己手上闲置的VPS搭建自己的VPN账号,首先肯定不是用来做违规的事情。用我们的iphone等智能手机登陆推特或者脸谱FB玩玩。老左在开始学习Linux VPS的时候就尝试过多次使用国内一些前辈们的博客中公布的教程安装PPTP搭建,但是一直都没有成功过。
这个都解决不了肯定不能证明自己玩过VPS主机,于是老左继续寻找结合国内外的教程终于在刚才完成了搭建VPN账户,然后用iphone手机连接PPTP可以使用。下面实战Linux VPS CentOS搭建VPN教程分享给大家。这个方法与其他博主的有些不同,可以很快速的安装,也就是我们大家最为喜欢的一键安装包,不需要任何配置。

第一步,需要先验证我们的VPS主机是不是支持安装PPTP组件。
cat /dev/ppp
cat /dev/net/tun
用上面的两行脚本后,是不是看到和我下图一样的提示,如果是,说明可以安装。如果不行,那需要找主机商解决允许安装PPP和TUN。

第二步,直接用老左整理出来的脚本一键安装。
curl https://code.google.com/p/myfollowscripts/source/browse/pptpd.sh|sh
上面的脚本黏贴进去,然后回车就会自动安装。直到看到下面的安装成功界面。

这说明已经安装成功了。
第三步,用手机连接试试。

看到上图,是我设置iphone手机的,选择PPTP,然后描述随便写,写上IP和用户名、密码,其他都默认后点击右上角的保存。在我们需要用的时候,直接连接就可以,连接后再手机右上角会出现VPN的图标。
以上脚本和教程经过老左2次测试完全成功,这个方法非常的方便。顺带说一下,如果我们需要添加其他账户,打开/etc/ppp/chap-secrets文件。

添加一行,第一个为用户名,第二个pptpd不变,第三个为密码,第四个为*,保存后我们就可以用其他账户登录。
以上的系统是基于centos 5 32位安装的,我是用的linux vps xen架构的机器,明天我来测试用debian的系统安装教程。

本文转自:老左博客