CentOS7にOpenVPNをtun設定で導入する

Centos7にOpenVPNをインストールして外出先からでも自宅内のコンテンツにアクセスできるようにします。tun設定としてネットワーク層での接続としルーティングを設定します。対象とする環境はCentos7.4です。CentOS7.4ではEPELリポジトリからもインストールできるようですが今回はビルドしてRPMでインストールします。

1.関連パッケージのインストール
(1)OpenVPNに必要なパッケージのインストール

(2)本体のインストール

(3)easy-rsaのインストール

2.証明書作成
(1)CA証明証・秘密鍵作成

(2)サーバー証明書・秘密鍵・DH(Diffie Hellman)パラメータ作成

(3)証明書廃止リスト作成

将来的にクライアント証明書を廃止できるようにするため、証明書廃止リストを作成します。
ダミーのクライアント証明書をいったん作成&廃止することにより証明書廃止リストを作成します。

3.OpenVPN設定
(1)TLS認証鍵作成

(2)OpenVPN設定ファイル作成

OpenVPN設定ファイルをサンプルよりコピーし以下の指定箇所を修正又は追記します。

4.ネットワーク設定
(1)ポート転送の有効化

(2)Firewalldの設定(tun設定)

OpenVPN用のFirewalld設定はネット上にほとんど有用な情報はみあたらなかったです。iptables設定は「CentOSで自宅サーバ」を発信元にしてたくさん出てくるのですが。

仕方がないので試行錯誤とFEDORAマニュアルを参考にして以下の通りに設定しました。なんとかこれでtun設定で動いているようです。VPNサーバをゲートウェイとして自宅内LAN上の他のサーバにもアクセスできるように設定しました。

設定参考:FEDORA OPENVPN マニュアル

5.ログローテーション設定

ログロテーションファイルを用意し、ログが一定期間で切り捨てられるようにします。

6.Clientの設定
(1)Client証明書作成

クライアント名client1※のクライアント証明書・秘密鍵(パスフレーズ認証なし)作成します。

(2)クライアントのセットアップ

OPENVPNClientのインストーラをこのURLからダウンロードしセットアップします。
ダウンロード後に以下の手順で設定ファイルをセットアップします(windows前提)。

①クライアント設定ファイルの編集

設定ファイルサンプル(C:\Program Files\OpenVPN\sample-config\client.ovpn)を適当なディレクトリにコピーし下記の設定を編集後、設定ファイル格納ディレクトリ(C:\Program Files\OpenVPN\config)に移動します。

②認証ファイルコピー

サーバに存在する以下の4ファイルをconfigファイルディレクトリ(C:\Program Files\OpenVPN\config)にコピーします。

・CA証明書(/etc/openvpn/ca.crt)

・クライアント証明書(/etc/openvpn/easyrsa3/pki/issued/client1.crt)

・クライアント秘密鍵(/etc/openvpn/easyrsa3/pki/private/client1.key)

・TLS認証鍵(/etc/openvpn/ta.key)

7.OpenVPN起動設定

8.sambaのIP制限解除

samba等でアクセス可能なIPを制限している場合、VPNクライアントのサブネットを追加する必要があります。

9.ログファイルエラーメッセージ対応

こちらの情報は別記事としてまとめました。

10.参考にさせて頂いたサイト

CentOSで自宅サーバ

ServerWorld

「単項演算子が予期されます」を抑制する

ありがとうございます。

スポンサーリンク
レクタングル大広告




レクタングル大広告




シェアする

  • このエントリーをはてなブックマークに追加

フォローする

スポンサーリンク
レクタングル大広告