OpenConnect:認証要求時にユーザーパスワードを渡しますか?

OpenConnect:認証要求時にユーザーパスワードを渡しますか?

現在、次のコマンドを使用してサーバー証明書(FINGERPRINT)とOpenConnect-Cookieをインポートするための認証要求を実行しています。

openconnect --authenticate --user=<username> "VPN host"

したがって、後で表示されるユーザープロンプトには常にパスワードを入力する必要があります。

OpenConnect親コマンドにすでにパスワードを渡すオプションはありますか?

たとえば、コマンドを展開すると...

openconnect --authenticate --user=<username> password=<password> "VPN host"

...?


課題は次のとおりです。

ユーザールイ・フリーベイロコマンドにパスワードをエコーし​​たいです。残念ながら、サーバーが2番目のプロンプト(=パスワードプロンプト)に到達する前に1つ以上のユーザープロンプトを提供するため、私たちの場合は機能しません。

何が起こるかは次のとおりです。

  1. 最初のユーザープロンプト:サーバーは言いました。

    • すべてのトラフィックを送信するか、特定のトラフィックのみを送信するかを選択します。
    • 入力Tunnel allするTunnel company」。
  2. 2番目のユーザープロンプト:サーバーは次のように言います。

    • パスワードを入力してください。

ご覧のとおり、簡単な質問はecho間違った答えを提供します。 :-)


可能なexpectスクリプトの場合、テキストを挿入する前の実際の(正確な)サーバー要求は次のとおりです。

  1. 最初のヒント: GROUP: [tunnel MyCompany|tunnel all]:、挿入する回答は次のようにする必要があります。tunnel MyCompany

  2. 2番目のヒント:Password:挿入する回答は次のとおりです。123456789

ベストアンサー1

一般に、VPNソフトウェアはセキュリティ上のリスクと見なされ、ユーザーがパスワードを入力することはできません。

考えられる解決策の1つは、次のようにパスワードをパイプすることです。

echo -e "Tunnel all\nYourPassword" | openconnect --authenticate --user=<username> "VPN host"

私たちが話しているのは、次のようなスクリプトの作成方法に興味がある場合です。

  • ファイルにパスワードを保存することのセキュリティの意味を理解し、ファイルへの読み取りアクセスをコマンドをopenconnect実行するユーザーに制限することが重要です。

PS YourPasswordを実際のパスワードに変更してください。

おすすめ記事