おはようございます!マネジメントオフィスいまむらの今村敦剛です。
この度、IDCフロンティアのIaaS型パブリッククラウドサービスを使い、OpenVPNサーバを構築しました。その構築方法を記録する第2回目です。今回は、IaaS(IDCF)でのネットワーク設定(ポート開放とポートフォワーディング)について解説します。
スポンサーリンク
この連載の全体的な構成
この連載は、全10回を予定しています。今回は第2回目「IaaSネットワーク設定」です。
連載記事一覧
- 全体構想
- IaaS設定 - 仮想マシン作成
- IaaS設定 - IaaSネットワーク設定
- IaaS設定 - 操作環境整備
- IaaS設定 - DDNS設定
- VPNサーバ設定 - インストール
- VPNサーバ設定 - 鍵・証明書作成
- VPNサーバ設定 - server.conf作成
- VPNクライアント設定 - 鍵・証明書作成
- VPNクライアント設定 - client.ovpn作成
- VPNクライアント設定 - windows自動起動設定
仮想ルータのポート開放とポートフォワーディング(IPマスカレード)をする必要がある
今回の環境(IDCフロンティアのIaaS型パブリッククラウドサービス)では、OpenVPNの構築の前に、仮想ルータの設定をしなければなりません。IDCフロンティアの仮想ルータは、デフォルトの設定では、すべてのポートが閉じられているからです。(ポートがとじていると、OpenVPNの設定もできないし、VPNも接続ができない)
具体的には仮想ルータのポート開放とポートフォワーディングをする必要があるんですが、イメージとしては下記の図のような感じです。
例えば、ネットワークを通じて別の機器を遠隔操作する場合、SSHプロトコルというものを使ってサーバ側に接続することがあります。そのSSHプロトコルは、通常、TCPの22番というポートを使います。その22番のポートの通信を仮想ルータのファイアウォールで開けてあげる必要があります。またポートを開けただけではダメで、22番ポートの通信が来たら、LAN側の仮想マシンに転送するという設定(ポートフォワーディング。またの名をIPマスカレード)もする必要があります。この設定をしてようやく、外部の端末からネットワークを通じて、LAN側の仮想マシンにアクセスができるようになります。
仮想ルータのポート開放
まずはポート開放から説明します。クラウド管理画面の「IPアドレス」をクリックします。その後「IPアドレス名」をクリックします。
「ファイアウォール」をクリックします。
ここから、開放するポートの設定ですが、結論としては下記を参考にしてください。最低限はこれで十分だと思います。
「コメント」は任意の名称でよいです。自分がわかりやすい名称をつけてください。
「ソースCIDR」とは、どのIPからきた通信を許容するかの範囲設定です。選択肢として「My IP」「Any」「Custom IP」があります。「My IP」にすると、いまこの時点でこの画面を操作をしているPCのグローバルアドレスプールを自動的に設定してくれます。これを選ぶと、そのIPアドレスプールからの通信しか許容をしません。ぼくの場合、遠隔操作で仮想マシンを触るのは事務所からしかしませんので、My IPで当社の事務所に割り当てられたIPアドレスを登録しました。ICMPはpingのことですが、さしあたっては「Any」を選択して0.0.0.0/0にしました。どこからでも通信が可能にしていますが、ちゃんとVPNが張れることが確認したら、この設定は削除したほうがよいでしょう。最後はVPNのためのポート開放です。OpenVPNサーバーは、デフォルトでUDPの1194ポートを使いますので、1194を開けます。
なお、ポート開放するとセキュリティレベルが下がってしまいますので、その影響を緩和するために、ポート番号は変更するのが望ましいです。ポート番号は、ちゃんと接続できることが確認した後に変更したほうがよいでしょう。(変更のやり方は、いつか解説したいと思います)
リモートデスクトップで使用するTCPの3389も、ここで開ける必要はありません。リモートデスクトップの通信はVPNの中を通っていくので、仮想ルータでの設定は不要なのだと思います。
仮想ルータのポートフォワーディング設定
ポートフォワーディングは、どこか特定のポート宛の通信が来たら、それを仮想マシンに転送するという設定です。これも結論を言うと、下記の設定でよいと思います。
この設定の意味は、SSHの設定でいうと、仮想ルータ宛てにTCP22番宛の通信が来たら、仮想マシンの22番に転送する、という意味です。
これで仮想ルータ設定はできました😊