EAP信息交换:

上图中展示的是OTP(一次性密码)实现EAP交换过程,具体的EAP交换过程如下:

步骤1:请求方向认证方发送EAPOL-Start消息,通知对方已经做到了认证准备(注意:若会话由认证方发起,不需要该报文)
步骤2:在检测到链路活动后(比如客户连接到SW端口),认证方向请求当发送EAP-Request/Identity消息
步骤3:请求方给认证方回复EAP-Response/Identity消息,并由认证方转发给认证Server,请求方和认证Server之间也可以使用UDP  
             承载的Radius协议进行通信
步骤4:认证Server给认证服务器发送一个Radius格式的质询(challenge)消息,认证方将其重新封装为EAPOL发送给请求方(注意
             支持单向和双向认证,单向即Server验证请求方的身份;双向即双方都验证对方身份,无线中采用双向避免中间人攻击)
步骤5:请求方向认证方恢复质询消息,并由认证方准发给认证Server
步骤6:如果请求方提供的身份凭证无误,认证Server将返回Success的消息给请求方,并由认证方转发给请求方,认证方根据认证
             结果给予请求方访问网络资源的权限。

802.1X定义的三种端口状态:

如果SW端口使用了802.1X认证,则端口认证处于Auto状态,在请求方通过认证之前,端口处于非授权状态,待请求方认证通过后,端口处于授权状态。

端口认证主机模式:

端口认证的模式有5种,分别为单主机模式、多主机模式、多域认证模式、多认证模式和开放式模式。

EAP协议类型:

可以采用多种EAP协议来保护优先或无线网络的安全。

几种常使用的EAP:

 (1) EAP-MD5(EAP-消息摘要算法第5版)——不推荐
    采用质询-响应机制对用户进行认证。
    
    特点:
    • 只采用用户名和密码作为请求方身份凭证
    • 大多设备支持(相对简单)
    • EAP-MD5对处理器要求不高,不会给认证双方造成负担
    • 存在固有漏洞,安全性较差
        a. 只提供单向认证(请求方不能确定认证服务器的身份)
        b. 请求方的用户名以明文方式传输(传输途中遭截获可通过社会工程学攻击获取密码)
        c. MD5散列函数安全性较差(易遭到离线词典攻击)
    
EAP-MD5数据字段:
    

原理:
    

 (2) PEAPv0/MSCHAPv2(EAP-受保护的EAP/微软质询握手认证协议第2版)
    
    该EAP的两个阶段:
        a. 阶段一:采用和EAP-TLS相同的过程建立TLS隧道,并完成对认证服务器的身份的验证,该阶段完成,请求方和认证服务器之间建立了一条用户传输EAP消息的加密隧道。
        b. 阶段二:认证服务器采用另一种EAP协议(通常为MS-CHAPv2)对请求方进行认证,
    
    特点:
    • 由Cisco、Microsoft和RSA Security共同开发
    • 通过创建加密的TLS隧道以传输请求方的身份凭证
    • 支持多种EAP类型作为内部认证协议
    • 采用基于公钥基础设施(PKI)标准的服务器端数字证书作为服务器的身份凭证
    • 若无法为所有的用户签发证书,也可以采用Windows的用户名和密码(这通过查询Windows域控制器、Active Directory或者其他现有的用户数据库实现)
    • 分为两阶段
    
    EAP数据(PEAPv0/MS-CHAPv2):
    

原理:
    

(3) EAP-LEAP(EAP-轻量EAP)
    特点:
    • Cisco开发
    • 认证双方采用双向认证
    • 请求方身份凭据为用户名和密码
    • 认证服务器的身份凭证为共享密钥(shared secret)
    • 先验证请求方,再验证认证服务器
    
    原理:
    
    
    (4) EAP-TLS(EAP-传输层安全)
    特点:
    • 由Microsoft开发
    • 以TLS协议为基础
    • 采用双向认证
    • 使用数字证书或者智能卡作为身份凭证
    • 配置复杂
    • 部署成本高
    • 对处理器运算要求较高
    • 可以配置为双要素认证(two-factor authentication)系统,它是目前安全性最高的认真机制之一
    
    EAP-TLS数据字段:
    
    原理:
    

 (5) EAP-TTLS(EAP-隧道化传输层安全)
    特点:
    • 可视为EAP-TLS扩展
    • 认证过程分为两个阶段
    • 一定程度上简化了配置
    • 支持PAP、CHAP等非EAP协议
    • 不要求双方都采用数字证书的身份凭证
    
    EAP-TTLS数据字段:
    

 原理:
    阶段1:EAP-TTLS采用与EAP-TLS类似的方式在请求方和认证Server之间创建加密的TLS隧道,并在隧道中封装其他认证机制。
    阶段2:在隧道中进行双向的身份验证。
    
    (6) EAP-FAST(EAP-经由安全隧道的灵活认证)
    
    特点:
    • Cisco开发的专有协议
    • 安全性高
    • 不必使用数字证书
    • 能抵御中间人攻击、重放攻击、词典攻击等在内的多种网络攻击
    • 认证分为两个阶段
        a. 阶段1:请求方和认证服务器间采用受保护的访问凭证(PAC)创建加密的TLS隧道
        b. 阶段2:请求方的身份凭证通过TLS隧道发送给认证服务器,并由后者加以验证
        
    注意:TLS隧道依赖于PAC,PAC由证书服务器动态配置并管理。
    
    EAP-FAST数据字段:
    

