偷偷摘套内射激情视频,久久精品99国产国产精,中文字幕无线乱码人妻,中文在线中文a,性爽19p

創(chuàng)新USB密鑰 YubiKey實(shí)現(xiàn)雙因素驗(yàn)證

安全 數(shù)據(jù)安全
YubiKey是一種新型USB密鑰,它通過雙因素驗(yàn)證簡化了登錄過程,用戶只要輕觸一下設(shè)備,它就會(huì)在任意電腦或平臺(tái)上生成一個(gè)一次性的密碼(OTP),而不需要任何客戶端軟件。

YubiKey是一種新型USB密鑰,它通過雙因素驗(yàn)證簡化了登錄過程,用戶只要輕觸一下設(shè)備,它就會(huì)在任意電腦或平臺(tái)上生成一個(gè)一次性的密碼(OTP),而不需要任何客戶端軟件。

YubiKey工作原理:通過輕觸按鈕,YubiKey會(huì)發(fā)送一個(gè)隨機(jī)的安全登錄密碼。這一***的密碼由YubiKey配套的Web服務(wù)或軟件應(yīng)用驗(yàn)證,此文中則是BIG-IP 訪問策略管理器。

什么是YubiCloud:YubiCloud是一款免費(fèi)的基于云技術(shù)的YubiKey驗(yàn)證服務(wù),它將有力的雙要素驗(yàn)證于網(wǎng)站或在線服務(wù)結(jié)合在一起。

使用APM的YubiKey 2-Factor 驗(yàn)證進(jìn)程

驗(yàn)證進(jìn)程可以分解為幾個(gè)簡單步驟,如下:

創(chuàng)新USB密鑰 YubiKey實(shí)現(xiàn)雙因素驗(yàn)證

步驟一:用戶會(huì)看到一個(gè)登錄頁面。筆者遇到的登錄頁面要求填寫用戶名,密碼和YubiKey OTP。在輸入用戶名和密碼后,你可以把YubiKey插入U(xiǎn)SB端口,再按下按鈕。YubiKey將會(huì)生成一個(gè)***的一次性密碼供登錄者輸入進(jìn)行驗(yàn)證。

步驟二和三:用戶名和密碼都由Active Directory驗(yàn)證。

創(chuàng)新USB密鑰 YubiKey實(shí)現(xiàn)雙因素驗(yàn)證

步驟四和五:檢查以確保YubiKey已經(jīng)分配好用戶。筆者將8字節(jié)的YubiKey序列號(hào)保存到了Active Directory屬性:“employeeID”。顯然,你可以使用你喜歡的任何屬性域或是數(shù)據(jù)群組。

步驟六:確保生成的一次性密碼與YubiKey序列號(hào)匹配。YubiKey 一次性密碼使用修改后的十六進(jìn)制輸出(MODHEX)。可在Yubico論壇找到MODHEX表(http://forum.yubico.com/viewtopic.php?f=6&t=96 )筆者創(chuàng)建了一個(gè)iRule,它使用一個(gè)YubiKey序列號(hào),并將其轉(zhuǎn)換為MODHEX,然后再把它保存到一個(gè)APM對(duì)話變量。下一步,從步驟一到MODHEX序列號(hào)比較OTP值,如果字符存在,就可以往下了。

步驟7,8,9——把YubiKey一次性密碼發(fā)送到Y(jié)ubiCloud驗(yàn)證服務(wù)。如果YubiCloud API返回“Status=OK”,然后用戶就可以訪問資源。#p#

BIG-IP APM 配置

APM配置是直觀的,假設(shè):

1. 你已經(jīng)有一個(gè)目錄服務(wù)器,上面有配置好的用戶,你可以把YubiKey序列號(hào)添加給LDAP/AD屬性。

2. 你的YubiKey通過YubiCloud服務(wù)注冊(cè)。

3. 你已經(jīng)從https://upgrade.yubico.com/getapikey/ 處獲得了一個(gè)Auth ID和API 密鑰可以驗(yàn)證YubiKey。

4. 你此前使用過BIG-IP,且具備適當(dāng)?shù)腖TM知識(shí)。

那么可以用BIG.-IP v11.2.0創(chuàng)建此配置。讓我們進(jìn)入APM配置。

驗(yàn)證服務(wù)器

活動(dòng)目錄

訪問策略>>AAA服務(wù)器>>>活動(dòng)目錄>>>“創(chuàng)建”

如下:

1. 名稱:dc1.test.lab

2. 域名:test.lab

3. 域控制器:或 (AD服務(wù)器)

4. 管理員名稱及密碼

選擇“完成”以保存。

G-IP APM 配置

#p#

YubiCloud API

HTTP AAA服務(wù)器對(duì)象不支持HTTPS連接,所以我們需要?jiǎng)?chuàng)建一個(gè)虛擬服務(wù)器代理BIG-IP到Y(jié)ubiCloud API的數(shù)據(jù)流。這個(gè)虛擬服務(wù)器會(huì)聽取HTTP,但是我們可以使用一個(gè)創(chuàng)建HTTP的Server SSL 配置文件-——>HTTPS 代理。

本地?cái)?shù)據(jù)>>節(jié)點(diǎn)>>節(jié)點(diǎn)列表>>“創(chuàng)建”

如下:

1. 名稱:api.yubico.com

2. 地址:api.yubico.com

3. 監(jiān)測

選擇“完成”以保存。

G-IP APM 配置

本地?cái)?shù)據(jù)>>池>>池列表>>“創(chuàng)建”

如下:

1. 名稱:pool_yubicloud

2. 描述:YubiCloud 代理池 (可選項(xiàng))

3. 監(jiān)測 (可選項(xiàng))

4. 地址:api.yubico.com

5. 服務(wù)端口:HTTPS

選擇“完成”以保存。

G-IP APM 配置

本地?cái)?shù)據(jù)>>虛擬服務(wù)器>>虛擬服務(wù)器列表>>“創(chuàng)建”

如下:

1. 名稱:vs_yubicloud

2. 描述:YubiCloud 代理 VS (可選項(xiàng))

3. 目的地:

4. 服務(wù)端口:HTTP

5. HTTP配置文件:http

6. SSL 配置文件(服務(wù)器):clientssl

7. SNAT池:Auto Map

8. 默認(rèn)池:pool_yubicloud

選擇“完成”以保存。

G-IP APM 配置

G-IP APM 配置

G-IP APM 配置

訪問策略>>AAA服務(wù)器>>HTTP

如下:

1. 名稱:aaa_yubicloud

2. 表單方法:GET

3. 表單活動(dòng):http://

4. 用戶名稱的表單參數(shù):id

5. 密碼的表單參數(shù):otp

6. 成功登錄檢測匹配類型:指定響應(yīng)字符

7. 成功登錄檢測匹配數(shù)值:status=OK

表單活動(dòng)使用上文配置的虛擬服務(wù)器IP,而不是YubiCloud服務(wù)器FQDN。你至少要為沒有簽名的響應(yīng)提供id和otp參數(shù)。Id參數(shù)是用于YubiCloud服務(wù)的Auth ID,otp是YubiKey生成的代碼。

選擇“完成”以保存。

G-IP APM 配置

#p#

MODHEX 編碼iRule

本地?cái)?shù)據(jù)>>iRules>>iRules 列表>>“創(chuàng)建”

復(fù)制粘貼下列iRule,它們可以把YubiKey序列號(hào)轉(zhuǎn)換成MODHEX格式。在本文示例中,筆者檢索了與Active Directory用戶相關(guān)的YubiKey序列號(hào),該Active Directory使用employeeID 屬性。如果序列號(hào)已經(jīng)保存在備用處,如一個(gè)數(shù)據(jù)群組或一個(gè)自定義LDAP/AD屬性,那么就需要修改此iRule。

