Google Authenticatorアプリのオープンソース代替

Google Authenticatorアプリのオープンソース代替

Google AuthenticatorをSSH用の2FAに設定しましたが、うまく機能しましたが、Android用のAuthenticatorアプリはオープンソースではなくなりました。良い実際のオープンソースの代替案はありますか?

答え1

FreeOTPを試してください。 HOTPとTOTPをサポートします。

https://freeotp.github.io/

https://f-droid.org/en/packages/org.fedorahosted.freeotp/

答え2

Aegis authenticatorAndroidバージョンは無料でシンプルで便利な機能(インポート/エクスポート、バイオメトリックロック解除、QRコードスキャンまたは手動入力、マテリアルデザイン...)を備えています。

f-froidで使用できます。https://f-droid.org/fr/packages/com.beemdevelopment.aegis/

答え3

認証。クラウドベースのマルチデバイス同時使用アプリケーションは、LINUXを含むほとんどの最新プラットフォームで利用できます。 Google OTPトークンと互換性があります。

私は主にログイン、su、lightdmのためにUBUNTUシステムでこれを使用していますが、PAMモジュールを使用すると、他の多くのプロトコル(公開鍵を持つsshdなど)もサポートしています。

設定ガイドは次のとおりです。2FA存在するUbuntuジェミーとパム:

GOOGLE AUTHENTICATORは設定されたユーザーにのみ機能します(〜/ .google_authenticatorが存在します)(テストプロセス)

以下は、Google Authenticator を使用して /etc/pam.d/login ファイルに対して PAM を設定する手順です。ユーザーがトークンファイルを構成しない場合は、セキュリティ文字をバイパスします。

次のコマンドを使用して、PAM と Google Authenticator に必要なパッケージをインストールします。

sudo apt-get install libpam-google-authenticator

テキストエディタを使用して/etc/pam.d/loginファイルを編集します。

sudo nano /etc/pam.d/login

ファイルの下部に次の行を追加します。

auth required pam_google_authenticator.so nullok

ファイルを保存してテキストエディタを終了します。

その後、/etc/pam.d/suファイルと/etc/pam.d/lightdmファイルに対して手順2〜3を繰り返して設定を完了できます。

SSH構成の場合、ChallengeResponseAuthentication yesおよびUsePAM yesパラメーターを調整します。必要な追加のSSHパラメータの詳細については、次を参照してください。

https://www.techrepublic.com/article/enable-ssh-2fa-ubuntu-server/

SSH、2FA、公開鍵認証

目的の結果が公開鍵認証を使用してsshを呼び出すときにGoogle Authenticatorで2FAをスキップする場合は、「auth require pam_google_authenticator.so nullok」行を/etc/pam.d/sshdの末尾に配置する必要があります。ファイルは次のようになります。

@include 一般認証アカウントに pam_nologin.so が必要 @include 一般アカウント セッションオプション pam_motd.so motd=/run/motd.dynamic オプション pam_motd.so noupdate セッション オプション pam_mail.soenv #[1] セッション pam_limits.so 必要 セッションには pam_env.so 必要 #[1] セッション pam_env.so 必要 user_readenv=1 envfile =/etc/default/locale セッション[success=okignore=ignore module_unknown=ignoredefault=bad] pam_selinux.so open @include 一般パスワード認証が必要 pam_google_authenticator.so nullok

公開鍵認証を使用するときにrootユーザーに対して2FAを強制するには、/etc/pam.d/sshdファイルを変更し、@include common-auth行の後にauth必須pam_google_authenticator.so nullok行を追加します。これにより、公開鍵を使用してもGoogle Authenticator PAMモジュールが常に呼び出されます。 /etc/pam.d/sshd は次のようになります:

@include common-auth auth には pam_google_authenticator.so が必要です。 nullok アカウントには pam_nologin.so が必要です。 @include common-account セッションが必要です。 [success=okignore=ignore module_unknown=ignore default=bad] pam_selinux.so セッションを閉じるには、 pam_loginuid.so セッションが必要です(オプション pam_key)。強制撤回 @include 公開セッション セッション オプション pam_motd.so motd=/run/motd.dynamic オプション pam_motd.so noupdate セッション オプション pam_mail.soenv # [1] セッションが必要 pam_limits.so セッションが必要 pam_env.so # [1] ] セッションが必要pam_env.so user_readenv=1 envfile=/etc/default/locale セッション [success=okignore=無視 module_unknown=ignoredefault=悪い] pam_selinux.so open @include common-password

これを変更したら、sshdサービスを再起動してrootとして再度ログインしてみてください。公開鍵認証を使用しても、Google OTP 認証コードを入力するよう求められます。

https://codeberg.org/kpiq/Tech-Space/wiki/2FA-Authenticator-app-%28any-互換-with-Google-Authenticator%29-setup-for-Ubuntu-Jammy

このユースケースでは、有効な〜/ .google_authenticatorファイルを持つユーザーに対してのみ2FAを有効にするため、複雑なPAM設定を調整する必要はありません。

関連情報