附:

EAP认证的更多相关文章

  1. 基于TLS的EAP 认证方法

    TLS: transport level security , 安全传输层协议,用于在两个通信应用程序之间提供保密性和数据完整性.该协议由两层组成: TLS 记录协议(TLS Record)和 TLS ...

  2. [EAP]将hostapd作为radius服务器搭建EAP认证环境

    文章主要由以下几部分组成: 0.概念理解: WPA/WPA2,EAP,IEEE, 802.11i, WiFi联盟, 802.1x 1.编译hostapd 2.配置hostapd的conf文件 3.外接 ...

  3. Ubuntu下freeradius的EAP-MD5,PEAPv0/EAP-MSCHAPv2,EAP-TTLS/MD5,EAP-TTLS/MSCHAPv2方式认证(基于mysql)

    基于freeradius+mysql,今天验证下freeradius的EAP认证:1.EAP-MD5:2.EAP-PEAP 一.EAP-MD5方式认证 1.修改配置文件 (1)/usr/local/e ...

  4. CentOS7用hostapd做radius服务器为WiFi提供802.1X企业认证

    CentOS7用hostapd做radius服务器为WiFi提供802.1X企业认证 来源: https://www.cnblogs.com/osnosn/p/10593297.html 来自osno ...

  5. CentOS6.5下搭建LAMP+FreeRadius+Daloradius Web管理和TP-LINK路由器、H3C交换机连接,实现,上网认证和记账功能

    什么是RADIUS服务: RADIUS:(Remote Authentication Dial In User Service)中文名为远程用户拨号认证服务,简称RADIUS,是目前应用最广泛的AAA ...

  6. 无线加密的多种方法及其区别(WEP WPA TKIP EAP)

    无线加密的多种方法及其区别(WEP WPA TKIP EAP) 无线网络的安全性由认证和加密来保证. 认证允许只有被许可的用户才能连接到无线网络: 加密的目的是提供数据的保密性和完整性(数据在传输过程 ...

  7. Windows Server 搭建企业无线认证(Radius认证方案)

    认证协议介绍: 扩展认证协议EAP(Extensible Authentication Protocol) 是一个在无线网络或点对点连线中普遍使用的认证框架.它被定义在RFC 3748中,并且使RFC ...

  8. 网络测试技术——802.1X_MD5认证(上篇)

    一.MD5认证简介 1.认证过程 (1)无隧道 (2)客户端和服务器之间进行 2.单向认证 (1)服务器对客户端认证 3.缺点 (1)用户名明文传输 (2)弱MD5哈希   二.MD5认证过程 1.客 ...

  9. 【转】WiFi基础知识

    http://blog.csdn.net/myarrow/article/details/7930131 1. IE802.11简介 标准号 IEEE 802.11b IEEE 802.11a IEE ...

随机推荐

  1. SpringMVC-时间类型转换

    在上一篇SpringMVC的提交表单中,我们使用的日期为String型,可以将日期转换为Date型,然后使用initBinder函数进行显示,具体代码如下: (1)首先更改User.java的birt ...

  2. docker互联机制实现便捷互访

    何为容器互联 & 为何需要容器互联 容器的互联是一种让多个容器中应用进行快速交互的方式,它会在源和接收容器之间创建连接关系,接收容器可以通过容器名快速访问到源容器,而不用指定具体的 ip 地址 ...

  3. Codeforces A. Serval and Bus

    inputstandard inputoutputstandard outputIt is raining heavily. But this is the first day for Serval, ...

  4. 修改vsftpd的默认根目录/var/ftp/pub到其他目录

    修改ftp的根目录只要修改/etc/vsftpd/vsftpd.conf文件即可: 加入如下几行: local_root=/var/www/html chroot_local_user=YES ano ...

  5. Bugku-CTF之sql注入2 (全都tm过滤了绝望吗?)

    Day  38 sql注入2 200 http://123.206.87.240:8007/web2/ 全都tm过滤了绝望吗? 提示 !,!=,=,+,-,^,%

  6. nfs 动态文件挂载读写权限设置

    nfs 动态文件挂载读写权限设置 待办 ll 命令查看文件夹权限 参考设置共享文件夹https://www.linuxidc.com/Linux/2018-11/155331.htm

  7. C#类和对象的理解

    C#是面向对象的开发语言 类:抽象的(模板)不占用内存空间 对象:具体的(真实存在事物)占用内存空间

  8. 每天进步一点点------Sobel算子(1)

    void MySobel(IplImage* gray, IplImage* gradient) { /* Sobel template a00 a01 a02 a10 a11 a12 a20 a21 ...

  9. jmeter实现对Oracle数据库的操作

    实现目的 有时候,根据业务需要,可能需要直接对数据库进行性能测试,此时可利用jmeter对Oracle.MySQL等数据库进行相关测试. 脚本实现 添加JDBC Connection Configur ...

  10. 报bug mui分享微信 ,qq 分享失败

    1. iOS分享链接到微信,分享成功,但是分享的只有title,其他参数都没有 原因是mui分享进行了更新,msg新增了 msg.type 这个配置参数 qq : msg.type='text' 微信 ...