Linux Blog

CentOS7でLinuxサーバー構築

TOP » サーバー構築 » OpenVPN »

OpenVPN

外出先から自宅LANにアクセスしてパソコンを遠隔操作をしたり、社外のモバイル環境から社内LANにアクセスしてファイルサーバーを閲覧したいということがあると思います。これを可能にする技術をVPN(Virtual Private Network)といいます。
VPNを導入するとインターネット上であってもデータを安全にやり取りしたり、社外から社内のサーバーにアクセスできるようにすることもできます。OpenVPNというソフトウェアを使ってVPNサーバーを導入する方法を紹介します。自宅のLAN内にOpenVPNサーバーを構築すれば、外出先から自宅のパソコンの共有フォルダにアクセスしたり、WebカメラやDVDレコーダーといったネットワーク機能を搭載した機器を利用することも可能です。

  • OpenVPNのインストール

    OpenVPNはSSL/TLSプロトコルを利用した機能のSSL VPNです。証明書やスマートカード、ID/パスワードを使った柔軟なクライアント認証が可能で、 VPNの仮想インターフェイスに対してファイアーウォールを設定することによってユーザーやグループ単位でのアクセス制御もできます。OpenVPNを扱うためには、ネットワークに関する基礎知識としてIPアドレス、DNS、ネットマスク、サブネット、IP...

  • 認証局(CA)の設置とOpenVPN用証明書と鍵のの作成

    ここではマスター認証機関の証明書と鍵を生成し、サーバーの証明書と鍵を生成します。証明書・鍵作成用環境変数設定ファイルを編集します。64行目から69行目までをコメントアウトして、70行目から74行目までを追加します。 vi /usr/share/easy-rsa/2.0/vars # easy-rsa parameter settings # NOTE: If you installed ...

  • サーバー用の証明書と鍵の生成

    サーバー用の証明書と秘密鍵を生成します。応答はすべてエンターキーを押します。最後にSign the certificate?(証明書に署名しますか?) [y/n]と1 out of 1 certificate requests certified, commit?(1つの証明書要求がありますが、コミットしますか?) [y/n]という2つの質問があります。ここでは両方にYesと答えます。(yキーとエ...

  • クライアント用の証明書と鍵の生成

    クライアント用の証明書と秘密鍵を生成します。クライアントの鍵をパスワードで保護するためにbuild-key-passコマンドを実行します。パスフレーズの入力を2回求めらるので入力します。それ以外の応答はすべてエンターキーを押します。 ./build-key-pass client1 ここで作成されたクライアント1の証明書であるclient1.crtとクライアント1の鍵であるclient1.keyフ...

  • Diffie Hellmanパラメータの生成

    以下のコマンドを使ってDiffie Hellmanパラメータを生成します。 ./build-dh >Generating DH parameters, 1024 bit long safe prime, generator 2 This is going to take a long time .................+..................................

  • OpenVPNのセキュリティの強化

    OpenVPNのセキュリティを強化すると次のような攻撃や問題に対処できます。 OpenVPN UDPポートに対するDoSアタックなどの攻撃 リッスン中のサーバーのUTPポートを特定するためのポートスキャン SSL/TLS実装上のバッファオーバーフローの脆弱性 認証されていないマシンからのSSL/TLSハンドシェイクの開始(いずれにしても最終的には認証に失敗することになりますが、tls-authを...

  • OpenVPNサーバーの設定

    設定ファイルを使ってOpenVPNサーバーの設定を行います。OpenVPNサーバーの設定ファイルは提供されているサンプルファイルを編集して行います。 cp /usr/share/doc/openvpn-2.3.7/sample/sample-config-files/server.conf /etc/openvpn/ server.confファイルの146行目はVPNクライアントに対して、192....

  • クライアント用設定ファイルの作成

    OpenVPNクライアントからの接続に必要な.ovpnファイルを作成します。このファイルは主にアンドロイドからの接続に利用します。 サンプルファイルがインストールされているので、それをコピーして使います。 cp /usr/share/doc/openvpn-2.3.6/sample/sample-config-files/client.conf /usr/share/easy-rsa/2.0/ke...

  • OpenVPNの起動

    OpenVPNを起動する前に、ルーターのファイアーウォールのUDPポート1194を解放し、静的NATルールを追加します。次にシステム起動時にサービスが開始されるように設定します。 systemctl -f enable openvpn@server.service OpenVPNを起動します。 systemctl start openvpn@server.service ...

  • OpenVPNのWindowsクライアント

    起動したOpenVPNサーバーに接続します。今回使用するOpenVPNのWindowsクライアントはvpnux Clientです。サイトからダウンロードすることができます。ダウンロードした実行ファイルを起動してインストールを開始します。 ライセンス契約書に同意します。 インストール先を選んでインストールを行います。 完了ボタンを押してインストールを完了します。 vpnux Clientを起...