ssh(OpenSSH)を介して接続されたサーバーとクライアントの両方について、いくつかの一意のセッション識別子(これをUSIDとします)を取得する方法があるかどうか疑問に思います。
これは、特定の(カスタム)ソフトウェア(a.exe)の実行を制限するために使用されるため、他のユーザー(潜在的にroot)がその実行可能ファイルにアクセスできる場合でも、特定のsshセッションを介してのみ実行できます。
- マシンC(クライアント)からマシンS(サーバー)へのsshセッションが開かれた後、マシンC ( USIDを認識している)はマシンX(サードパーティサーバー)のレコードを更新し、このUSIDが"であることを通知します。安全な"。
- マシンSのa.exeは、呼び出されると、現在のセッションのUSIDが「安全」であるかどうかを確認し(この情報はXによって提供されます)、否定的な応答を受け取った場合は実行を停止します。
XとC、XとSの間の通信チャネルは安全であるため、ここでの唯一の問題は、独自のsshクライアントやサーバーを作成せずにそのUSIDを取得することです。
何か案は?