Windows PRE_CONNECT_CHECK_FAILURE: OpenVPN Agentservice is not running.

image.png

安全加密

openvpn通过使用公开密钥(非对称密钥,加密解密使用不同的key,一个称为Publice key,另外一个是Private key)对数据进行加密的。这种方式称为TLS加密。

openvpn使用TLS加密的工作过程是,首先VPN Sevrver端和VPN Client端要有相同的CA证书,双方通过交换证书验证双方的合法性,用于决定是否建立VPN连接。然后使用对方的CA证书,把自己目前使用的数据加密方法加密后发送给对方,由于使用的是对方CA证书加密,所以只有对方CA证书对应的Private key才能解密该数据,这样就保证了此密钥的安全性,并且此密钥是定期改变的,对于窃听者来说,可能还没有破解出此密钥,VPN通信双方可能就已经更换密钥了。

核心工作原理

1. 隧道建立机制 OpenVPN创建一个虚拟的加密隧道,通过TUN/TAP接口实现。TUN工作在网络层(IP层),TAP工作在数据链路层(以太网层)。当你的应用发送数据时,这些数据会被重定向到虚拟网卡,然后通过加密隧道传输。

2. 加密体系

流量分发机制

路由模式下的流量处理:

  1. 客户端发起连接 → 本地路由表被修改,特定流量导向虚拟网卡
  2. 数据包封装 → 原始IP包被加密后封装在新的UDP/TCP包中
  3. 服务端接收 → 解密后根据内部路由规则转发
  4. NAT处理 → 服务端通常做SNAT,让客户端流量以服务端IP出网

关键的流量分发策略: