一种smtp协议非加密邮件的控制方法和系统的制作方法
【技术领域】
[0001]本发明涉及信息安全技术领域,尤其涉及一种SMTP协议非加密邮件的控制方法和系统。
【背景技术】
[0002]随着电子邮件的广泛应用,公司内部通过电子邮件与外部进行交流,在提供方便的同时,同时存在着信息泄漏的风险,此种情况下如何建立有效的机制保证数据的安全就显得十分迫切。
[0003]目前,针对于国产操作系统实现邮件控制的主要方法有两种方案,一种是在邮件传输协议SMTP透明代理服务器进行开发,另一种方案是在网络出口部署邮件审计系统。
[0004]对于第一种方案,虽然可以对内部邮件系统进行管控,但是针对于其它邮件系统难以进行有效的管控。对于第二种方案,需要改变原有网络布局,而且当操作不当时,甚至可能引起网络故障,具有一定风险性。
[0005]综上,如何简单、有效的实现国产主机操作系统的SMTP协议非加密邮件的控制,成为目前急需解决的问题之一,具有重要意义。
【发明内容】
[0006]鉴于上述技术问题,本发明提供一种SMTP协议非加密邮件的控制的方法和系统,解决了阻断邮件时需要依赖SMTP透明代理服务器开发或者需要改变原有网络拓扑的情况,通过直接在用户邮件客户端上对邮件进行过滤,提高了内部网络的安全性。
[0007]根据本发明的一个方面,提供了一种SMTP协议非加密邮件的控制方法,该方法包括:
[0008]将SMTP协议非加密邮件报文上传到netfilter_queue用户态队列中;
[0009]依次读取所述队列中的SMTP协议非加密邮件报文,当所述SMTP协议非加密邮件报文属于合法报文时,判断是否开启全部禁止发送邮件策略;
[0010]若是,则向服务器和客户端发送所有SMTP协议非加密邮件报文的reset信息,并丢弃当前的SMTP协议非加密邮件报文;
[0011]否则,解析所述SMTP协议非加密邮件报文中的收件人信息和/或发件人信息,根据所述收件人信息和/或发件人信息对所述SMTP协议非加密邮件报文进行处理。
[0012]其中,当所述SMTP协议非加密邮件报文属于非法报文时,所述方法还包括:
[0013]将该SMTP协议非加密邮件报文发送到操作系统,由操作系统进行处理。
[0014]其中,在所述将SMTP协议非加密邮件报文上传到netf i 1 ter_queue用户态队列中之前,所述方法还包括:
[0015]利用操作系统内部提供的用户态接口,将目的端口为25的TCP数据在操作系统内核态利用netfilter过滤出来,得到SMTP协议非加密邮件报文。
[0016]其中,所述方法还包括:判断所述SMTP协议非加密邮件报文是否属于合法报文的步骤;
[0017]所述判断所述SMTP协议非加密邮件报文是否属于合法报文,具体包括:
[0018]获取所述SMTP协议非加密邮件报文的头部信息;
[0019]对所述头部信息进行解析,根据解析结果确定所述SMTP协议非加密邮件报文是否属于合法报文。
[0020]其中,所述解析所述SMTP协议非加密邮件报文中的收件人信息和/或发件人信息,根据所述收件人信息和/或发件人信息对所述SMTP协议非加密邮件报文进行处理,包括:
[0021]解析所述SMTP协议非加密邮件报文中“MAIL FROM: ”和“RCPT T0: ”字段,获取收件人的邮件地址和/或发件人的邮件地址;
[0022]将所述收件人的邮件地址和/或发件人的邮件地址与预设非法邮件地址进行匹配;
[0023]判断所述收件人的邮件地址和/或发件人的邮件地址与预设非法邮件地址是否匹配成功;
[0024]如果匹配成功,则向服务器和客户端发送reset信息,并丢弃所述SMTP协议非加密邮件报文;
[0025]否则,将该SMTP协议非加密邮件报文发送到操作系统,由操作系统进行处理。
[0026]根据本发明的另一个方面,提供了一种SMTP协议非加密邮件的控制系统,该系统包括:
[0027]报文上传模块,用于将SMTP协议非加密邮件报文上传到netfilter_queue用户态队列中;
[0028]报文读取模块,依次读取所述队列中的SMTP协议非加密邮件报文;
[0029]处理策略判断模块,用于当报文读取模块读取的SMTP协议非加密邮件报文属于合法报文时,判断是否开启全部禁止发送邮件策略;
[0030]第一处理模块,用于当开启全部禁止发送邮件策略时,向服务器和客户端发送所有SMTP协议非加密邮件报文的reset信息,并丢弃当前的SMTP协议非加密邮件报文;
[0031]第二处理模块,用于当没有开启全部禁止发送邮件策略时,解析所述SMTP协议非加密邮件报文中的收件人信息和/或发件人信息,根据所述收件人信息和/或发件人信息对所述SMTP协议非加密邮件报文进行处理。
[0032]其中,所述第二处理模块,还用于当所述SMTP协议非加密邮件报文属于非法报文时,将该SMTP协议非加密邮件报文发送到操作系统,由操作系统进行处理。
[0033]其中,所述系统还包括:
[0034]报文获取模块,用于在报文上传模块所述将SMTP协议非加密邮件报文上传到netf ilter_queue用户态队列中之前,利用操作系统内部提供的用户态接口,将目的端口为25的TCP数据在操作系统内核态利用netfilter过滤出来,得到SMTP协议非加密邮件报文。
[0035]其中,所述系统还包括:
[0036]报文合法性判断模块,用于判断所述SMTP协议非加密邮件报文是否属于合法报文;
[0037]所述报文合法性判断模块包括第一获取单元、第一解析单元和判定单元;
[0038]所述第一获取单元,用于获取所述SMTP协议非加密邮件报文的头部信息;
[0039]所述第一解析单元,用于对所述头部信息进行解析;
[0040]所述判定单元,用于根据所述第一解析单元的解析结果确定所述SMTP协议非加密邮件报文是否属于合法报文。
[0041 ] 其中,所述第二处理模块包括:
[0042]第二解析单元,用于解析所述SMTP协议非加密邮件报文中“MAIL FROM: ”和“RCPTτο:,,字段;
[0043]第二获取单元,用于根据所述第二解析单元的解析结果获取收件人的邮件地址和/或发件人的邮件地址;
[0044]匹配单元,用于将所述收件人的邮件地址和/或发件人的邮件地址与预设非法邮件地址进行匹配;
[0045]匹配判断单元,用于判断所述收件人的邮件地址和/或发件人的邮件地址与预设非法邮件地址是否匹配成功;
[0046]控制单元,用于当所述匹配判断单元的判断结果为匹配成功时,向服务器和客户端发送reset信息,并丢弃所述SMTP协议非加密邮件报文;或,当所述匹配判断单元的判断结果为匹配失败时,将该SMTP协议非加密邮件报文发送到操作系统,由操作系统进行处理。
[0047]本发明的有益效果为:
[0048]本发明提供的SMTP协议非加密邮件的控制方法和系统,解决了阻断邮件时需要依赖SMTP透明代理服务器开发或者需要改变原有网络拓扑的情况,直接在用户邮件客户端上对邮件进行过滤,设计方案实施简单易行,对于用户透明,易于使用,不影响邮件客户端的操作,提高了内部网络的安全性。
【附图说明】
[0049]通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的,而并不认为是对本发明的限制。而且在整个附图中,用相同的参考符号表示相同的部件。在附图中:
[0050]图1为本发明实施例提出的一种SMTP协议非加密邮件的控制方法的流程图;
[0051]图2为本发明另一实施例提出的一种SMTP协议非加密邮件的控制方法的步骤S15的细分流程图;
[0052]图3为本发明实施例提出的一种SMTP协议非加密邮件的控制系统的结构框图。
【具体实施方式】
[0053]下面详细描述本发明的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,仅用于解释本发明,而不能解释为对本发明的限制。
[0054]本技术领域技术人员可以理解,除非特意声明,这里使用的单数形式“一”、“一个”、“所述”和“该”也可包括复数形式。应该进一步理解的是,本发明的说明书中使用的措辞“包括”是指存在所述特征、整数、步骤、操作、元件和/或组件,但是并不排除存在或添加一个或多个其他特征、整数、步骤、操作、元件、组件和/或它们的组。
[0055]本技术领域技术人员可以理解,除非另外定义,这里使用的所有术语(包括技术术语和科学术语),具有与本发明所属领域中的普通技术人员的一般理解相同的意义。还应该理解的是,诸如通用字典中定义的那些术语,应该被理解为具有与现有技术的上下文中的意义一致的意义,并且除非被特定定义,否则不会用理想化或过于正式的含义来解释。
[0056]图1示出了本发明实施例的一种SMTP协议非加密邮件的控制方法的流程图。
[0057]参照图1,本发明实