Skip to main content

プライベート ネットワークへの接続

GitHub Codespaces は、パッケージ レジストリ、ライセンス サーバー、オンプレミス データベースなど、プライベート ネットワーク上のリソースに接続できます。

codespace ネットワークについて

既定では、codespace から、パブリック インターネット上のすべてのリソース (パッケージ マネージャー、ライセンス サーバー、データベース、クラウド プラットフォーム API を含みます) にアクセスできますが、プライベート ネットワーク上のリソースにはアクセスできません。

プライベート ネットワーク上のリソースへの接続

現在、GitHub Codespaces 内のプライベート ネットワーク上のリソースにアクセスする方法は 2 つあります。

  • GitHub CLI 拡張機能を使用して、ローカル コンピューターをリモート リソースへのゲートウェイとして構成する。
  • VPN を使用する。

GitHub CLI 拡張機能を使用してリモート リソースにアクセスする

注: GitHub CLI 拡張機能は現在ベータ段階であり、変更されることがあります。

GitHub CLI 拡張機能を使用すると、codespace とご自分のローカル コンピューターの間にブリッジを作成し、コンピューターからアクセスできるあらゆるリモート リソースに codespace がアクセスできるようにすることができます。 codespace は、ローカル コンピューターをネットワーク ゲートウェイとして使用して、それらのリソースに到達します。 詳しくは、GitHub CLI を使用してリモート リソースにアクセスする方法に関するページを参照してください。

VPN を使ってプライベート ネットワークの背後にあるリソースにアクセスする

GitHub CLI 拡張機能の代わりに、VPN を使用して、codespace 内からプライベート ネットワークの背後にあるリソースにアクセスできます。

プライベート ネットワーク上のリソースにアクセスするには、OpenVPN などの VPN ツールをお勧めします。 詳しくは、「GitHub Codespaces からの OpenVPN クライアントを使う」をご覧ください。

また、GitHub で積極的にお勧めしているわけではありませんが、GitHub Codespaces と統合する方法の例を示すサード パーティ ソリューションもいくつかあります。

これらのサード パーティ ソリューションには、次のものが含まれます。

codespace のプライベート リソースを許可リストに載せる

GitHub では、Meta API で、いくつかの製品の IP 範囲を発行していますが、codespace の IP アドレスは動的に割り当てられます。つまり、codespace の IP アドレスが毎日同じとは限らないということです。 詳しくは、「メタデータ用 REST API エンドポイント」を参照してください。

IP 範囲全体を許可リストに載せると、すべての codespace (codespace に関連付けされていないユーザーを含む) に必要以上に広範なアクセス権が付与されるため、IP 許可リストを有効にした場合、codespace の作成は無効になります。 詳しくは、「組織に対する許可 IP アドレスを管理する」を参照してください。

パブリック インターネットへのアクセスを制限する

現時点では、パブリック インターネットからの codespace へのアクセスを制限したり、認証されたユーザーが転送されたポートにアクセスできないように適切に制限したりする方法はありません。

codespaces をセキュリティで保護する方法について詳しくは、「GitHub Codespaces のセキュリティ」をご覧ください。