修改Apache mod_proxy实现自定义SNI

1.需求:使用常用的Web服务器构建一个具有负载均衡功能的七层反向代理服务器,其具有如下功能: 在负载均衡器(前端)和后端间使用SSL链接,教研后端提供证书的有效性 前端提供X-Forwarded-For以便后端获取客户端真实IP 无需后端做除"Real-IP Header"外的任何更改…

Read More

UBNT EdgeOS 的VLAN配置

Ubnt的运行EdgeOS的产品,比如EdgeRouter-X,可以支持VLAN。但它的配置却与其他常见的操作系统(包括OpenWrt/许多网管型交换机)大不相同。OpenWrt的VLAN配置是一个表格,横轴为物理端口,纵轴为VLAN ID。每个交叉点有三种选项——off, ununtagged, tagged。…

Read More

对某网络认证系统的研究

注:本文原作于2018年1月11日,其中所包含的一些信息可能已不再适用。警告:技术无罪,莫用作非法用途。如进行不合理使用所造成任何法律责任,笔者概不负责。迁入大学校内的宿舍后,我对垄断该宿舍的网络公司所使用的认证系统进行了一番研究。1.初探该认证系统在未登录时封锁除53、80及443以外的所有TCP端口;UDP未予详细测试,但至少知道UDP/…

Read More

升级Ghost小记

Ghost 2.x的升级可谓是有不少坑,本文记述我将Ghost 2.6.0升级至2.9.1的过程。首先,启用用作管理Ghost的用户,将其加入sudo组,设置密码并提供Shell。切换到这个用户并切换到ghost安装的目录(/home/…

Read More

CentOS 7上使用Dante sockd + PAM

迫于某些国内影音平台的版权限制和找不到合适的国外替代品*,我采用一台最低配的阿里云T5(512MiB RAM)来规避此限制。 我采用Dante sockd作为SOCKS5服务器,并用Stunnel建立SSL隧道(客户端一侧也用Stunnel做SSL卸载),以防止凭据被嗅探而成为代理池的一部分。 安装依赖,编译安装dante: # yum install tcp_…

Read More

Apache + TLS 1.3

10月23日, Apache更新了正式支持TLS 1.3的2.4.37版本。(可能成为了Nginx后第二个支持TLS 1.3且被广泛使用的HTTP服务器)。 经过一番尝试,我成功地在自己的VPS上令Apache支持TLS 1.3(RFC8446)。简记其过程与踩到的坑。…

Read More

SSL密钥交换与性能优化

为强化SSL的密钥交换,我们或会考虑使用4096位的RSA证书、384位的EC(DSA)证书和384位的ECDH密钥交换;但性能需要被考虑进其中。以下一组数据使用openssl speed命令在我的VPS上测出。 sign verify sign/s verify/s rsa…

Read More

在Ubuntu 18.04上使用gnome boxes

gnome boxes是一个QEMU-KVM虚拟化的前端。由于一些依赖问题,在Ubuntu 18.04上使用此程序需要一些额外步骤。 $ sudo apt -y install gnome-boxes --install-recommends 安装gnome-boxes后,运行它会报出类似"…

Read More

使用dislocker在Linux上挂载Bitlocker加密的卷

Bitlocker是微软的磁盘加密工具,仅支持Windows Vista以上的Windows操作系统,而微软也未公开其相关参数。 有一开源实现,dislocker,可以实现在Linux上以多种方式(用户密码/恢复密钥/BEK格式的恢复文件…)解密并访问由Bitlocker加密的卷。 编译安装dislocker $ git clone https:…

Read More

解决APT包版本冲突与降级

近日,Ubuntu 16.04.x LTS可通过执行do-release-upgrade升级到18.04.1 LTS,故将一台VPS升级。 升级过程大体顺利,除了一些包的配置文件需要更新——我将diff输出的对比内容截图后保留(VNC Console中无法复制文本)…

Read More

WordPress应对棘手的垃圾评论

近期[8月1日起],我的博客收到大量垃圾评论,它们在WordPress后台中可看到的特征如下: 都以minecraft为姓名 邮箱很可能是随机生成 IP地址很多,多为美国的家庭宽带 评论中无有效内容,皆是些"你的文章写的很好,我很喜欢看"(译)…

Read More

Windows与Linux共用一个蓝牙鼠标

当一台电脑同时安装了Windows和Linux(以Ubuntu 18.04.1为例)时,每当重启并切换到另一个操作系统,蓝牙鼠标便需重新配对,十分不方便。 这是因为蓝牙设备有一个配对密钥(pairing key)——计算机必须有这个密钥,才能与蓝牙鼠标配对。而两个操作系统上保存的配对密钥不同,…

Read More

为WordPress添加外部链接图标

许多网站使用形如"指向右上方的箭头"的图标来标示页面中的外部链接,我们计划为WordPress引入此功能,并使用于文章和评论内容中。 构建一个新的插件,或在当前使用的主题的function.php中插入如下内容: function external_link_v2($text)…

Read More