一种基于Linux的透明内网访问方法及装置制造方法及图纸

技术编号:26226559 阅读:16 留言:0更新日期:2020-11-04 11:04
本发明专利技术提供了一种基于Linux的透明内网访问方法及装置,属于网络安全技术领域,该方法包括如下步骤:S1:部署隧道装置;S2:创建网络隧道;S3:配置业务规则;S4:外部主机通过隧道访问内部主机;S5:内部主机通过隧道将回复数据由数据进入的网口传输至外部主机。该装置包括内部主机与外部主机,还包括:隧道客户端和隧道服务端。本发明专利技术外部主机只要能跟隧道客户端通信,无需额外设置,即可访问内部主机,而内部主机只要把网关设为隧道服务端,无需额外设置,即可回复外部主机数据,实现外部主机对内部主机的透明访问。本发明专利技术中内部主机能获取外部主机的真实IP地址,隐藏内部主机真实IP地址,有利于攻击防御和攻击溯源。

【技术实现步骤摘要】
一种基于Linux的透明内网访问方法及装置
本专利技术涉及网络安全
,尤其涉及一种基于Linux的透明内网访问方法及装置。
技术介绍
随着互联网的飞速发展,远程访问的需求越来越大,同时,网络安全问题也不容忽视。基于远程访问内网和网络安全隔离的需求,通常会用到虚拟专用隧道通信,但是传统的VPN隧道如PPTP、L2TP,客户端主机使用VPN的IP地址与内部主机通信,被访问的内部主机获取不到客户端主机的真实IP地址。Linux系统拥有强大的网络功能,广泛用于各种网络设备。在一些想节省空间、降低成本,或充分利用硬件资源的场景下,会使用有多个网络接口的设备来部署业务,每个网口分配不同网段的IP地址,统一由系统管理。多网口的情况下,由于受Linux系统自身路由机制的影响,有时会存在通信异常的情况:网络数据从设备某个网口进来,转发出去之后,回来的数据没有从这个网口回去,导致通信异常。究其根本原因,是因为设备有多个网卡时,受系统路由的影响无法确定回复数据的网口。这一问题是目前亟待解决的问题,现有技术也进行了一些探索。中国专利申请文献CN107026795A,公开了一种基于iptables和策略路由的回包至来源网口的方法,该方法主要包括以下步骤:Linux系统的网络设备接收到外部请求数据包;判断收到的外部请求数据包是否为所在链接上的首个数据包,如果是,则根据iptables规则,在该数据包上打上与接收该数据包的网口相关的标签,并保存到该数据包所在链接上,如果否,根据iptables规则,将标签保存到该数据包上;根据策略路由,将带有标签的所述外部请求数据包转发至Linux系统,Linux系统收到该数据包并作出应答,将应答消息转发至路由表中的网络设备,网络设备收到应答数据包,并根据iptables规则,将保存的标签打到该应答数据包上,并将该数据包通过对应的网口转发到请求方。对比文件1公开的方法,解决了多网口的情况下,Linux系统中可能会出现的因数据入网口与出网口不一致而导致的通信异常。该方法由被访问主机自身进行网口溯源,采用了打标记和策略路由,但是没有DNAT规则,而是通过被访问主机自身的路由转发功能把数据发送给内部主机,内部主机看不到访问者的真实IP;同时该方法没有使用隧道通信,访问者是直接访问内部主机的IP,不能隐藏和保护内部主机,不适用于对攻击的防御。中国专利申请文献CN107483593B,公开了一种双向透明代理方法及系统。公开的系统包括:用户端、代理一端、代理二端和服务端。公开的方法为:代理一端根据请求端请求报文的协议类型是有链接还是无连接,配置对应的iptables规则,并接收根据该规则引导的请求端请求的报文,代理一端将请求端请求报文和报文的协议类型发送到代理二端;代理二端根据收到的请求端请求报文和报文的协议类型,以请求端请求报文中的请求端IP地址和请求端端口作为源IP地址和源端口,发送请求端请求报文到应答端;代理二端通过配置OSPF服务,引导并接收应答端的回应报文,并将该回应报文发送到代理一端;代理一端将接收到的应答端回应报文发送到请求端。对比文件2采用打标记和策略路由,引导请求报文进入代理端,以及记录连接关系,虽实现了透明访问,但是该方法不对网口等信息进行标记,不适用于多网口的情况,且该方法中通信是双向透明的,访问者和内部主机互相知道对方的真实IP地址。现有技术至少存在以下不足:1.在多网口的情况下,通过被访问主机自身的路由转发功能把数据发送给内部主机,内部主机看不到访问者的真实IP,不利于攻击防御和攻击溯源。2.在多网口的情况下,没有使用隧道通信,访问者是直接访问内部主机的IP,不能隐藏和保护内部主机,不适用于对攻击的防御。3.现有技术的透明访问方法,在用于部署诱捕节点和蜜罐时,只适用于一个主机部署一个或多个相同网段的诱捕节点的情况,部署成本高。
技术实现思路
为解决现有技术中存在的技术问题,本专利技术提供了一种基于Linux的透明内网访问装置及方法,该装置包括:外部主机和内部主机,还包括隧道客户端和隧道服务端。隧道客户端和隧道服务端使用C/S结构,外部主机和隧道客户端部署在外部网络,通过网络连接;内部主机和隧道服务端部署在内部网络,也通过网络连接;同时隧道客户端与隧道服务端通过网络连接,从而为实现充分利用设备资源、透明访问内网提供了一种隧道装置。在透明访问方法中,装置配置完成后,外部主机只要能跟隧道客户端通信,无需做额外设置,即可通过该装置访问内部主机,而内部主机只要把网关设为隧道服务端,无需额外设置,即可正常回复外部主机的访问,并且内部主机接收到的数据的源IP地址是访问者的真实主机IP地址,从而实现了对内网的透明访问,同时访问者的真实主机IP地址可以用于攻击溯源。该方法支持隧道客户端有多网口,可以充分利用设备资源。此外,本专利技术将隧道客户端布置为诱捕节点装置,诱捕节点装置有多个物理网卡,每个网卡配置多个同网段的IP地址,不同的网卡分别配置不同网段的IP地址,每个IP地址作为诱捕节点的IP地址,部署为诱捕节点,即一个IP地址对应一个诱捕节点,从而实现只使用一个网络主机即一个诱捕节点装置,达到部署运行多个诱捕节点的效果。一种基于Linux的透明内网访问方法,其特征在于,包括如下步骤:S1:部署隧道装置,所述隧道装置包括隧道客户端和隧道服务端;S2:创建网络隧道:根据物理网口的数量,创建tun虚拟网卡和socket连接来创建网络隧道;S3:配置业务规则:创建流量打标记规则、策略路由规则和DNAT规则,上述规则使从物理网口进入的数据可以通过网络隧道传输到与物理网口一一对应的内部主机;同时可以使内部主机回复外部主机的数据从进入数据的隧道和物理网口传输至外部主机;S4:外部主机通过网络隧道访问内部主机:外部主机访问数据根据步骤S3配置的规则,通过数据进入的物理网口对应的网络隧道,传输到隧道服务端,再由隧道服务端根据配置的规则将数据发给内部主机;S5:内部主机返回的数据由外部主机访问时进入的物理网口传输给外部主机:内部主机将回复数据传到隧道服务端,隧道服务端根据配置的规则,将回复数据通过访问数据进入时所用的网络隧道传输到隧道客户端,隧道客户端根据配置的规则将并回复数据由外部主机访问时进入的物理网口传输给外部主机。优选地,部署多台所述隧道客户端,多台所述隧道客户端共用一个隧道服务端;所述隧道客户端含有多个物理网口,所述隧道服务端至少含有两个物理网口。优选地,步骤S1中部署隧道装置还包括部署外部主机和内部主机,具体部署如下:在外部网络部署隧道客户端和外部主机;在内部网络部署隧道服务端和内部主机;外部主机与隧道客户端通过网络连接;隧道客户端与隧道服务端通过网络连接;内部主机与隧道服务端通过网络连接。优选地,所述外部网络部署为受保护的网络,所述内部网络部署为蜜网,所述外部主机部署为攻击者主机,所述隧道客户端部署为诱捕节点装置,每个诱捕节点装置部署多个诱捕节点,所述本文档来自技高网
...