[[67021]]when ACCESS_POLICY_AGENT_EVENT {
[[67021]] if { [ACCESS::policy agent_id] eq "irule_apm_yubikey_modhex_encode" } {
[[67021]] # yubikey serial number
[[67021]]
set yubikey_serial [ACCESS::session data get session.ad.last.attr.employeeID]
[[67021]] # modhex alphabet
[[67021]]
array set modhex_alphabet { 0 c 1 b 2 d 3 e 4 f 5 g 6 h 7 i 8 j 9 k A l B n C r D t E u F v }
[[67021]] # remove leading zeros from serial number
[[67021]]
set yubikey_serial [string trimleft $yubikey_serial 0]
[[67021]] # convert serial
to hex and pad with zeros
[[67021]]
set yubikey_serial [format %012X $yubikey_serial]
[[67021]] #
split the string
[[67021]]
set yubikey_serial [split $yubikey_serial ""]
[[67021]] #
for each HEX change to MODHEX using alphabet
[[67021]]
set yubikey_modhex ""
[[67021]] foreach index $yubikey_serial {
[[67021]] append yubikey_modhex $modhex_alphabet($index)
[[67021]] }
[[67021]] ACCESS::session data
set session.custom.yubikey.modhex $yubikey_modhex
[[67021]] }
[[67021]]}

訪問配置文件和策略

訪問策略>>訪問配置文件>>訪問配置文件列表>>“創(chuàng)建”

提供如下信息:

1. 姓名:profile_yubicloud

2. 語言:English

3. 使用默認(rèn)設(shè)置。

選擇“完成”以保存。

MODHEX 編碼iRule

MODHEX 編碼iRule

MODHEX 編碼iRule

訪問策略>>訪問配置文件>>訪問配置文件列表>>“編輯”

在“start”對(duì)象后的“fallback”上,添加“logon page”對(duì)象。

添加第三個(gè)域:

1. 類型:文本。

2. 貼出變量名稱:yubiotp

3. 會(huì)話變量名稱:yubiotp

4. 只讀:否

MODHEX 編碼iRule

在“自定義”部分,將“表單標(biāo)頭文本”設(shè)置為你需要的效果,并把“登錄頁面輸入?yún)^(qū)域#3”改成有意義的值,如下。“Branch Rules”設(shè)為默認(rèn)狀態(tài)。別忘了點(diǎn)“保存”。

MODHEX 編碼iRule

#p#

在“Logon Page”對(duì)象后面的“fallback”分支,添加一個(gè)“AD Auth”對(duì)象

這一步可以驗(yàn)證姓名和密碼。

提供如下信息:

1. 姓名:AD Auth

2. AAA服務(wù)器:/Common/dc1.test.lab (選擇你的AD 服務(wù)器)

“Branch Rules”為默認(rèn)。結(jié)束后選擇“保存”。

MODHEX 編碼iRule

“AD Auth”對(duì)象之后的操作成功分支上,添加一個(gè)“AD Query”對(duì)象

這一步檢查用戶的Active Directory賬號(hào)是否有YubiKey。我們已經(jīng)為每位用戶把YubiKey的序列號(hào)添加到Active Directory。以前筆者出于方便會(huì)使用employeeID,但這里,推薦大家創(chuàng)建一個(gè)用于YubiKey序列號(hào)的自定義AD屬性。

提供如下屬性:

1. 姓名:YubiKey Provisioned

2. 搜索過濾:sAMAccountName=%{session.logon.last.username}

MODHEX 編碼iRule

在“Branch Rules”下,刪除默認(rèn),選擇“添加Branch Rule”

更新Branch Rule設(shè)置:

姓名:Yes

表達(dá)式:expr{[mcgt{session.ad.last.attr.employeeID}]!=””}

選擇“完成”,然后保存。

MODHEX 編碼iRule

在“YubiKey Provisioned”對(duì)象的“Yes”分支里,添加“iRule Event”對(duì)象

這一步可以把“session.ad.last.attr.employeeID”(YubiKey 序列)從AD Query發(fā)送到名為“irule_apm_yubikey_modhex_encode”的iRule。iRule會(huì)返回一個(gè)用MODHEX編碼的字符,并將其保存在“session.custom.yubikey.modhex”。我們需要MODHEX格式的YubiKey序列號(hào),這樣我們就可以把它與登錄頁面輸入的原始YubiKey OTP進(jìn)行比對(duì)。

提供如下信息:

1. 姓名:YubiKey MODHEX Encode

2. ID:irule_apm_yubikey_modhex_encode

