Fujitsu Cloud Direct ブログ

初心者エンジニア向け技術ブログ

ニフクラDevOps with GitLabをプライベートLAN構成で構築する方法_拠点間VPNゲートウェイ(L2TPv3/IPsec接続)編

この記事は、ニフクラブログで2023-03-27に公開された記事を移転したものです。

こんにちは、CRE部 技術支援チームです。

ニフクラDevOps with GitLabDevOpsに必要な環境を簡単に構築できるサービスです。

インターネット接続でDevOpsサーバー作成後すぐにDevOps環境を利用できます。

しかし、セキュリティの観点からグローバルネットワーク経由でDevOps環境にアクセスしたくない場合があります。

そのためセキュアにDevOps環境にアクセスする構成検証を紹介します。
構成検証として以下のニフクラクラウドデザインパターンの2パターンが考えられます。

今回は拠点間VPNゲートウェイを使ってニフクラDevOps with GitLabをプライベートLAN構成で構築します。

前提条件

本ブログ記事は、以下の知識がある方を想定しています。

  • ニフクラの基本的なコントロールパネルの操作、サービスの利用に関する知識

  • ニフクラの基本的な操作ができる(サーバー作成、ネットワーク構築)

検証概要

以下の拠点間VPNゲートウェイ(L2TPv3/IPsec接続)構成で検証を実施します。
※利用者側環境は「疑似利用者側環境」としてニフクラ上に構築します。

①. east-1をDevOps with GitLabがあるニフクラ環境、west-1を利用者側環境として環境を構築します。

②. west-1の接続用Windows検証サーバーから拠点間VPNゲートウェイ(L2TPv3/IPsec接続)経由でニフクラ環境にアクセスします。

➂. west-1の接続用Windows検証サーバーのブラウザでGitLab画面を表示します。

※DevOpsサーバーでは別途ルーティングの設定はできないため、IPSec VTIなどルーティングの設定が必須となる構成は実装できません。

作成するニフクラリソース

利用したリソースは以下の通りです。

リソース 数量
DevOps with GitLabサーバー 1
DevOpsパラメーターグループ 1
DevOpsファイアウォール 1
プライベートLAN 2
ファイアウォール 3
拠点間VPNゲートウェイ 2
ルーター 1
DHCPオプション 1
NATテーブル 1
接続用Windows検証サーバー 1
拠点間VPNGW:VPNコネクション(L2TPv3/IPsec) 2
拠点間VPNGW:カスタマーGW 2

環境設定

利用者側環境リソース作成

今回は以下の内容で「疑似利用者側環境」を構築しました。
利用者側環境の作成手順は省略します。

  • ニフクラ側環境とL2延伸が構築できるように、利用者側環境のルーター、ゲートウェイ等の対向拠点機器の配置、VPN設定等を実施します。

  • 外部からルーターのDNAT経由で接続用Windows検証サーバーに接続して検証を実施します。

ニフクラ側環境リソース作成

ファイアウォール作成

ニフクラ側環境で使用するファイアウォールを作成します。
プライベートLAN内の通信と利用者側環境の対向拠点機器設定(ESP、UDP)を許可します。
作成方法は以下ヘルプサイトを参照ください。
クラウドヘルプ(ファイアウォールグループの新規作成)

ファイアウォール名プロトコルポート接続元用途
NifcVpnGwFwANY-192.168.1.0/24プライベートLAN内の通信をALL許可
ESP-利用者側環境の対向拠点機器グローバルIPVPNトンネル(L2TPv3/IPsec)接続時の対向拠点許可
UDP4500
UDP500

プライベートLAN作成

ニフクラ環境側のプライベートLANを作成します。
作成方法は以下ヘルプサイトを参照ください。
クラウドヘルプ(プライベートLANの新規作成)

プライベートLAN名 CIDR 用途
NifcVpnLAN 192.168.1.0/24 ニフクラ環境側プライベートLAN

拠点間VPNゲートウェイ

利用者側環境とL2TPv3/IPsec接続で接続する拠点間VPNゲートウェイを作成します。
作成方法は以下ヘルプサイトを参照ください。
クラウドヘルプ(拠点間VPNゲートウェイ:作成)

項目 設定値
拠点間VPNゲートウェイ名 NifcVpnGw
ファイアウォール NifcVpnGwFw
プライベートLAN NifcVpnLAN
プライベートIPアドレス 192.168.1.1
グローバルIPアドレス 自動割り当て

DevOpsパラメーターグループ作成

