LINUXで内部的にホストされているWebページを開き、ユーザー入力なしでログインする方法は?

LINUXで内部的にホストされているWebページを開き、ユーザー入力なしでログインする方法は?

起動中に、ChromiumのキオスクでWebページを開き続けるために現在のコード行に追加しようとしています。以下のコードでこれを管理しましたが、ユーザー名とパスワードを自動的に入力しようとしています。を押してから、ログインボタンを押して次のWebページに入ります。これが私がこれまで/home/pi/kiosk.shに保存したものです。

#!空/配布
xsetのノーブランク
出発する
xset-dpms

きれいなアイドル0 - ルート&

Chromeブラウザ --noerrdiaglogs --disable-infobars --kiosk https://192.168.0.1/webconsole

次に、起動時に実行されるようにSystemDで有効になっている別のコードセットを保存します。場所:/lib/systemd/system/kiosk.service:

[単位]
説明=クロムキオスク
希望=graph.goal
以降 = グラフ。

[提供する]
環境=ディスプレイ=:0.0
環境=XAUTHORITY=/home/pi/.Xauthority
タイプ=シンプル
ExecStart=/bin/bash /home/pi/kiosk.sh
再起動時 = 中断
ユーザー=pi
グループ=パイ

[インストールする]
WantedBy=graphical.target

これはすべて素晴らしいですが、唯一の問題は、このページのログイン情報が自動的に開くように何かを追加しようとしていることです。どんな提案がありますか? cURLを調べてみましたが、よくわかりません。時々SSLエラーが発生しますが、内部Webページにセキュリティ証明書がないためです。時間をかけてこの記事を読んでくださった皆さんに感謝します。

ベストアンサー1

これは、ユーザーの対話を処理するユーザーエージェント以外のユーザーエージェントでは実行するのが難しいです。認証を実行するユーザーエージェントからCookieを抽出してChromiumに挿入する問題に直面します。

2つの考えられる解決策を見ることができます。

  1. 使用Chromeドライバまず、スクリプトを介してブラウザを制御し、DOMを介して資格情報を挿入します。

  2. プロキシを使用し、MITMプロキシ接続を介してセッションを確立するようにブラウザを設定します。

ただし、ブラウザでクライアント証明書を構成し、クライアント証明書を使用して認証を受け入れるようにアプリケーションを再構築する方が簡単な場合があります。

おすすめ記事