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. linux软件下载

    可以到linux官网下载:http://vault.centos.org/6.10/os/Source/SPackages/

  2. D. Game with modulo 交互题(取余(膜)性质)附带a mod b<a/2证明

    D. Game with modulo 交互题(取余(膜)性质) 题意 猜一个点\(a\)可以向机器提问 点对\((x,y)\) 如果\(x\mod(a)>=y\mod(a)\)回答\(x\) ...

  3. Python结束当前运行的代码

    import sys print(0) print(1) print(2) # 到此结束运行 sys.exit() # 已结束,以下不会执行 print(4) print(5)

  4. 30分钟编写一个抓取 Unsplash 图片的 Python爬虫

       我一直想用 Python and Selenium 创建一个网页爬虫,但从来没有实现它. 几天前, 我决定尝试一下,这听起来可能是挺复杂的, 然而编写代码从 Unsplash 抓取一些美丽的图片 ...

  5. IntelliJ IDEA 2017.3尚硅谷-----设置项目文件编码

    这也可以 R暂时显示 C转换

  6. Eclipse代码规范

    配置代码自动格式化 1.导入规范文件  codeStyle.xml <?xml version="1.0" encoding="UTF-8" standa ...

  7. 测试工具 - IDEA - IDEA Code Coverage

    概述 使用 idea 自带的 code coverage 工具 背景 了解 白盒测试用例设计 和 测试覆盖率 之后, 大概就需要 实践 了 实践的话, 还是需要 工具 来检验效果 工具选取 选项 Ja ...

  8. Linux - Shell - 字符串拼接

    概述 shell 的字符串拼接 1. 字符串声明 概述 字符串的基本操作 脚本 1 # 声明字符串 str01="str01" echo ${str01} # 单引号也可以 # 不 ...

  9. Linux - paste

    1. 概述 引入 碰到一个场景, 需要将两列合并成一列 vim 的 ex 貌似不太好做这个事 如果两列在一行里, ex 是可以做的 但问题就是, 两列不在一行里... sed 和 awk 应该是可以做 ...

  10. 其他 - markdown 常用语法

    1. 概述 简述 markdown 相关的标记 2. markdown markdown 概述 简单的标记语言 用作快速排版 使用 使用标记对文章样式进行描述 通过专门的引擎读取, 可以展示简单的样式 ...