DevOpsパラメーターグループを作成します。
作成方法は以下ヘルプサイトを参照ください。
クラウドヘルプ(ファイアウォールグループの新規作成)

パラメーターグループ名
devops-vpn

DevOpsファイアウォール作成

DevOpsファイアウォールを作成します。

  • プライベートネットワークからのアクセスのみ許可します。グローバルIPへの許可は設定しません。

  • L2TPv3/IPsecによるL2延伸を実施しますので、想定ユーザー環境ネットワーク帯である192.168.1.0/24をアクセス許可します

作成方法は以下ヘルプサイトを参照ください。
クラウドヘルプ(ファイアウォールグループの新規作成)

ファイアウォール名 プロトコル ポート 接続元 用途
devops-vpnfw TCP 443 192.168.1.0/24 プライベートLAN内の通信を許可

DevOps with GitLabサーバー作成

DevOps with GitLabサーバーを作成します。
作成方法は以下ヘルプサイト、ユーザガイドを参照ください。
クラウドヘルプ(DevOpsサーバーの作成)
ユーザガイド(DevOps with GitLab:クイックスタート)

サーバー名 ファイアウォール パラメーターグループ プライベートIPアドレス グローバルIPアドレス
devops-vpn devops-vpnfw devops-vpn 192.168.1.2/24 自動割り当て

DevOps with GitLabサーバーの作成が完了するとGitLab URLが発行されます。
発行されたGitLab URLは作成されたGitLabへアクセスするためのURLとなります。

ニフクラ側環境カスタマーGW作成、VPNコネクション作成

ニフクラ側環境に利用者側環境の対向拠点機器情報、VPN設定を持たせるためにカスタマーゲートウェイを作成します。
作成方法は以下ヘルプサイトを参照ください。
クラウドヘルプ(拠点間VPNGW:カスタマーゲートウェイ作成)

カスタマーゲートウェイ名 対向機器IPアドレス 接続方式 対向機器LAN側IPアドレス
NifcVpnCGW 利用者側環境の対向拠点機器グローバルIP L2TPv3/IPsec 空欄

VPNコネクションを作成します。 利用者側環境の対向拠点機器を参照しながらお客様間毎のネットワーク構成に合わせて設定します。
作成方法は以下ヘルプサイトを参照ください。
クラウドヘルプ(拠点間VPNGW:VPNコネクション作成)

  • 基本設定
項目 設定値
カスタマーゲートウェイ NifcVpnCGW
接続方式 L2TPv3/Ipsec
IKEバージョン IKEv1
暗号化アルゴリズム AES128
認証アルゴリズム SHA1
事前共有鍵 xxxxxx(任意)
IKE lifetime 28800
ESP lifetime 3600
DH Group デフォルト

  • トンネル設定
    ※トンネルIDとセッションIDの対向機器の内容は利用者側環境のネットワーク構成に合わせて設定してください。
項目 設定値
トンネルタイプ Unmanaged
トンネルモード IP
カプセル化方式 1500
MTUサイズ SHA1
トンネルID 拠点間VPNGW:1001
対向機器:1002
セッションID 拠点間VPNGW:1001
対向機器:1002

ニフクラ側環境と利用者側環境の拠点間VPNゲートウェイ(L2TPv3/IPsec接続)構成は完了です。

接続用Windows検証サーバーのhostsファイル編集

利用者側環境の接続用Windows検証サーバーにログインします。

プライベートLANを経由してDevOpsサーバーにアクセスするために 以下のディレクトリにあるhostsファイルを編集します。

C:\Windows\System32\drivers\etc\

hostsファイルにDevOpsサーバーのプラベートIP発行されたGitLab URLを追加します。

 192.168.1.2    xxxxxxx.jp-east-1.gitlab.devops.nifcloud.com

以上で環境設定は完了です。

検証実施

利用者側環境の接続用Windows検証サーバーにログインします。

ブラウザを起動してDevOpsサーバーのGitLab URLを入力するとGitLabのログイン画面が表示されます。

以下の経路でDevOpsサーバーにアクセスしていることが確認できました。検証は完了です。

まとめ

今回はニフクラDevOps with GitLabの拠点間VPNゲートウェイを使ってセキュアなプライベートLAN構成を構築する方法を紹介しました。

次回はリモートアクセスVPNゲートウェイ(SSL-VPN接続)を使ったプライベートLAN構成の構築方法を紹介します。

ここまで読んでいただきありがとうございました。

注意事項

  • 本記事に記載されている会社名、製品名等の固有名詞は各社の商号、登録商標または商標です。

  • 本記事は、2023年3月時点の情報です。