MODHEX 編碼iRule

#p#

現(xiàn)在,我們把MODHEX格式的YubiKey序列號(hào)與登錄頁面輸入的YubiKey OTP進(jìn)行比較。這一步可以驗(yàn)證用戶是否正在使用他們的YubiKey抑或是被盜用。這個(gè)YubiKey OTP的前面12個(gè)字符是YubiKey序列號(hào),這樣就可以用“字符優(yōu)先”的TCK命令進(jìn)行驗(yàn)證。

在“Branch Rules”下選擇“Add Branch Rule”

更新Branch Rule的設(shè)置:

1. 名稱:YubiKey Serial Match

2. 表達(dá)式“expr { [string first [mcget {session.custom.yubikey.modhex}] [mcget {session.logon.last.yubiotp}]] == 0 }

選擇“完成”,然后保存。

MODHEX 編碼iRule

在YubiKey MODHEX Encode對(duì)象后面的YubiKey Serial Match上,添加一個(gè)Variable Assign對(duì)象。

這一步會(huì)把YubiCloud Auth ID 分配到“session.logon.last.username”,并把登錄頁面上的YubiKey OTP分配給“session.logon.last.password”。這些會(huì)話變量隨后被分配到之前創(chuàng)建的HTTP Auth AAA對(duì)象aaa_yubicloud所使用的id和otp HTTP參數(shù)。

提供下列屬性:

名稱:Assign YubiCloud Variables

選擇“Add new entry”>>”change” 添加變量分配。

變量賦值1:

1. 自定義變量:session.logon.last.username

2. 自定義表達(dá)式:expr{“1111”} (把1111改為你的YubiCloud Auth ID)

變量賦值2:

1. 自定義變量:session.logon.last.password

2. 自定義表達(dá)式:expr { [mcget {session.logon.last.yubiotp}] }

選擇“完成”,然后保存。Branch Rules使用默認(rèn)設(shè)置。

MODHEX 編碼iRule

在“Assisign YubiCloud Variables”對(duì)象的“fallback”分支上,添加一個(gè)“HTTP Auth”對(duì)象

這樣可以把HTTP Get發(fā)送到Y(jié)ubiCloud API 以驗(yàn)證登錄頁面的YubiKey OTP。

提供下列屬性:

1. 名稱:YubiCloud Auth

2. AAA Server:/Common/aaa_yubicloud

MODHEX 編碼iRule

Branch Rules使用默認(rèn)設(shè)置。保存退出。

這樣就媲美訪問策略了。它應(yīng)該和下圖類似:

MODHEX 編碼iRule

接下來把“訪問配置文件”附加到虛擬服務(wù)器做測試。

結(jié)論

這是通過APM輕松添加雙因素驗(yàn)證的典型案例。F5提供了一個(gè)10人同時(shí)使用的APM試驗(yàn)版本,且每個(gè)BIG-IP都頒發(fā)了LTM許可證。

 

責(zé)任編輯:藍(lán)雨淚 來源: IT168
相關(guān)推薦

2022-08-01 00:08:03

雙因素認(rèn)證2FA

2013-06-18 09:54:37

微軟Windows Azu

2021-07-27 05:49:04

雙因素驗(yàn)證MFA網(wǎng)絡(luò)安全

2022-07-08 07:02:10

Python動(dòng)態(tài)碼OTP

2013-06-28 10:54:08

2011-06-28 11:10:19

2022-05-07 13:19:24

GitHub2FA

2010-04-20 10:00:29

2013-05-02 16:31:12

雙因素身份驗(yàn)證微軟

2011-05-04 16:40:00

2011-05-04 17:06:46

2013-09-29 13:52:31

2020-05-25 07:00:00

雙因素認(rèn)證身份認(rèn)證密碼

2018-09-19 16:11:07

數(shù)據(jù)創(chuàng)新關(guān)鍵

2016-08-12 09:56:07

2011-08-25 21:38:32

2014-06-20 09:26:17

2021-12-03 17:13:04

CIO運(yùn)營IT

2021-08-03 14:48:05

ChromeAndroid身份驗(yàn)證

2023-03-24 07:43:06

Windows 11微軟
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)