Google認証システムが常に間違ったコードを提供する場合の対処方法



良い一日。

Android 4.4.2 KitKatデバイスでの2FA認証の問題と、今回のケースでは長い検索を停止した解決策についてお話ししたいと思います。



しばらく前、同僚と私は、Ubuntu Serverベースの小規模オフィスサーバーに2要素認証(略して2FA)を追加することにしました。



2FAは、セキュリティの追加レベルであり、既存の認証メカニズムへの素晴らしい追加です。 認証を実行するユーザーからの通常のログイン+パスワードのペアに加えて、30秒ごとに動的に変更され、ユーザーが所有するデバイスによって生成されるデジタルキーが必要です。 キーを生成するために、 Google認証システムアプリとAndroid携帯電話を使用しました 。 1回限りのセットアップの後、アプリケーションは30秒の有効期間を持つコードを生成します。まったく同じコードがサーバーによって生成されます。 認証中に、コードが比較されます。



データはサーバーから送信されず、デバイス上にのみ保存されるため、このメカニズムは確認コードを送信するよりも安全です(たとえば、銀行システムの3DセキュアSMS確認として)。









予想外に、ネットワーク上のサーバー設定に関する段階的な指示がたくさんありました。 それらはすべて非常にシンプルでわかりやすいものです。 私はこの記事にガイドされました



サーバーの設定後、彼らはレノボp780電話にGoogle Authenticatorアプリケーションをインストールし、モニターからQRコードを「読み取り」、承認のために切望された数字を受け取りました。 SSHを再起動する前に、バックアップキーを保存してアクセスを復元することを忘れないでください



これで、すべてを使用する準備が整いました! SSHを再起動し、サーバーに移動してパスワードを指定し、確認コードの提示を求められたパスワードの後で、電話から書き換えて、再びパスワードを要求しますか?!!! 次のようになります。

ssh user@server.ru

パスワード:<パスワードを入力>

確認コード:<電話からコードを入力>

パスワード:<?!!、もう一度パスワードを入力>

確認コード:<電話からコードを入力>

パスワード:<パスワードを再入力>

確認コード:<コードをもう一度入力してください>

user@server.ruのパスワード:<もう一度パスワード>

許可が拒否されました。もう一度お試しください。

user@server.ruのパスワード:<パスワードをもう一度入力>

xx.xxx.xx.xxから切断を受信しました:2:ユーザーの認証エラーが多すぎます




最初は、設定に間違いがあると考えていましたが、いくつかのモバイルデバイスを試したところ、Google AuthenticatorによってAndroid 4.4.2 KitKatで生成されコードが常に間違っていたことが明らかになりまし



見つかった「ソリューション」とその結果:



  1. Androidのバージョンをロールバックすると、正常に動作し始めます。 (彼らはしばらくの間この「解決策」に取り組んでいましたが、先に進むことにしました)
  2. 問題は不正確なタイムゾーンに帰着するため、多くの解決策は特にそれらを修正することを目的としています。 TimeZone Fixerアプリケーションはこの問題を本当に解決できますが、使用後の一部のアプリケーションは誤った時刻を表示し始めるため、手動で修復する必要があります。 (このソリューションには欠点とリスクがあります。アプリケーションに関するすべての情報はw3bsit3-dns.comで入手できます。)
  3. 時間を手動で調整します。 正直に言うと、この方法はうまくいきませんでした。 クロックを手動で設定して、電話とサーバーの時刻を同期します。 残念ながら、すべての試みはうまくいきませんでしたが、彼らは稼いだと主張する人々がいました。 いずれにせよ、携帯電話で時計機能を失う可能性は最も快適ではありません...
  4. Google認証アプリケーションの設定内でのクロック同期(ただし、この場合、結果なしで、誰かが助けたというコメントがありました)




最終ソリューション:FreeOTP



ネットワーク上のソリューションの検索中に、私はすでにGoogle Authenticator GitHubアプリケーションにつまずきました。エラートラッキングには私たちのものがあり、解決策として提案されました。

「誰かが修正するまで、Google Authenticatorの代わりにFreeOTP Authenticator(Red Hat製)を使用できます。」




長い間、Googleの代わりにサーバーに配置する必要がある別の認証メカニズムを使用することが推奨されているように思えたので、他の解決策を熱心に検索しました。 Google認証システムを機能させたかったのですが、実際には別のAndroidアプリケーションの使用を推奨しており、サーバー側は変更されていません。



RedOTP Authenticator FreeOTPアプリ 。 同じQRコードをセットアップした後、何かを修正する必要なくすべてが機能し始めました。



残念ながら、Google認証システムアプリケーションのエラーの原因を説明することはできませんが、私の悲しい経験が誰かの時間を節約することを願っています。



私はあなたのコメントに喜んでいるでしょう! ご清聴ありがとうございました。



All Articles