Archive

Author Archive

Nginx替换OpenSSL为BoringSSL

August 16th, 2016 No comments

先科普
BoringSSL 是Google创建的 OpenSSL 分支,但使用BoringSSL的代码不能保证API或ABI的稳定性,所以谷歌会继续向 OpenSSL递交bug修正,继续资助Core Infrastructure Initiative和OpenBSD基金会。
谷歌使用了超过70个OpenSSL补丁,部分被接受合并到了OpenSSL主库,但大部分没有。随着Android、Chrome和其它项目开始需要这些补丁的子集,事情日益变得复杂,要保证所有补丁在不同代码库正常工作需要太多精力。所以他们决定创建OpenSSL分支。

简单总结一下BoringSSL的优缺点
优点:兼容OpenSSL,修正了许多OpenSSL的BUG,OpenSSL改不了的BUG也被BoringSSL改了。
缺点:BoringSSL只为TLS和HTTPS而生,部分OpenSSL开关默认是关闭的,其他用途的话还是建议OpenSSL。

Nginx替换OpenSSL为BoringSSL与替换为LibreSSL方法基本类似,手动编译会比较麻烦
编译之前需要进行代码的补丁修正,这里提供一个已经实现好的编译脚本供参考

github @ajhaydock
https://github.com/ajhaydock/BoringNginx

Read more…

Categories: 系统管理 Tags: , , , ,

Nginx替换OpenSSL为LibreSSL

August 16th, 2016 No comments

先科普
LibreSSL是OpenSSL加密软件库的一个分支,为一个安全套接层(SSL)和传输层安全(TLS)协议的开源实现。在OpenSSL爆出心脏出血安全漏洞之后,一些OpenBSD开发者于2014年4月创立了LibreSSL,目标是重构OpenSSL的代码,以提供一个更安全的替代品。LibreSSL复刻自OpenSSL库的1.0.1g分支,它将遵循其他OpenBSD项目所使用的安全指导原则。

简单总结一下LibreSSL的优缺点
优点:兼容OpenSSL,代码简单,分支清晰,便于安装、使用和维护
缺点:不支持旧安全算法,部分加密算法效率不高。

安装编译环境

#安装编译环境
yum install -y gcc gcc-c++ pcre-devel openssl openssl-devel

创建工作目录,统一使用绝对路径

#创建工作目录,统一使用绝对路径
mkdir /work
cd /work

Read more…

Categories: 系统管理 Tags: , , ,

将SS的加密算法改为chacha20

August 15th, 2016 No comments

Shadowsocks更换加密算法后可以提高密钥加密和解密速度,同时可以规避GFW利用OpenSSL特性进行特征包跟踪的问题。

环境确认,安装编译工具

# Debian/Ubuntu
apt-get install build-essential
# CentOS
yum groupinstall "Development Tools"

下载、编译和安装libsodium1.0.11,支持chacha20

# 下载libsodium
 
wget https://github.com/jedisct1/libsodium/releases/download/1.0.11/libsodium-1.0.11.tar.gz
tar xvf libsodium-1.0.11.tar.gz
 
# 编译&安装
cd libsodium-1.0.11
./configure && make && make install
 
# 更新动态库
ldconfig

Read more…

Categories: 零敲碎打 Tags: ,

[Evidence] Please stop crawling and indexing my website 

August 10th, 2016 No comments

Hello there,

Thanks for your attention on my mail, Something very important needs to let you know.
First, tuicool.com a very useful tool for users to subscribe what they really want, Congrats for the work!

I’m trying to analyze the accesslogs of my blog (https://www.lidaren.com), but i get something strange,
there are too many anonymous spider/crawler accessing, and IPs seems like from similar source hosts.
By tracing those IPs,I found that some of those IPs probably came from your spider/crawler.

And, I found some post contents of my blog were indexed by tuicool.com and can be directly searched out
via Google, eg. http://www.tuicool.com/articles/UVRjmyN
Read more…

Categories: 零敲碎打 Tags: ,

Xcode8 beta版无法输出NSLog问题

August 4th, 2016 No comments

使用Xcode8的Beta版本进行Objective-C/iOS程序调试时,使用NSLog无法输出日志,同时输出以下内容:
subsystem: com.apple.BaseBoard, category: MachPort, enable_level: 0, persist_level: 0, default_ttl: 0, info_ttl: 0, debug_ttl: 0, generate_symptoms: 0, enable_oversize: 0, privacy_setting: 0

subsystem: com.apple.FrontBoard, category: Common, enable_level: 0, persist_level: 0, default_ttl: 0, info_ttl: 0, debug_ttl: 0, generate_symptoms: 0, enable_oversize: 0, privacy_setting: 0

同样的Objective-C/iOS代码在Xcode7版本输出正常,没有出现。

苹果的官方论坛也有人提了Xcode8 beta的Bug
https://forums.developer.apple.com/thread/49136
Read more…

MT4使用MQL连接Redis的插件

July 25th, 2016 No comments

工作中需要将MT4的数据读取并且存储到Redis数据库中去,同时MT4读取Redis当中的数据用于下单的切换账户。
MT4支持使用MQL进行开发,通过调用标准的系统DLL实现系统调用,因此技术实现并不是太难,只需要按MQL的接口要求编写相应的CPP代码
编译成DLL即可实现所需要的功能。

在Windows平台上,连接Redis的客户端选用Hiredis作为连接客户端lib。

Read more…

Categories: 语言编程, 零敲碎打 Tags: , ,

Fiddler 脚本对HTTP请求进行处理

July 25th, 2016 No comments

Fiddler在HTTP编程过程是不可多得的利器,特别是它使用的是代理方式,能够提供非侵入式的HTTP通信报文编程,在Web接口调试方面很方便。特别是它提供使用JScript .NET方式进行功能拓展,让Web前端调试编程变得很容易

先科普
Fiddler, The free web debugging proxy for any browser, system or platform
百度百科的介绍
Fiddler 是用C#写出来的,它包含一个简单却功能强大的基于JScript .NET 事件脚本子系统,它的灵活性非常棒,可以支持众多的http调试任务,并且能够使用.net框架语言进行扩展。

Fiddler官方地址
http://www.telerik.com/fiddler

Read more…

Categories: 语言编程, 零敲碎打 Tags: