RSA認証アルゴリズムを使用したWindowsベースのコンピューター間のリモートアクセス

この投稿では、WindowsベースのリモートデスクトップからRSAアルゴリズムを使用してコンピューターにアクセスするときに、追加のユーザー認証の実装を共有することにしました

挑戦する


特定のユーザーのみにリモートコンピューターへのアクセスを提供します。

Habrauserは、確かに、組み込みの認証方法を使用してアクセスを制限できるとすぐに言うでしょう。 私は同意しますが、顧客はキーロガーやパスワード推測などに依存して、そのような条件に同意しませんでした。

そして、彼は非対称アルゴリズムを使用して認証を提供しました。

読む

アイデア


必須:
1.公開鍵(OK)および秘密鍵(SC)の生成者。
2. Windowsの認証を渡すときに起動され、SCからのユーザーを待つサーバーパーツ。
3.ユーザー部分-ICのサーバー部分に送信します。

実装


ステージ1

端末の下で動作するようにVPN接続を編成しました。

ステージ2-リモートコンピューターのセットアップ

1.サーバーパーツをインストールします。
2. OKとSKを生成します。
3.編集、サーバーパーツを起動するユーザーを除くすべてのユーザーのファイルの読み取りを禁止します。
4.リモートデスクトップを使用して作業するときのユーザー設定では、ユーザーがログインしたときにサーバーパーツをすぐに起動する必要があることを示しています。


サーバー側について詳しく説明します。より正確には、開始後に何が起こるかを説明します。
まず第一に-マウスの動きをブロックし、キーボードのキーストロークを無視します。 ユーザーは自分のコンピューターで静かに作業できますが、ターミナルでは、ユーザーが正しいSKを送信するまで、リモートコンピューターはユーザーのアクションを無視します。 タイムアウトは3〜5分かかります。 この間にSKが送信されなかった場合、サーバーはリモートデスクトップセッションを終了します。
SCが正しい場合、ユーザーにはアクセスが許可されます。

ステージ3-コンピューターのカスタマイズ

1.クライアントパーツをインストールします。
2.リモートデスクトップをセットアップします。
3.リムーバブルメディアSKにコピーします。

すべての仕組み


ユーザーはリモートデスクトップセッションを開き、Windows認証を渡します。


その後、サーバーはすぐにサーバーパーツを起動し、アクションをブロックし、ランダムバイトの配列をクライアント(プレーンテキスト)に送信し 、タイマーは3〜5分で開始します。

ユーザーは自分のパートを起動し、OT暗号化が行われ、暗号化結果がサーバーに送信される秘密鍵を示します。
サーバーは、OKを使用して暗号文を解読し、OTと比較します。

キーが適切または適切でない場合、この情報は画面上でユーザーに表示されます。 この場合、SCが起動し、ユーザーはリモートコンピューターで作業できます。


特徴


  • キーの長さ:128バイト
  • 任意のポートを使用するために使用
  • ロギング機能


どこで申請できますか

この状況のように、コンピューターへのアクセスを制限したり、異なる場所のオフィス間でアクセスを制限したりできます。

夕方にソースを投稿します。

UPD:コメントを読んで、Habrachitatelはなぜそれがすべてそのように行われたのか理解できないかもしれません。 私は少し余談します:
さまざまなテクノロジーを使用して実装できると言われていますが、主な問題は、提唱されている要件でさえ、新しいマシンへの展開速度と、コンピューターではなく特定のユーザーへのアクセスの提供です。 はい、IP経由でアクセスを設定できます-ただし、ヒューマンファクターは存在します。 私の場合も-しかし、それはICの損失/第三者への移転に帰着します

Source: https://habr.com/ru/post/J86474/


All Articles