【技术保护点】
1.一种基于Linux的透明内网访问方法,其特征在于,包括如下步骤:/nS1:部署隧道装置,所述隧道装置包括隧道客户端和隧道服务端;/nS2:创建网络隧道:根据物理网口的数量,创建tun虚拟网卡和socket连接来创建网络隧道;/nS3:配置业务规则:创建流量打标记规则、策略路由规则和DNAT规则,上述规则使从物理网口进入的数据可以通过网络隧道传输到与该物理网口的IP地址和端口一一对应的内部主机的IP地址和端口;同时可以使内部主机回复外部主机的数据从数据进入的隧道和物理网口传输至外部主机;/nS4:外部主机通过网络隧道访问内部主机:/n外部主机访问数据根据步骤S3配置的DNAT规则,通过数据进入的物理网口对应的网络隧道,传输到隧道服务端,再由隧道服务端根据配置的DNAT规则将数据发给内部主机;/nS5:内部主机返回的数据由外部主机访问时进入的物理网口传输给外部主机:/n内部主机将回复数据传到隧道服务端,隧道服务端根据配置的规则,将回复数据通过访问数据进入时所用的网络隧道传输到隧道客户端,隧道客户端根据配置的规则将回复数据由外部主机访问时进入的物理网口传输给外部主机。/n

