修复 Crowd 无法登录的问题
最近将大部分的服务都 Docker 化了,遂打算把 Crowd 也给 Docker 化了。不知道 Crowd 的同学可以去官网看一下介绍,简单说,就是一个单点登录和集中身份验证的东东。因为要使用 Stash,Jira 和 Confluence 等 Atlassian 的产品,所以用个 Crowd 可以偷懒,不用每个系统设置账户。
其实这篇文章一年半前就应该写了,那个时候就曾经研究过 Atlassian 的授权机制。主要是那个时候发现了 Stash 这个宝贝。上网遍寻了一下,也没有发现关于 Stash 的破解。但是,关于 Jira 的破解文章就有好多,仔细看了一下,无外乎也就是替换 Version2LicenseDecoder.class 这个文件,然后使用自己编码的,或者明文的 License 授权文件,来达到激活产品的目的。既然 Jira 已经有很多人写过了,那么我们就拿 Stash 来玩玩吧。
**声明:**撰写本文的目的,仅在于研究学习 Atlassian 授权的原理和机制,请勿将本文涉及到的任何内容用于商业用途。请大家尽可能地支持正版软件,因为这样我们才能有更多好用的软件。Stash 官方 10 用户的授权仅仅为 $10 美金,也就是 60 多块钱的事儿,对于小团队来说绝对是白菜价了。
原来一直在使用 3322.org 的动态域名解析,而且之前还写过一篇如何在 OpenWrt 上使用 3322.org 的动态域名的文章。但是一段时间不用后,发现 3322.org 现在的动态域名只支持一个免费域名,而且怎么设置都无法正常工作。上网转悠了一下后,发现 DnsPod 有提供 客户端 API,其中的 DNSPod用户API文档 有详细的描述如何使用 DDNS 功能。于是乎就自己写了一个基于 DnsPod 客户端 API 的 Shell 脚本。
OpenConnect server (ocserv) 是一个基于 SSL 的 VPN 服务器。它是基于 OpenConnect SSL VPN 协议实现的,同时(实验性质)兼容使用 Cisco AnyConnect SSL VPN 协议的客户端。
作为一个屌丝工程师,科学上网是必须的。比如在使用 Android Studio 进行开发的时候,如果不会科学上网的话,你会发现连 Android SDK 都无法正常下载!
Android Studio 本身是基于 IntelliJ IDE 的,所以它可以通过设置菜单里面的 Proxy 设置使用 SOCKS 方式代理,这样的话正常使用就没有问题,而 Android SDK 里面的 SDK Manager 只支持 HTTP Proxy,所以我们就需要使用 Privoxy 把 SOCKS 代理转成 HTTP 代理。
最近在开发一个小工具,需要支持 OS X 和 Windows 两个平台。于是乎使用了 CMake 和 CLion 来开发,其实也就是觉得好玩。
其中 Windows 的开发环境为 Windows 7 SP1 + Visual Studio 2013,编译出来的程序使用都很正常,然而同样的可执行文件放到 Windows XP 会提示无效的 Win32 应用程序。经过搜索发现,是因为 Windows XP 使用比较旧的 Windows 7.1 SDK,而 Vista 以后默认都不再支持。要支持的话,网上有几种方法,一个就是使用工程文件,指定 Toolchain 为 v120_xp。这种方式网上广为流传,很可惜的是,我用的不是工程文件,而是 CMake 生成的 Makefile 文件,这种方式不适用。