-
Windows Multipoint Server是个坑
之前部署了一个Windows Multipoint Server 2011 是一个基于Windows Server 2008 R2的操作系统(用的是http://www.msmultipoint.com/ 的解决方案),界面跟Windows 7一样,软件兼容性也没有发现什么很大的问题。 但是! 这个系统基本就是小问题一个接一个。比如说,鼠标/键盘丢失,开不了机;网络客户端(百兆网络),卡;KB3097877这个补丁就不说了,直接开不了机,Outlook卡死;时不时突然黑屏;Msmultipoint客服不理人。
-
网络连接方案
这个暑假尝试了很多网络连接方案,分享一下这些方案的实现难度和运行状态。 由于Google是没办法不用的,学生会的邮箱又是Gmail的,为了正常使用就肯定要想办法解决了。 基本网络环境: 有一台Raspberry弄了DNSMASQ。 广州电信ADSL。 方案一:OPENVPN OPENVPN TLS握手特征过于明显,连接经常被重置;所以试了一下就改用静态了。 OPENVPN 如果不使用TLS安全性会有所下降,但是被重置的几率也大,网络延迟直接Ping VPS为 159ms,通过VPN ping Google.com 257ms左右。 该方案会被封IP。 方案二:Iptables 转发443流量 同样,HTTPS握手特征明显,但是流量似乎没被干扰,效果很好。 屏蔽:第一次的IP第二天就被封锁了,但是重新弄了以后现在半个月了,依然正常,周期还在摸索~ 方案三:SS SS是神器,高速,无特征,但是缺点是全局域网代理不是全透明,而且有时DNS有点慢 方案四:ShadowVPN 这个理论上也应该是神器的,但是我用的时候好卡(我装在另一台Raspberry上的),Ping的结果也一般170ms左右,但是丢包貌似好严重。 方案四也许是受到近期国际出口的高丢包影响。 综上所述,SS是首选,我现在还在尝试其他方案。
-
VPN真的不能令你完全匿名
很多人现在用VPN来进行所谓的匿名加密访问,这个说法的确有道理,但是不完全对。 打个比方,我用PAL3.0(大普渡WIFI)上网,然后突然想加密流量并且匿名,然后我就用一个,举一个超强加密的例子,OPENVPN连接一个普渡内部的VPN服务器做跳转。看上去好像很安全,数据加密了,IP也变了。但是,不完全是这样的。 仔细想一下流程,数据是这样走的:手机/电脑->VPN->普渡内网的VPN->目标机器。 有什么问题呢,问题就在你在一个大局域网内的数据可追踪。比如普渡的ITaP想监视你,那么他就先监控你的流量,发现你有一个VPN连接到另外一台普渡的机子,IT部的就可以直接去查另外一部机子的流量状况,而那台机子的流量是直接出去的,也就是说普渡理论上还是可以监视你的。 想用VPN保持匿名就要确保你的流量在第三方中转,比如你连接到瑞士的VPN服务器,普渡肯定是没有权力调用瑞士VPN的连接状态,甚至美国也不行。但是这样就真的安全了吗? 你再想想,如果你的目标机器在美国,或者把它简单化,就在普渡,而且那个瑞士VPN还是你专属的。问题就又出现了。你在瑞士中转的数据普渡的确看不到,但是关键在于你的数据又回来了,普渡一个Cross-Reference,你的流量数据又可以被监视了。 所以说,用VPN保持匿名是挺难的。 保持匿名还是得用TOR。 别听网上说的用强加密的VPN就可以,关键不在VPN上,而在出口上。
-
在华南国际预科中心的两个月
不可否认,中心的却有一流的师资,但同时,也有一流的人员流动性。 一般来说,在最后一年都是不换老师的,但是中心是个例外。 Brandon,kassidy和其他一些老师走了,这些老师都是很Nice的,平时都对我们很好,特别是Kassidy,改作业最认真的老师恐怕就是她了,改完之后来找我们改错,在作业本写一行行的批语。 我无从知晓中心人员流动的具体情况,但是我很清楚老师,最起码是经常给我们上课的老师,不可否认,她们非常好,真的。但是我不能理解的是老师的流动性如此巨大。在网上搜索资料后,我发现大多数老师任职都不久,或者说刚刚适应中心的环境就走了。就像我们一样,在中心仅仅两个月,才刚刚熟悉环境,老师又要走,我们又要适应新老师了~~ 一个私立教育机构我不敢奢求是一个纯公益的非营利组织,但是最起码也要保住老师吧,没有老师有个P学生啊。。。说的不好听点,学生就是冲着老师去的。。。 怎么说呢。。中心还是不错的,老师Nice,环境好,同学也好,唯一的不足吧,就是很Nice的老师会很Nice的消失。 Brandon,kassidy, I do miss you.
-
如何安全的存储密码
过去一段时间来,众多的网站遭遇用户密码数据库泄露事件,这甚至包括顶级的互联网企业–NASDQ上市的商务社交网络Linkedin,国内诸如CSDN一类的就更多了。 层出不穷的类似事件对用户会造成巨大的影响,因为人们往往习惯在不同网站使用相同的密码,一家“暴库”,全部遭殃。 那么在选择密码存储方案时,容易掉入哪些陷阱,以及如何避免这些陷阱?我们将在实践中的一些心得体会记录于此,与大家分享。 菜鸟方案: 直接存储用户密码的明文或者将密码加密存储。 曾经有一次我在某知名网站重置密码,结果邮件中居然直接包含以前设置过的密码。我和客服咨询为什么直接将密码发送给用户,客服答曰:“减少用户步骤,用户体验更好”;再问“管理员是否可以直接获知我的密码”, 客服振振有词:“我们用XXX算法加密过的,不会有问题的”。 殊不知,密码加密后一定能被解密获得原始密码,因此,该网站一旦数据库泄露,所有用户的密码本身就大白于天下。 以后看到这类网站,大家最好都绕道而走,因为一家“暴库”,全部遭殃。 入门方案: 将明文密码做单向哈希后存储。 单向哈希算法有一个特性,无法通过哈希后的摘要(digest)恢复原始数据,这也是“单向”二字的来源,这一点和所有的加密算法都不同。常用的单向哈希算法包括SHA-256,SHA-1,MD5等。例如,对密码“passwordhunter”进行SHA-256哈希后的摘要(digest)如下: “bbed833d2c7805c4bf039b140bec7e7452125a04efa9e0b296395a9b95c2d44c” 可能是“单向”二字有误导性,也可能是上面那串数字唬人,不少人误以为这种方式很可靠, 其实不然。 单向哈希有两个特性: 1)从同一个密码进行单向哈希,得到的总是唯一确定的摘要 2)计算速度快。随着技术进步,尤其是显卡在高性能计算中的普及,一秒钟能够完成数十亿次单向哈希计算 结合上面两个特点,考虑到多数人所使用的密码为常见的组合,攻击者可以将所有密码的常见组合进行单向哈希,得到一个摘要组合,然后与数据库中的摘要进行比对即可获得对应的密码。这个摘要组合也被称为rainbow table。 更糟糕的是,一个攻击者只要建立上述的rainbow table,可以匹配所有的密码数据库。仍然等同于一家“暴库”,全部遭殃。以后要是有某家厂商宣布“我们的密码都是哈希后存储的,绝对安全”,大家对这个行为要特别警惕并表示不屑。有兴趣的朋友可以搜索下,看看哪家厂商躺着中枪了。 进阶方案: 将明文密码混入“随机因素”,然后进行单向哈希后存储,也就是所谓的“Salted Hash”。 这个方式相比上面的方案,最大的好处是针对每一个数据库中的密码,都需要建立一个完整的rainbow table进行匹配。 因为两个同样使用“passwordhunter”作为密码的账户,在数据库中存储的摘要完全不同。 10多年以前,因为计算和内存大小的限制,这个方案还是足够安全的,因为攻击者没有足够的资源建立这么多的rainbow table。 但是,在今日,因为显卡的恐怖的并行计算能力,这种攻击已经完全可行。 专家方案: 故意增加密码计算所需耗费的资源和时间,使得任何人都不可获得足够的资源建立所需的rainbow table。 这类方案有一个特点,算法中都有个因子,用于指明计算密码摘要所需要的资源和时间,也就是计算强度。计算强度越大,攻击者建立rainbow table越困难,以至于不可继续。 这类方案的常用算法有三种: 1)PBKDF2(Password-Based Key Derivation Function) PBKDF2简单而言就是将salted hash进行多次重复计算,这个次数是可选择的。如果计算一次所需要的时间是1微秒,那么计算1百万次就需要1秒钟。假如攻击一个密码所需的rainbow table有1千万条,建立所对应的rainbow table所需要的时间就是115天。这个代价足以让大部分的攻击者忘而生畏。 美国政府机构已经将这个方法标准化,并且用于一些政府和军方的系统。 这个方案最大的优点是标准化,实现容易同时采用了久经考验的SHA算法。 2) bcrypt bcrypt是专门为密码存储而设计的算法,基于Blowfish加密算法变形而来,由Niels Provos和David Mazières发表于1999年的USENIX。 bcrypt最大的好处是有一个参数(work factor),可用于调整计算强度,而且work…
-
支持向量机(SVM)
支持向量机,英文为Support Vector Machine,一般简称SVM。它是一种監督式學習的方法,它广泛的应用于统计分类以及回归分析中。 支持向量机属于一般化线性分类器。他们也可以认为是提克洛夫规范化(Tikhonov Regularization)方法的一个特例。这族分类器的特点是他们能够同时最小化经验误差与最大化几何边缘区。因此支持向量机也被称为最大边缘区分类器。 介绍 支持向量机将向量映射到一个更高维的空间里,在这个空间里建立有一个最大间隔超平面。在分开数据的超平面的两边建有两个互相平行的超平面。分隔超平面使两个平行超平面的距离最大化。假定平行超平面间的距离或差距越大,分类器的总误差越小。一个极好的指南是C.J.C Burges的《模式识别支持向量机指南》。van der Walt和Barnard将支持向量机和其他分类器进行了比较。 动机 有很多个分类器(超平面)可以把数据分开,但是只有一个能够达到最大分割。 我们通常希望分类的过程是一个机器学习的过程。这些数据点并不需要是中的点,而可以是任意(统计学符号)中或者(计算机科学符号)的点。我们希望能够把这些点通过一个n-1维的超平面分开,通常这个被称为线性分类器。有很多分类器都符合这个要求,但是我们还希望找到分类最佳的平面,即使得属于两个不同类的数据点间隔最大的那个面,该面亦称为最大间隔超平面。如果我们能够找到这个面,那么这个分类器就称为最大间隔分类器。 问题定义 设样本属于两个类,用该样本训练svm得到的最大间隔超平面。在超平面上的样本点也称为支持向量. 我们考虑以下形式的样本点 其中ci为1或−1 –用以表示数据点属于哪个类. 是一个 (统计学符号),或 (计算机科学符号)维向量,其每个元素都被缩放到[0,1]或[-1,1].缩放的目的是防止方差大的随机变量主导分类过程。我们可以把这些数据称为“训练数据”,希望我们的支持向量机能够通过一个超平面正确的把他们分开。超平面的数学形式可以写作 。 其中是超平面上的点,是垂直于超平面的向量。 根据几何知识,我们知道向量垂直于分类超平面。加入位移b的目的是增加间隔。如果没有b的话,那超平面将不得不通过原点,限制了这个方法的灵活性。 由于我们要求最大间隔,因此我们需要知道支持向量以及(与最佳超平面)平行的并且离支持向量最近的超平面。我们可以看到这些平行超平面可以由方程族: 。 来表示。 由于只是超平面的法向量,长度未定,是一个变量,所以等式右边的1和-1只是为计算方便而取的常量,其他常量只要互为相反数亦可。 如果这些训练数据是线性可分的,那就可以找到这样两个超平面,在它们之间没有任何样本点并且这两个超平面之间的距离也最大。通过几何不难得到这两个超平面之间的距离是2/|w|,因此我们需要最小化 |w|。同时为了使得样本数据点都在超平面的间隔区以外,我们需要保证对于所有的满足其中的一个条件 这两个式子可以写作: 原型 现在寻找最佳超平面这个问题就变成了在(1)这个约束条件下最小化|w|.这是一个二次規劃QP(quadratic programming)最优化中的问题。 更清楚的表示: 最小化,满足其中。 1/2这个因子是为了数学上表达的方便加上的。 解如上问题通常的想法可能是使用非负拉格朗日乘数 于下式 不过这样可能出错. 原因是:假如我们能找到一族超平面将这些点分割开来;那么所有的 . 因此我们可能通过将所有趋向得到最小值, 此最小值对这一族内所有成员都有效,而不是解决原问题的最优解。 不过以前的约束问题可以表示为 此式表明我们寻找一个鞍点。这样所有可以被分离的点就无关紧要了,因为我们必须设置相应的 为零。 这个问题现在可以用标准二次规划技术标准和程序解决。结论可以表示为如下训练向量的线性组合 只有很少的会大于0. 相应的就是支持向量, 这些支持向量在边缘上并且满足. 由此可以推导出支持向量也满足:…
-
Why is a bicycle easier to control when it’s moving?
A moving bike is always falling, steering prevents (or delays) impact… Imagine a bike messenger paused at a stop light: he leans over his front wheel, making small adjustments and tiny twists in his handlebars. He stays up on two wheels—unless he turns the handlebars a bit too far, or a car bumps him, or…
-
DreamHost解压文件
今天部署节点的时候发现dreamhost的操作异常的复杂(第一感觉)~~~ 而后去找Webftp,打开以后没有Autologin还要手动输入信息,而输入信息之后又不能上传大于2MB的文件,只好用FTP上传,上传完以后发现根本就没有解压这个功能~NND,这个webftp根本就是拿来摆的! 只好使用SSH连接,很多人不知道SSH怎么使用,我在这里说下吧: 1.当然是下载putty啦,不大,只有几百K; 2.打开putty,输入域名之后点击open; 3.弹出的黑框框里会显示please type your user nane,这个时候输入你的用户名; 4.按了回车之后就输入密码 PS.输入密码的时候看起来是没反应的,无需理会; 5.cd 你的目录 回车; 6.unzip 你的压缩文档 回车; 我也要复习下这些函数了~~都忘记得差不多了。。。。。
-
3中网站垃圾的安全配置
自上次成功进入3中主站后台后,我就报告了漏洞,不过到今天还没补,一个后台登录字符的限制居然只靠客户端的JS,真是牛人!不知道他是怎么想的。。。 今天发现了三中报修平台的一个安全问题,还算是个漏洞吧!这次在在编辑页面居然没有鉴权!牛! 希望三中信息科的老师能及时修复漏洞。 附图(为了不被恶意利用,URL被隐藏):
-
谈邮件撤回
众多邮箱厂商都推出了邮件撤回功能,但是也仅能撤回发到同一系统中的邮件,之所以跨服务商的撤回至今尚未实现,是因为业界还没有一项通用的标准。 邮件撤回之所以难以通用,其原因有很多:1.邮件撤回的期限 2.跨服务商的系统不一致 3.撤回服务的安全性 4.商务邮件的证据作用 5.法律问题 以上问题都紧紧的束缚住了邮件撤回功能的推广,将可能带来的代价与正面效益做对比,这项标准难产也就在情理之中了。