Google Authenticatorを使用するようになりましたが、スマートフォンを紛失した場合、または新しいファームウェアをインストールするためにワイプして復元する必要がある場合、すべてのコードが失われることに気付きました。
とにかくそれらをバックアップする方法はありますか?または、何らかのフォールバックにより、新しいデバイスに復元できることを意味しますか?
ありがとう
Google Authenticatorを使用するようになりましたが、スマートフォンを紛失した場合、または新しいファームウェアをインストールするためにワイプして復元する必要がある場合、すべてのコードが失われることに気付きました。
とにかくそれらをバックアップする方法はありますか?または、何らかのフォールバックにより、新しいデバイスに復元できることを意味しますか?
ありがとう
回答:
次の方法は、ルート化されたAndroidデバイスでのみ機能します。
Linux:
adb pull /data/data/com.google.android.apps.authenticator2/databases/databases /AFolderOnPC
Windows:
adb pull /data/data/com.google.android.apps.authenticator2/databases/databases C:\AFolderOnPC
PC上のフォルダはすでに存在している必要があることに注意してください。
これにより、オーセンティケーターデータベースファイルが、ワンタイムパスワードの生成元であるメインキーとともにPCにコピーされます。その後、ファイルをAndroidデバイスの同じ場所に復元するか、sqliteデータベースビューアーで読み取ってキーを抽出できます。
databases
フォルダーとdatabases
ファイルの両方に755のアクセス許可があることを確認してください。700を試しましたが、GAはクラッシュし続けました。それが完全な許可を必要とすることに関する懸念。たぶんそれがNSAの要件です。
adb root
ますが、これを実行する前に、またはあなたが取得しますremote object '/data/data/com.google.android.apps.authenticator2/databases' does not exist
Google認証システムアプリ/データをバックアップする必要はありません。2段階認証を設定したのと同じページで認証コードを必要とせずにログインに使用できる「バックアップコード」のリストを作成できます。
バックアップコードを印刷またはダウンロードする理由
バックアップコードは、旅行する人、SMSまたは音声通話の受信に問題がある人、またはGoogle認証システムモバイルアプリを使用できない人に特に役立ちます。
推奨事項:バックアップコードを印刷またはダウンロードする必要があります
これらを安全な場所に保管(または印刷)し、携帯電話を紛失した場合は、これらのコードのいずれかを使用してアカウントにログインし、Authenticatorアプリで新しいデバイスをセットアップできます。
これはGoogleの2段階認証に適用されますが、Google Authenticatorアプリを使用するように設定した他のサイトは、同様のオプション、またはコードを受信する別の方法を提供する必要があります(たとえば、FacebookはGoogle Authenticator、独自のアプリ、およびSMSをコードを受信します)。
Titanium Backup(Google Playストアへのリンク)は、Google Authenticatorを含むすべてのAndroidアプリをバックアップします。ただし、これを実行可能なオプションにするには、電話をルート化する必要があります。
Googleバックアップコードも印刷することをお勧めします。これは、Google認証システムアプリをバックアップするものではありませんが、必要に応じて認証システムをリセットできます。ただし、これはGoogleアカウントへのアクセスを回復するのに役立ちます。
私の意見では、Titanium Backupでアプリをバックアップすることが最も完全なオプションです。何度か助けてくれました。
backup/restore
タブ- >を選択Authenticator
するために>スライド右-アプリをspecial features
タブ- >を選択しますExplore
- >を選択しますaccounts
下[DATABASE]
。その後、アプリのすべてのアカウントを.csvファイルで取得します。secret
列を使用してアカウントを新しい電話に復元します。
私はまったく同じ問題を抱えていました。
元のトークン(通常はユーザーに対してqrcodesとして表される)は、/ data / data / com.google.android.apps.authenticator2 / databasesフォルダー内のsqliteデータベースに保存され、デバイスから抽出できることがわかりました。
ここでhttps://github.com/dchapkine/extract-google-authenticator-credentialsの復旧プロセスを自動化して説明しました
このプロジェクトは、元のトークンを抽出してから、新しいデバイスで再スキャンできるqrcodesを含むWebページを生成します。
気軽に貢献してください。
これを処理する最も簡単な方法は、サイトに新しいオーセンティケーターをセットアップするたびにQRコードのスクリーンショットを撮り、暗号化された場所に保存することです。
そのサイトのオーセンティケーターを別の電話に再インストールまたは追加する必要がある場合は、新しいサイトをセットアップするかのようにスクリーンショットのQRコードをスキャンしてオーセンティケーターにアカウントを追加するだけです。
否定する前に、これは機能しない、そうです、そして、あなたは複数のデバイスで同じオーセンティケーターを持つことができます。
Authenticator Plusをお試しください。デバイス間で同期するバックアップ/復元機能をサポートしています。電話/タブレットをお持ちの場合、このアプリはすべてのアカウントを完全に同期し、Androidウェアもサポートします。
ロゴもサポートしています
序文として、これは、MFAを事前に設定して、既存のコードを回復またはバックアップするのではなく、常にバックアップされるようにするためのアプローチです。
Nexus 6Pがデータへの接続を停止し、ピクセルですべてのMFAを再度セットアップする必要があった後、このプロセスを実行しました。携帯電話を紛失したり、工場出荷時のデータをリセットした場合、完全に中断されることに気付きました。
私が思いついた最も簡単な解決策は、QRコードベースのセットアップを無視し、トークンベースのセットアップ自体を使用することです(ほとんどの認証アプリでは「手動」オプションです)。これまでに使用したすべてのサービスで、QRではなくトークンベースのセットアップを選択できます。
QRコードのスクリーンショットを撮影して適切にラベル付けし、GPGで暗号化してどこかに安全に保存するという手間をかける代わりに、暗号化されたボールトにトークンを保存し、MFAを手動でセットアップします。
同時に実行している独立したデバイスで同じキーを使用して、オーセンティケーターのクローンをセットアップできることを確認しました。したがって、トークンを安全に制御する限り、任意のデバイスでMFAを構成できます。
MFAを再構成するだけで(この状況でこれを行う必要があります)、単にすべてのトークンをlastpassに追加するだけなので、この結果に満足しています。今、私は電話が紛失した場合に対応し、必要に応じて他のデバイスを設定できます。
根ざした携帯電話には多くのアドバイスがあります。ただし、脆弱な状態にしたくない場合は、デバイスをルート化することはお勧めしません。2要素認証は保護の追加レイヤーを提供します。さまざまなウイルスが保護されたメモリ領域にアクセスする可能性があるため、ルート化することでそれを無効にします。
バックアップコードを提供するサービスはごくわずかです(特にGoogle)。これらのサービスでは、バックアップコードを保存する必要があります。
最善の解決策は、トークンの登録時にQRコード(または秘密鍵)を保存し、安全な場所に保管することです。その後、携帯電話を紛失した場合、新しいデバイスのGoogle認証システムでトークンを復元できます。
また、ハードウェアトークンを使用できます。キーフォブまたはクレジットカードの形をとることができます。Google Authenticatorをバックアップする方法:Google Authenticatorをバックアップする方法または新しい電話に転送する方法の詳細については、Protectimus(私が勤務している会社)のブログでこの記事をご覧ください。
* 開示:上記のリンク先のWebサイトで働いています。
次の方法は、ルート化されたAndroidデバイスでのみ機能します。この方法は、adbコマンドを実行するためだけにAndroid SDK + JDKをゼロからインストールする時間を無駄にしたくない、あまり技術に詳しくない人や私のような人にとってより便利です。
だからここにある:
Google Playストアから「ルートエクスプローラー」アプリをダウンロードしてインストールします。人気のある無料のFXファイルエクスプローラーとその無料のFXルートアクセスアドオンを使用します。他の人も使用できます。このアプリは、rootユーザーとしてAndroidシステムにアクセスすることを可能にします。
あなたは、システムのルートにあるファイルエクスプローラを開くと>「データ」フォルダをクリックしてください>(他のデータフォルダ内)「データ」フォルダをクリックしてください>という名前のフォルダにコピーcom.google.android.apps.authenticator2
]> [終了]システムのルートフォルダ>を開き、通常のメインストレージ/ SD収納スペースをと貼り付けここにフォルダ。
AndroidデバイスをPCに接続し、フォルダーを安全なUSB /外部HDDにバックアップします。
それでおしまい。これで、ファームウェアの再インストール/新しい携帯電話の購入が必要な場合は、上記の手順に従って、Google Authenticatorアプリをインストールした後、そのフォルダーをまったく同じディレクトリにコピーしてください。
または、「SQLite Database Browser Portable」などの無料のオープンソースSQLite GUIエディターを使用して、「com.google.android.apps.authenticator2」フォルダー内の「databases」ファイルを開くことができます。[データの参照]タブで、キーとキーに対応する名前を確認できるため、Google認証システムアプリにキーを手動で入力できます。
adb
実行可能.dll
ファイルが必要なだけです(Windowsでは、2つのファイルが追加で必要です)。詳細については、「ADBの最小インストールはありますか?
-rw-rw--
(所有者とグループの読み取り/書き込み、その他は何もない)があります。そのため、所有権に不一致がある場合、問題が発生している可能性があります(そして、アプリが誤動作する可能性があります)。
/data/data/com.google.android.apps.authenticator2
、それを実行し、ls -l
所有権/許可を確認します。コピー後、chown
とchmod
を使用して修正します。
根ざした携帯電話では、「Amaze」ファイルマネージャー(https://play.google.com/store/apps/details?id=com.amaze.filemanager&hl=en)を使用できます。ルートの/data/data/com.google.android.apps.authenticator2/databaseディレクトリに移動します。データベースファイルをデータベースとして開きます。アカウントを選択します。_id、email、およびsecretの3つの列があります。「秘密」の値をコピーします。追加するだけで復元する必要がある場合は、「提供されたキーを入力」を選択し、名前を付けて値を貼り付けます。
私のウェブサイトにあるシンプルなPythonスクリプトへのリンクは次のとおりです:http : //usefree.com.ua/google-authenticator-backup/
コードを貼り付けて、Python環境で実行するだけです。
使い方:
Google Authenticatorを使用した2要素認証のセットアップと構成中に、QRコードをスキャンするだけでなく、たとえば、Google Mailのコードを取得できますcsnji4rfndisoh323fdsioah3u2iodso
。Python IDLEを使用してコンピューターでTOTPを生成するには、次の関数を定義できます。
def totpgen ():
import time
import hmac
import hashlib
import base64
### TOTP-key for Google
#secret = base64.b32decode("csnji4rfndisoh323fdsioah3u2iodso", True)
#totp for btc-e
#secret = base64.b32decode("DHSJHDW89E8DFUS98RIO23J390EFU234IR90WEUIF903DMSKAKDS====")
### Calc counter from UNIX time (see RFC6238)
counter = long(time.time() / 30)
### Use counter as 8 byte array
bytes=bytearray()
for i in reversed(range(0, 8)):
bytes.insert(0, counter & 0xff)
counter >>= 8
### Calculate HMAC-SHA1(secret, counter)
hs = bytearray(hmac.new(secret, bytes, hashlib.sha1).digest())
### Truncate result (see RFC4226)
n = hs[-1] & 0xF
result = (hs[n] << 24 | hs[n+1] << 16 | hs[n+2] << 8 | hs[n+3]) & 0x7fffffff
### Print last 6 digits
return str(result)[-6:]
行に挿入
secret = base64.b32decode("csnji4rfndisoh323fdsioah3u2iodso", True)
あなたのコードの代わりに "csnji4rfndisoh323fdsioah3u2iodso"
行のコメントを解除し、IDLEで呼び出します
totpgen ()
TOTPを取得します!)サービスbtc-eの場合は、ラインを使用してください
secret = base64.b32decode("DHSJHDW89E8DFUS98RIO23J390EFU234IR90WEUIF903DMSKAKDS====")
他のサービスの場合-上記のように。