【技术特征摘要】
1.一种基于Linux的透明内网访问方法,其特征在于,包括如下步骤:
S1:部署隧道装置,所述隧道装置包括隧道客户端和隧道服务端;
S2:创建网络隧道:根据物理网口的数量,创建tun虚拟网卡和socket连接来创建网络隧道;
S3:配置业务规则:创建流量打标记规则、策略路由规则和DNAT规则,上述规则使从物理网口进入的数据可以通过网络隧道传输到与该物理网口的IP地址和端口一一对应的内部主机的IP地址和端口;同时可以使内部主机回复外部主机的数据从数据进入的隧道和物理网口传输至外部主机;
S4:外部主机通过网络隧道访问内部主机:
外部主机访问数据根据步骤S3配置的DNAT规则,通过数据进入的物理网口对应的网络隧道,传输到隧道服务端,再由隧道服务端根据配置的DNAT规则将数据发给内部主机;
S5:内部主机返回的数据由外部主机访问时进入的物理网口传输给外部主机:
内部主机将回复数据传到隧道服务端,隧道服务端根据配置的规则,将回复数据通过访问数据进入时所用的网络隧道传输到隧道客户端,隧道客户端根据配置的规则将回复数据由外部主机访问时进入的物理网口传输给外部主机。


2.根据权利要求1所述的基于Linux的透明内网访问方法,其特征在于,部署多台所述隧道客户端,多台所述隧道客户端共用一个隧道服务端;所述隧道客户端含有多个物理网口,所述隧道服务端至少含有两个物理网口。


3.根据权利要求2所述的基于Linux的透明内网访问方法,其特征在于,步骤S1中部署隧道装置还包括部署外部主机和内部主机,具体部署如下:
在外部网络部署隧道客户端和外部主机;
在内部网络部署隧道服务端和内部主机;
外部主机与隧道客户端通过网络连接;
隧道客户端与隧道服务端通过网络连接;
内部主机与隧道服务端通过网络连接。


4.根据权利要求3所述的基于Linux的透明内网访问方法,其特征在于,所述外部网络部署为受保护的网络,所述内部网络部署为蜜网,所述外部主机部署为攻击者主机,所述隧道客户端部署为诱捕节点装置,每个诱捕节点装置部署多个诱捕节点,所述内部主机部署为蜜罐,每个所述诱捕节点绑定一个所述蜜罐。


5.根据权利要求4所述的基于Linux的透明内网访问方法,其特征在于,所述诱捕节点装置有多个网卡,同一个网卡配置多个同网段的IP地址,不同的网卡分别配置不同网段的IP地址,每个所述IP地址作为诱捕节点的IP地址,部署诱捕节点。


6.根据权利要求1所述的基于Linux的透明内网访问方法,其特征在于,步骤S3中配置业务规则包括以下步骤:
S301隧道服务端进行相关业务配置并创建规则:
隧道服务端配置如下绑定关系:
隧道客户端的IP地址和端口与隧道服务端的IP地址和端口绑定关系;
隧道服务端的IP地址和端口与内部主机的IP地址和端口绑定关系;
隧道服务端根据隧道服务端的IP地址和端口与内部主机的IP地址和端口的绑定关系创建DNAT转发规则;
隧道服务端使用iptables创建流量打标记规则;
隧道服务端创建策略路由规则,根据iptables打的标记,把内部主机回复数据发往对应的虚拟网卡及网络隧道;
S302隧道服务端将配置通知给隧道客户端:隧道服务端将隧道客户端的IP地址和端口与隧道服务端的IP地址和端口绑定关系通知给隧道客户端;
S303隧道客户端创建规则:
隧道客户端使...

【专利技术属性】
技术研发人员:吴建亮胡鹏刘木祥
申请(专利权)人:广州锦行网络科技有限公司
类型:发明
国别省市:广东;44

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1