ChromeOS でプロキシ サーバーを使用することで、組織と組織内ユーザーの訪問先サイトとの間に防御層を設けることができます。プロキシ サーバーには、安全でない、あるいは望ましくないコンテンツを除外したり、ユーザーの IP アドレスを隠したり、特定のウェブサイトへのアクセスを防止したりする機能があります。
プロキシ サーバーを使用すると、次の処理が行われます。
- サイトへのリクエストがプロキシ サーバーを通過する。
- プロキシ サーバーがリクエストをウェブサイトに渡す。
- ウェブサイトがウェブページをプロキシ サーバーに返す。
- プロキシ サーバーがウェブページをユーザーのデバイスに返す。
プロキシの選定方法
ChromeOS はさまざまなプロキシ スキームに対応しており、セキュリティ性、どのトラフィックをプロキシに通すか、どこで DNS の解決を行うかなど、組織のニーズに合わせた設定が可能です。ChromeOS が対応しているプロキシ スキームの一覧や実装の詳細については、Proxy support in Chrome をご覧ください。
他のネットワーク設定とは互換性がないプロキシ設定もあります。たとえば、ChromeOS でプロキシが設定されていると DNS の解決はサーバー側で行われますが、socks4 プロキシの場合は例外で、カスタムの DNS 設定との互換性が失われます。
プロキシの認証メカニズムを選択する際、ChromeOS レベルのコンポーネントによってはネットワーク機能が Chrome ブラウザとは異なる、あるいは Chrome ブラウザよりも劣るものがあります。
ChromeOS レベルのプロキシ認証
ユーザーが Chrome ブラウザにログインする際、ユーザー名とパスワードはそのユーザーのプロファイルと関連付けられた認証キャッシュに保存され、それらの認証情報にアクセスできるのは OS ブラウザ内でのユーザーからの Chrome ブラウザ表示リクエストに限られます。
つまり、Chrome ブラウザでの接続性を必要とするシステム サービス(ポリシーの更新やキオスクの登録など)や、OS での接続性を必要とするシステム サービス(OS の更新、障害レポートのアップロード、システム時刻の同期など)はユーザー名とパスワードにアクセスできません。ネットワーク管理者は、システム サービスが生成するトラフィックが認証ステップをバイパスするようにしておく必要があります。
Google Play と Google Play のアプリ トラフィックもこれに該当します。
システム サービスと Google Play が使用し、プロキシの認証ステップをバイパスする必要があるエンドポイントの一覧については、プロキシ認証のバイパスリストの項をご覧ください。
SystemProxySettings ポリシーを設定して OS 上のシステム サービスと Google Play トラフィックが OS サービスによって認証されるようにすることで、登録済みデバイスにおけるプロキシのバイパスリストを大幅に削減できます。詳しくは、ChromeOS デバイスのポリシーを設定するの「認証されたプロキシを介したトラフィック」の設定をご覧ください。
また、カスタムの CA 証明書はユーザー トラフィックにのみ適用されます。プロキシが TLS インスペクションを行う際、システム トラフィックと Android トラフィックはインスペクションをバイパスできる必要があります。Chrome デバイスで TLS(SSL)インスペクションを設定する > ホスト名の許可リストを設定するをご覧ください。
ChromeOS での明示的プロキシの設定方法
使用する設定
ChromeOS でのプロキシの設定は、個々のネットワークまたはグローバル(組織内のすべてのネットワーク)に対して行うことができます。プロキシの設定は以下のとおりです(優先度順)。
- ユーザー ポリシー ProxySettings - グローバル
- 拡張機能 - グローバル
- ユーザー ポリシー OpenNetworkConfiguration - ネットワークごと
- デバイス ポリシー DeviceOpenNetworkConfiguration - ネットワークごと
- ネットワーク設定の UI - ユーザーがネットワークごとに設定
一般的にプロキシ設定は OS 全体に適用されますが、以下の例外についてはユーザーが明示的にブラウザでプロキシ設定を許可する必要があります。
- 拡張機能によって設定されたプロキシは、シークレット モードではデフォルトで無効になっています。ユーザーは chrome://extensions ページから、プロキシのシークレット モードでの実行を制御する拡張機能を明示的に許可する必要があります。
拡張機能によって設定されたプロキシをシークレット モードで強制的に適用することはできませんが、事前設定された拡張機能をユーザーがシークレット モードで許可していない場合は、シークレット モードでのウェブページの表示をブロックできます。詳しくは、MandatoryExtensionsForIncognitoNavigation ポリシーをご覧ください。 - Lacros のセカンダリ プロファイルを使用している場合、ユーザーは chrome://settings/system ページで [このプロフィールで ChromeOS のプロキシ設定を使用する] をオンにすることにより、OS で設定されているプロキシの使用の有効 / 無効を切り替えられます。
使用するプロキシ設定の形式
ChromeOS は次のプロキシ形式に対応しています。
- 手動 - プロキシを識別するための静的なリストと、プロキシをバイパスする必要があるエンドポイントのリスト
- PAC スクリプト - URL にどのプロキシを使用するかを決定するために、より複雑なルールを設定できる JavaScript ファイル
- 自動検出 - PAC URL を取得するために DNS または DHCP を調査する検出メカニズムである WPAD(Web Proxy Auto-Discovery Protocol)
- 直接 - 疑似プロキシ、つまりプロキシを使用しない
形式を決める際は、次のことに留意してください。
- まずプロキシ解決が行われてから名前解決が行われます。プロキシのバイパスリストが IP リテラルを使って構成されている場合、そのバイパスは特定の IP アドレスへのアクセスのみに適用され、IP アドレスに関連付けられたホスト名を使用した場合には適用されません。詳しくは、Proxy bypass rules をご覧ください。
- Android のプロキシ対応には以下が適用されます。
- data:// scheme を使用した PAC URL はサポートされていません。
- 手動でプロキシを設定する場合、特殊文字を使った IPv6 アドレスおよび ASCII 以外の文字をバイパスリストに含めることはできません。
プロキシ認証のバイパスリスト
ChromeOS システム サービス
Chrome / ChromeOS サービス | ホスト名 |
---|---|
必須 | |
DMServer | m.google.com |
確認済みアクセスのための強制再登録 | chromeos-ca.gstatic.com |
ChromeOS - 自動更新 | cros-omahaproxy.appspot.com omahaproxy.appspot.com tools.google.com |
ChromeOS - 障害レポート機能の更新ログ Chrome - WebRTC の更新ログ |
clients2.google.com |
ChromeOS - tlsdate を使ったシステム クロックの同期 | clients3.google.com |
キャプティブ ポータルの検出 | www.gstatic.com または accounts.google.com または www.googleapis.com |
トラブルシューティング用レポートのアップロード、Crostini のダウンロードなど | storage.googleapis.com |
各種 API サービス | www.googleapis.com |
Google が使用するドメイン - XSS 攻撃を回避するために *.google.com とは分離して管理する | *.1e100.net |
一時的な URL 処理 - 一部のリクエストが、アプリのダウンロード速度を高めるために Google のキャッシュ インフラストラクチャにリダイレクトされる | *.gvt1.com |
自動更新や静止画像などのダウンロード | dl.google.com dl-ssl.google.com |
Chrome コンポーネントの更新(chrome://components) | update.googleapis.com |
強く推奨 | |
セーフ ブラウジング | safebrowsing-cache.google.com safebrowsing.google.com safebrowsing.googleapis.com enterprise-safebrowsing.googleapis.com sb-ssl.google.com |
Chrome アカウント同期サーバー - ユーザーデータ(ブックマーク、ユーザー指標の収集、その他のサービスなど)の同期 | clients4.google.com |
アドレスバーへの入力に基づくドキュメント提案 | cloudsearch.googleapis.com |
OEM が提供するカスタマイズ情報や設定(など)のダウンロード | ssl.gstatic.com |
サードパーティまたはユーザーが作成するコンテンツ(プリンタ ドライバや拡張機能など) googleusercontent.com が、ユーザーが生成したコンテンツに含まれている可能性のあるバグや悪意のあるコードから主要な Google サービスを保護し、ドメインをクロスサイト スクリプティング攻撃にさらさないようにする |
*.googleusercontent.com |
プリンタのサポート - プリンタ PDD のダウンロード | printerconfigurations.googleusercontent.com |
周辺機器のサポート - 接続されたさまざまなデバイスとの連携を向上させるための専門的なガイド。現在はプリンタとディスプレイに対応 | chromeosquirksserver-pa.googleapis.com |
Google Play
Google Play | ホスト名 |
---|---|
必須 | |
アプリのプロビジョニングとインストールに必須 | android.googleapis.com android.apis.google.com play.google.com |
Google Cloud Messaging(GCM)、Firebase Cloud Messaging、GMS コア エンドポイント gcm-http.googleapis.com gcm-xmpp.googleapis.com fcm.googleapis.com fcm-xmpp.googleapis.com gmscompliance-pa.googleapis.com |
*.googleapis.com |
その他 | connectivitycheck.android.com *.android.com google-analytics.com android.googleapis.com pki.google.com clients5.google.com clients6.google.com connectivitycheck.gstatic.com |
拡張機能とキオスク
Chrome / ChromeOS サービス | ホスト名 |
---|---|
必須 | |
拡張機能のダウンロード エンドポイント | clients2.google.com clients2.googleusercontent.com chrome.google.com |