wireshark 导出 https 证书

一、找到证书所在的数据包 证书是从服务端返回的,从 https 握手的过程来看,当服务端返回了 server hello 之后,就会主动将自己的证书返回给客户端,因此只要从 server hello 往后面找 1-2 个包,就可以找到证书所在的数据包了。 wireshark 会自动将证书解析出来:   不过 ... 阅读更多

创建自签名 CA 和 SSL 证书

一、创建 CA CA 全称是 CertificateAuthority,意思是证书颁发机构。只有当 CA 被认为是受信任的颁发机构时,经过该 CA 颁发出来的证书才属于受信任的证书。否则,认为证书是不受信任的。 为了生成一个自签名的 CA,需要先生成 CA 私钥: [crayon-694ec0cf920ed035287 ... 阅读更多

自签名证书报错 ERR_CERT_COMMON_NAME_INVALID 的解决方案

一、问题现象 使用自签名的证书后,chrome 报错此服务器无法证实它就是 www.maqian.cn - 它的安全证书没有指定主题备用名称。这可能是因为某项配置有误或某个攻击者拦截了您的连接。 错误码是 NET::ERR_CERT_COMMON_NAME_INVALID: 二、问题原因 生成证书的时候 ... 阅读更多

企业网络应该如何规划以减少各种网络问题?

最近公司网络一直抽风,整个机房网络都不通,严重影响工作效率。后面花了大量人力解决问题后没多久,竟然又再次出现问题了。看着纷乱复杂的网络接线,我们也只是 「望洋兴叹」!因为参与了整个问题的处理过程 (我不是网关,仅参与了排查和分析过程),不由得对问题产生了一些思考和想法:企业网络到底应该如何规划才能避免不 ... 阅读更多

不要被惯性扼杀了思维:为什么监听状态的 SOCKET 会产生 TIME-WAIT 状态?

TIME-WAIT 状态是 TCP 四次挥手中的状态,在我的认知中,它是客户端 socket 的状态。但是最近遇到了个问题是:服务端上某个处于监听状态的 socket 有很多连接都处于这个状态。 当然在某些特定的场景下,服务端出现大量 TIME-WAIT 状态的 socket 状态是合理的,例如爬虫服务器,它要主动发起大 ... 阅读更多

HTTPS 数字证书的相关概念

一、证书和 CA HTTPS 证书的颁发和验证一共包含以下几个角色: 顶级 CA:最顶级的证书颁发机构,可以签发中间 CA/。 中间 CA:也是受信任的证书颁发机构,它由根 CA 签发,中间证书可以有很多级,中间 CA 也能再签发中间 CA 。 终端证书:由 CA 签发出来的证书。 三者的关系为: 顶级 CA 机构一般不直接参数 ... 阅读更多

HTTP 代理

一、 HTTP 代理 HTTP 代理的实现很简单,和普通的 HTTP 请求差别不大,只要在请求行的 uri 路径中加上实际请求的 host 就可以了: 代理服务器收到这个请求后,会主动请求 uri 中的 host 地址 (不是请求头部的 Host 字段中的值),然后去掉这部分构造成一个普通的 HTTP 请求发送到服务端。服务端响应后的 ... 阅读更多

socks5 代理工作流程和原理

一、 socks5 协议 socks5 协议是一款广泛使用的代理协议,它在使用 TCP/IP 协议通讯的前端机器和服务器机器之间扮演一个中介角色,使得内部网中的前端机器变得能够访问 Internet 网中的服务器,或者使通讯更加安全。 SOCKS5 服务器通过将前端发来的请求转发给真正的目标服务器, 模拟了一个前端 ... 阅读更多

一次孤儿 socket 过多导致负载高的问题排查过程

一、问题现象 客户报障,说使用了我们的网关设备后网络经常中断。具体的情形是用我们设备做代理上网后,流量图显示流量每隔两分钟就会直线下跌一次,同时就伴随着内网用户断网。 经过排查后发现问题原因是设备负载太高了导致,出问题时候的负载趋势图为: 从图形来看,负载是每 1-2 分钟就会上升一次,而且上升得特别明 ... 阅读更多

HTTP1.0 、 HTTP1.1 和 HTTP2.0 的区别

一、 HTTP1.0 和 HTTP1.1 HTTP1.0 和 1.1 的主要区别为: 长连接:HTTP1.0 默认是短连接,HTTP1.1 默认使用长连接。 断点续传:HTTP1.1 支持断点续传,可以通过 Range 头部指定需的资源数据部分。 添加 Host 头部:HTTP1.1 中为了解决虚拟主机的使用场景,通过 Hos ... 阅读更多