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 のセキュリティ」をご覧ください。