本发明涉及计算机,尤其涉及一种ipsec虚拟专用网客户端和方法。
背景技术:
1、随着信息国产化的越来越普遍,安全产品也需要越来越多的应用在国产化平台上,但是原来运行在windows系统平台上的ipsec虚拟专用网(ipsec vpn)客户端在国产化平台上无法正常使用。为了适应信息国产化的需求,需要提供一种能够在国产化平台上使用的ipsec虚拟专用网客户端。
技术实现思路
1、本发明提供一种ipsec虚拟专用网客户端和方法,用以解决现有技术中ipsec虚拟专用网客户端在国产化平台上无法正常使用的缺陷。
2、本发明提供一种ipsec虚拟专用网客户端,包括:
3、用户交互模块,隧道协商模块和加密传输模块,
4、其中,所述用户交互模块用于提供客户端用户交互界面,以供用户在所述用户交互界面上对第一配置信息进行处理和/或执行第一操作;
5、所述隧道协商模块用于在协商的第一阶段,与防火墙协商出用于第一交互数据安全传输所采用的加密算法、认证算法和密钥,建立安全隧道,在协商的第二阶段,基于所述安全隧道,和防火墙协商出用于第二交互数据安全传输所采用的加密算法、认证算法和密钥,为ipsec协商安全服务建立ipsec安全联盟ipsec sa;
6、所述加密传输模块用于基于所述ipsec sa,对所述第二交互数据进行加密传输;
7、其中,所述第一交互数据包括:协商过程中用户认证的相关数据、从防火墙上获取到的配置信息,以及所述第二阶段的交互数据包;
8、所述第二交互数据为所述客户端访问保护子网的交互流量;
9、所述ipsec虚拟专用网客户端在国产系统下运行。
10、根据本发明提供的一种ipsec虚拟专用网客户端,所述用户交互模块和隧道协商模块采用跨平台的qt技术实现。
11、根据本发明提供的一种ipsec虚拟专用网客户端,所述建立安全隧道,包括:
12、在协商的第一阶段之后和第二阶段之前,从防火墙上获取第二配置信息;
13、将所述第二配置信息保存在不同的环境变量中,并调用system系统函数执行shell脚本,在所述shell脚本中使用所述环境变量的值配置tun虚拟网卡的ip地址,并添加访问子网的路由信息;
14、基于所述tun虚拟网卡的ip地址和访问子网的路由信息,建立安全隧道;
15、其中,所述tun虚拟网卡为所述国产系统内置的字符设备。
16、根据本发明提供的一种ipsec虚拟专用网客户端,所述第二配置信息包括保护子网地址、保护子网掩码、虚拟地址池地址、虚拟地址池掩码、dns信息中的一项或多项。
17、根据本发明提供的一种ipsec虚拟专用网客户端,所述协商进程是通过使用管理员权限启动的。
18、根据本发明提供的一种ipsec虚拟专用网客户端,所述加密传输模块用于基于所述用于第二交互数据安全传输所采用的加密算法、认证算法和密钥,通过所述tun虚拟网卡对所述第二交互数据进行加密传输。
19、根据本发明提供的一种ipsec虚拟专用网客户端,在编译完成后,所述用户交互模块,隧道协商模块和加密传输模块被打包成一个deb安装包。
20、本发明还提供一种数据传输方法,基于如上任一项所述的ipsec虚拟专用网客户端包括:
21、响应于用户在所述用户交互模块上的操作,通过所述隧道协商模块,建立ipsec安全联盟ipsec sa;
22、所述加密传输模块,基于所述ip sec sa对所述ipsec虚拟专用网客户端与保护子网之间的交互流量进行加密传输。
23、本发明还提供一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现如上所述的数据传输方法。
24、本发明还提供一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现如上所述的数据传输方法。
25、本发明还提供一种计算机程序产品,包括计算机程序,所述计算机程序被处理器执行时实现如上所述的数据传输方法。
26、本发明提供的ipsec虚拟专用网客户端和方法,包括用户交互模块,隧道协商模块和加密传输模块,能够在国产系统下运行,给使用国产化平台的用户在使用vpn功能时提供了很大的方便。
1.一种ipsec虚拟专用网客户端,其特征在于,包括:用户交互模块,隧道协商模块和加密传输模块,
2.根据权利要求1所述的ipsec虚拟专用网客户端,其特征在于,所述用户交互模块和隧道协商模块采用跨平台的qt技术实现。
3.根据权利要求1所述的ipsec虚拟专用网客户端,其特征在于,所述建立安全隧道,包括:
4.根据权利要求3所述的ipsec虚拟专用网客户端,其特征在于,所述第二配置信息包括保护子网地址、保护子网掩码、虚拟地址池地址、虚拟地址池掩码、dns信息中的一项或多项。
5.根据权利要求3所述的ipsec虚拟专用网客户端,其特征在于,所述协商进程是通过使用管理员权限启动的。
6.根据权利要求3所述的ipsec虚拟专用网客户端,其特征在于,所述加密传输模块用于基于所述用于第二交互数据安全传输所采用的加密算法、认证算法和密钥,通过所述tun虚拟网卡对所述第二交互数据进行加密传输。
7.根据权利要求1所述的ipsec虚拟专用网客户端,其特征在于,在编译完成后,所述用户交互模块,隧道协商模块和加密传输模块被打包成一个deb安装包。
8.一种数据传输方法,其特征在于,基于如权利要求1至7中任一项所述的ipsec虚拟专用网客户端,所述方法包括:
9.一种电子设备,包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现如权利要求8所述的数据传输方法。
10.一种非暂态计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求8项所述的数据传输方法。