インターネットへの直接アクセスを持たない隔離されたネットワーク上の VMware Aria Automation インストールでは、インターネット プロキシ サーバを使用してプロキシ機能によるインターネット接続を許可することができます。インターネット プロキシ サーバでは、HTTP および HTTPS がサポートされています。

Amazon Web Services (AWS)、Microsoft AzureGoogle Cloud Platform (GCP) などのパブリック クラウド プロバイダや、IP アドレス管理、Ansible、Puppet などの外部統合ポイントを構成して VMware Aria Automation と一緒に使用するには、インターネット プロキシ サーバを構成する必要があります。

VMware Aria Automation には、インターネット プロキシ サーバと通信する内部プロキシ サーバが含まれています。このサーバがプロキシ サーバと通信するのは、プロキシ サーバが vracli proxy set ... コマンドで設定されている場合です。組織でインターネット プロキシ サーバが設定されていない場合は、内部の VMware Aria Automation プロキシ サーバが直接インターネットに接続を試みます。

指定された vracli コマンドライン ユーティリティを使用することにより、インターネット プロキシ サーバを使用するように VMware Aria Automation を設定できます。vracli API の使用方法は、vracli コマンドラインで --help 引数を使用して参照できます(vracli proxy –-help など)。

注:

Workspace ONE Access へのアクセスは、インターネット プロキシではサポートされていません。vracli set vidm コマンドを使用して、インターネット プロキシ サーバ経由で Workspace ONE Access にアクセスすることはできません。

内部プロキシ サーバは、IPv4 がデフォルトの IP アドレス形式である必要があります。TLS (HTTPS) 証明書トラフィックに対して、インターネット プロトコルの制限、認証、または中間者アクションは必要ありません。

すべての外部ネットワーク トラフィックは、インターネット プロキシ サーバを経由します。内部ネットワーク トラフィックはプロキシをバイパスします。

前提条件

  • インターネット プロキシ サーバとして使用できる既存の HTTP または HTTPS サーバが、外部サイトに送信トラフィックを渡すことができる VMware Aria Automation ネットワークにあることを確認します。接続は IPv4 用に設定されている必要があります。
  • ターゲットのインターネット プロキシ サーバが、デフォルトの IP アドレス形式として IPv4 をサポートするように構成されていることを確認します。
  • インターネット プロキシ サーバが TLS を使用していて、クライアントとの HTTPS 接続が必要な場合は、プロキシの構成を設定する前に、次のコマンドのいずれかを使用してサーバ証明書をインポートする必要があります。
    • vracli certificate proxy --set path_to_proxy_certificate.pem
    • vracli certificate proxy --set stdin

      インタラクティブな入力を行うには、stdin パラメータを使用します。

