要命,Synology 兩步驟驗證 (2-step verification) 突然失靈了

很想罵髒話,剛發現自己不管怎樣都無法登入 Synology NAS,上網 google 一下,果然已經有人反應這樣的問題了:

[FIXED]2-step verification wizard setup failed

上面網頁最主要想說的是,問題在於時間失去同步,以致於 Google authentication 的驗證碼失效,解決方法是看手機裡的時間是不是錯亂了,再來就是透過 SSH 修正 NAS 裡的時間。我先不去修正時間,但奇怪的是,即便我按下「遺失手機」,然後使用 email 裡的 single-use emergency verification code,一樣不讓我登入。

我原本兩步驟驗證用起來是完全沒問題的,少說也應該平安度過一兩個禮拜了吧,結果今天突然不能登入了,先是因為登入失敗太多次,自己把身處外地的 ip 給 auto-ban 了,遠端登入內網電腦,一樣進不去,卡在第二步驟。如果沒記錯,我記得自己很神經的把 SSH 服務給關了,現在,可能只有請朋友幫忙按 reset 一途了。這樣就很懷疑,NTP 有沒有 flaw?隨便把 NAS 的時間 reset 一下,兩步驟驗證不就輕鬆掛點?

嗚... 我只想笨笨的去享用 NAS,一定要給我那麼多問題,讓我被逼著去爬一堆文嗎?
這沒辦法, 有時候給使用者方便會變成給攻擊者方便, 就看你是要安全還是方便了

方便又安全當然是大家的目標, 只是現實技術上很難實現
記得 2-step verification 是用 time-based 去產生動態密碼,手機跟 DS 時間是一定要一致。

Johnson407 wrote:
這沒辦法, 有時候給...(恕刪)


樓主使用兩步驟驗證的原因是因為NAS直接開放外部網路(internet)存取登入嗎?

兩步驟驗證總覺得可靠度不夠,時間是驗證碼的演算基礎之一,雙方的時間必須要在一定的誤差範圍內,如果是NAS裡的時間"走鐘"了,用遺失手機那招當然還是沒用吧?

會說到這個是因為我的DiskStation也有設定NTP,但是前兩天Glacier Backup突然開始出錯,無法執行備份,查了一下訊息是因為NAS時鐘跟Amazon伺服器差異太大,一看居然差了好幾十分鐘,非常詭異。只能假設DSM 4.2的NTP可能有點問題。

另一個提升安全性的簡單方法,就是VPN...專屬防火牆而不是DSM的PPTP套件,網路上很容易找到幾千塊,支援ipsec甚至SSLVPN的機器,先登入VPN後再存取內網,一樣有雙重密碼,通訊內容加密,不過沒有OTP就是了。
使用 email 裡的 single-use emergency verification code時, 請refresh UI再試試.
jnwiko wrote:
請refresh UI再試試...(恕刪)


謝謝 jnwiko,我可以把你抱起來親嗎?!
奇怪了,依稀記得有換過其他瀏覽器來輸入 emergency code 啊,還是我記錯了?總之,你的建議有效,得重新整理瀏覽頁面,感激!

另外,感謝各位大大的熱心回答!

小弟常常不在內網,所以得允許從外部遠端控制,看到有 2-step 驗證的新功能,當然拿來用嘍,只是無奈菜鳥對這東西不熟,然後又發神經把內網的 SSH 也關了,才落至這窘境。我這機器以前一禮拜總會有一兩個 auto-ban ip (幾乎都來自大陸),所以才盡量把該關的都關了,但是現在幾乎沒有入侵出現,不知是因為過去的 DSM 有漏洞,還是自己的設定有效了,不得而知.....

valsily, 我打算年底再搞一台 NAS,其他設備的錢只好先省下來了,但還是謝謝你的寶貴資訊。
因為之前有遇過, 如果第一次輸錯6-digit code, 之後不管輸入幾次"對"的code, 都還是不能登入, 後來誤打誤撞把browser重開後發現就ok了.
jnwiko wrote:
因為之前有遇過, 如...(恕刪)


jnwiko, 你是對的,我特別驗證過了,用 IE 和 Chrome,如果驗證碼第一次輸入錯誤,接下來即便輸入正確的驗證碼,一樣會被認定為登入錯誤,假如再多錯幾次,可能就把自己給 auto-ban 了!

一定得 refresh 登入頁面,重新從使用者和密碼的地方開始,然後提交正確的驗證碼... 我想,這應該算是目前的 bug 吧?!(不知道有沒有人送 ticket 給 synology,但我懶得查了,哈)

不過,剛剛注意到了,其實兩次回報的錯誤訊息不一樣,第一次錯誤輸入驗證碼時,會得到驗證碼錯誤的訊息;第二次再輸入錯誤驗證碼,會得到使用者和密碼錯誤的訊息。所以這應該不太算是 bug,可是粗心如我,根本不會想這麼多,只會維持在同一頁面,不停在驗證碼上面做嘗試。



那麼.....

這篇求救,可能剛好同時遇到時間同步以及第一次驗證碼不能錯這兩個問題。後來我是直接用一次性驗證碼登入,接著馬上用 NTP 修正時間,並沒仔細尋找問題的原因在哪... 運氣太好了。
我後來還真的無聊跑去發ticket,客服答覆說知道了,如果可能,會試著修正需要「重新整理」網頁的這小問題。


另外,有人問兩步驟驗證在哪,這邊就順便寫出小弟的方法:

首先,無論是 iPhone 或 Android 都有個 Google Authenticator 的 app 要先下載,或許還有其他方法,但超過小弟興趣範圍,哈。

皆下來,對於想啟動兩步驟認證的帳號,用該帳號去 DSM 網頁登入,登入後,網頁管理介面右上角,應該會看到一個放大鏡,和一個人頭,點那個人頭,然後,點選項 (Option),接下來你就會看到兩步驟認證的選項,就寫到這,皆下來應該就不會有問題了吧?
唉,撐到現在,我終於把兩步驟驗證的功能關掉了。

(刪刪刪刪刪刪刪刪除..)

今天兩三個帳號的兩步驟驗證都過不了,SSH 進去較準時間後,依舊無效,決定跟這個功能說掰掰。


ps. 收到 synology 客服很熱心的私下寫信想瞭解狀況,這裡我給一個大大的讚!

可是,最近真的很忙,沒空幫忙測試,那索性就把自己寫的東西刪了吧。既然影響商譽,自己又沒時間測,那就... 當小弟胡亂說話,沒家教,哈!
文章分享
評分
評分
複製連結

今日熱門文章 網友點擊推薦!