SSH接続を介して2段階認証(SMS)を設定する方法

SSH接続を介して2段階認証(SMS)を設定する方法

Ubuntu 16.04でbashスクリプトを書いていますが、設定したいと思います。SSH接続によるSMSによる2段階認証サーバーに。 Google認証システムを使用してこれを行う方法があります。ただし、これを行うには、顧客が最初にアプリをダウンロードする必要があります。ユーザーがサーバーにアクセスするためにパスワードで使用する携帯電話にSMS(コードを含む単純なテキスト)を送信したいと思います。 APIを使用して、サービスや無料ではないゲートウェイを使用してSMSを送信することもできます。私を助けてくれますか? ?ありがとうございます。

答え1

SMSゲートウェイを接続するには、まずWebサービスまたはWebサーバーを構築する必要があるようです。

その後、CURLを使用してWebサービスを呼び出すことができます。

これが私の考えです!

答え2

私の答えが当てはまらなくても役に立つことを願っています。

実装の詳細は API によって異なりますので省略します。

「bash」を使用すると仮定すると、各ユーザーのホームディレクトリに「.bashrc」(まだ存在しない場合)を作成し、ユーザーにSMSを送信し、送信されたパスワードを返すプログラムを配置できます。タイムアウトまたはパスワードの不一致が発生すると、ユーザーはログアウトされます。 STOP / KILLイベントを防ぐために、信号2、11、15をキャプチャする必要があります。明確にするために疑似コードを書きました。

~/.bashrc:

trap_signals
sent_password = send_sms_program <msisdn> <timeout>
print "Enter password: "
input_password = read_password_from_console
if (<timeout>) {
   logout
} else {
  if (input_password == key) {
     exit
  } else {
    logout
  }
}

関連情報