万一の時にも、業務に影響を与えない/自動的に復旧することを目指す「災害対策システム」。今回はオープンソースのVPNソフトウェア「OpenVPN」を使い、遠隔地のサーバとのVPN環境を構築する具体的な方法を説明します。
東日本大震災から5年が経過しました。あらためて、皆さんの会社にも「事業継続計画(BCP)」と「災害復旧対策システム(DR)」の重要性が問われていると思います。
メインシステムがダウンしてしまう万が一の事態に備え、業務に影響が及ぶ「前」に復旧するバックアップシステムをどのように構築すれば良いのか。この連載では、そんな課題を持っている企業のシステム担当者に向け、障害監視ツールなどと一緒に使うことで、サービスの継続提供を助けるソフトウェアである「DRBD(Distributed Replicated Block Device)」を使い、ソフトウェアベースで「災害対策システム」を構築するノウハウをお届けします。
前回は、バックアップサーバのデータを遠隔地に保存する「災害対策システム」を構築する手順を紹介しました。
その中で、クラウドサーバと物理サーバは、セキュアな「VPN(Virtual Private Network)」でつなぐと説明しました。VPN環境を構築するには、VPN機能を持つルータなどのハードウェアを使って構築する方法が一般的ですが、より手軽に、かつ低価格で実現する方法もあります。今回は、オープンソースのVPNソフトウェアである「OpenVPN」使って、災害対策システムのためのVPN環境を構築する方法を解説します。
今回構築する災害対策システムにおけるVPN環境は、本社にある一号機と、遠隔地に置く二号機を安全に接続するために用います(図1)。
このシステムを構築すると、物理サーバである一号機と、離れた場所にあるクラウド環境の二号機が「10.0.0.1」と「10.0.0.2」で通信できるようになります。
OpenVPNでは、各マシンにVPNサーバとVPNクライアントの役割を持たせて通信します。今回は、一号機側をVPNサーバ、二号機側をVPNクライアントと定義して解説していきます。OSはこれまでと同様にCentOS 7を、OpenVPNは(執筆時点で最新版である)バージョン2.3.10を使います。
OpenVPNをインストールしていきましょう。インストールに関しては一号機、二号機共に同じ手順となります。それぞれで実行してください。
今回も、システムの構築が完了するまで一時的にfirewalldを停止し、さらにSELinuxも「無効(disabled)」であることを前提に解説します(設定方法はバックナンバー、第4回「今さら聞けない、“Sambaサーバの冗長化”をDRBDでサクッと実現してしまう方法」を参照ください)。今回の構築では、「UDP 1194ポート」を解放して作業します。構築作業が終わったら、firewalldの設定は元に戻して、再起動してください。
まず、リポジトリを追加します。CentOS 7のデフォルトリポジトリではOpenVPNはインストールできません。yumリポジトリに「EPEL」を追加してからOpenVPNをインストールします。
# rpm -ivh http://ftp.riken.jp/Linux/fedora/epel/7/x86_64/e/epel-release-7-5.noarch.rpm
OpenVPNと証明書、秘密鍵の作成を行うeasy-rsaをインストールします。
# yum install openvpn easy-rsa
一号機(VPNサーバとなるマシン)と二号機(VPNクライアントとなるマシン)のそれぞれで、ひな型の設定ファイルをコピーて準備します。一号機では、証明書と秘密鍵作成用のファイルも一緒に用意します。
# cp -pi /usr/share/doc/openvpn-2.3.10/sample/sample-config-files/server.conf /etc/openvpn/
# cp -r /usr/share/easy-rsa/ /etc/openvpn/
# cp -pi /usr/share/doc/openvpn-2.3.10/sample/sample-config-files/client.conf /etc/openvpn/
Copyright © ITmedia, Inc. All Rights Reserved.