手順

  1. Kubernetes によって使用されるポッドまたはコンテナのプロキシ構成を作成します。この例では、HTTP スキームを使用してプロキシ サーバにアクセスします。

    vracli proxy set --host http://proxy.vmware.com:3128

  2. プロキシ構成を表示します。

    vracli proxy show

    結果は次のようになります。
    {
        "config_timestamp": "1709214693",
        "enabled": true,
        "generation": "1709214693",
        "host": "proxy-service.prelude.svc.cluster.local",
        "java-proxy-exclude": "*.local|*.localdomain|localhost|127.0.0.1|127.*|kubernetes|*.cluster.local|*.svc.cluster.local|*.prelude.svc.cluster.local|sc2-10-43-195-99.nimbus.eng.vmware.com|10.43.195.99|*.nimbus.eng.vmware.com|10.244.0.*|10.244.1.*|10.244.2.*|10.244.3.*|10.244.4.*|10.244.5.*|10.244.6.*|10.244.7.*",
        "java-user": null,
        "password": null,
        "port": 3128,
        "proxy_connection_read_timeout": 15,
        "proxy_dns_query_timeout": 60,
        "scheme": "http",
        "system-proxy-exclude": ".local,.localdomain,localhost,127.0.0.1,127.,kubernetes,.cluster.local,.svc.cluster.local,.prelude.svc.cluster.local,sc2-10-43-195-99.nimbus.eng.vmware.com,10.43.195.99,.nimbus.eng.vmware.com,10.244.0.,10.244.1.,10.244.2.,10.244.3.,10.244.4.,10.244.5.,10.244.6.,10.244.7.",
        "upstream_proxy_host": "proxy.vmware.com",
        "upstream_proxy_password_encoded": "",
        "upstream_proxy_port": 3128,
        "upstream_proxy_user_encoded": "",
        "user": null,
        "user-proxy-exclude": "",
        "internal.proxy.config": "# Begin autogen configuration\ndns_v4_first on \nhttp_port 0.0.0.0:3128\nlogformat squid %ts.%03tu %6tr %>a %Ss/%03>Hs %<st %rm %ru %[un %Sh/%<a %mt\ncache deny all \nappend_domain .prelude.svc.cluster.local\naccess_log stdio:/tmp/logger\ncoredump_dir /\ndns_timeout 60 seconds\nacl mylan src all\nacl proxy-exclude-domain dstdomain localhost\nacl proxy-exclude-domain dstdomain .nimbus.eng.vmware.com\nacl proxy-exclude-domain dstdomain .local\nacl proxy-exclude-domain dstdomain .localdomain\nacl proxy-exclude-domain dstdomain kubernetes\nacl proxy-exclude-ip dst 10.43.195.99/32\nacl proxy-exclude-ip dst 10.244.0.0/21\nacl proxy-exclude-ip dst 127.0.0.0/8\nalways_direct allow proxy-exclude-ip\nalways_direct allow proxy-exclude-domain\n# Anonymize the proxy server.\nvia off\nforwarded_for delete\nhttp_access allow mylan\nhttp_access deny all\nread_timeout 15 minutes\nmax_filedescriptors 16384\n# End autogen configuration\n# http configuration of remote peer follows\ncache_peer proxy.vmware.com parent 3128 0 no-query default \nnever_direct allow all\n",
        "internal.proxy.config.type": "non-default"
    }
    
    注: 組織でインターネット プロキシ サーバが設定されていない場合は、上の例で 'default' ではなく、 "internal.proxy.config.type": "non-default" が表示されます。セキュリティのため、パスワードは表示されません。
  3. (オプション) DNS ドメイン、FQDN、および IP アドレスを、インターネット プロキシ サーバからアクセスできないように除外します。

    vracli proxy set コマンドの実行時に --proxy-exclude パラメータを指定することで、インターネット プロキシ サーバ経由でアクセスできないアドレスを指定できます。たとえば、インターネット プロキシ サーバを使用してアクセスできないドメインとして .acme.com を追加する場合は、次のコマンドを実行します。

    vracli proxy set .... --proxy-exclude .acme.com
    注: このコマンドは、以前のプロキシ除外設定をリセットし、インターネット プロキシ サーバ経由ではなく直接アクセスする必要があるドメインのリストに .acme.com を追加します。以前の設定を保持する場合は、 --proxy-exclude パラメータの値として、 .acme.com で拡張された既存のプロキシ除外リストを渡す必要があります。現在設定されているプロキシ除外リストを確認するには、 vracli proxy show コマンドを実行して、 user-proxy-exclude プロパティの値を調べます。たとえば、以前に exclude.vmware.com をプロキシ除外リストに追加した場合、 vracli proxy show コマンドの出力は次のようになります。
    {
    ...
        "user-proxy-exclude": "exclude.vmware.com",
    ...
    }
    
    exclude.vmware.com を除外として維持したまま除外リストに .acme.com を追加するには、次のコマンドを実行する必要があります。
    vracli proxy set .... --proxy-exclude exclude.vmware.com,.acme.com
  4. vracli proxy set ... コマンドを使用してインターネット プロキシ サーバを設定した後は、vracli proxy apply コマンドを使用してインターネット プロキシ サーバの設定を更新し、最新のプロキシ設定を有効にすることができます。
  5. (オプション) 必要に応じて、ポート 22 で外部アクセスをサポートするようにプロキシ サーバを構成します。

    Puppet や Ansible などの統合をサポートするには、関連するホストにポート 22 でアクセスできるようにプロキシ サーバで許可する必要があります。

例: サンプルの Squid 構成

手順 1 では、Squid プロキシを設定する場合、次のサンプルに合わせて /etc/squid/squid.conf で構成を調整することができます。

acl localnet src 192.168.11.0/24

acl SSL_ports port 443

acl Safe_ports port 80 # http
acl Safe_ports port 21 # ftp
acl Safe_ports port 443 # https
acl Safe_ports port 70 # gopher
acl Safe_ports port 210 # wais
acl Safe_ports port 1025-65535 # unregistered ports
acl Safe_ports port 280 # http-mgmt
acl Safe_ports port 488 # gss-http
acl Safe_ports port 591 # filemaker
acl Safe_ports port 777 # multiling http
acl CONNECT method CONNECT

http_access allow !Safe_ports
http_access allow CONNECT !SSL_ports
http_access allow localnet

http_port 0.0.0.0:3128

maximum_object_size 5 GB
cache_dir ufs /var/spool/squid 20000 16 256
coredump_dir /var/spool/squid
refresh_pattern ^ftp: 1440 20% 10080
refresh_pattern ^gopher: 1440 0% 1440
refresh_pattern -i (/cgi-bin/|\?) 0 0% 0
refresh_pattern (Release|Packages(.gz)*)$ 0 20% 2880
refresh_pattern . 0 20% 4320

client_persistent_connections on
server_persistent_connections on