外出先から自宅LANにアクセスしてパソコンを遠隔操作をしたり、社外のモバイル環境から社内LANにアクセスしてファイルサーバーを閲覧したいということがあると思います。これを可能にする技術をVPN(Virtual Private Network)といいます。
VPNを導入するとインターネット上であってもデータを安全にやり取りしたり、社外から社内のサーバーにアクセスできるようにすることもできます。OpenVPNというソフトウェアを使ってVPNサーバーを導入する方法を紹介します。自宅のLAN内にOpenVPNサーバーを構築すれば、外出先から自宅のパソコンの共有フォルダにアクセスしたり、WebカメラやDVDレコーダーといったネットワーク機能を搭載した機器を利用することも可能です。
AndroidからOpenVPNへの接続
初めにAndroidのESファイルエクスプローラーのようなファイラを使ってOpenVPNの設定ファイルをアンドロイド端末に移動します。Android端末のSDカードにopenvpnディレクトリを作成し以下のファイルをコピーします。 clie...
クライアント用設定ファイルの作成
OpenVPNクライアントからの接続に必要な.ovpnファイルを作成します。このファイルは主にアンドロイドからの接続に利用します。 サンプルファイルがインストールされているので、それをコピーして使います。 cp /usr/share/doc...
OpenVPNでSambaに接続するための設定
sambaの設定ファイルsmb.confファイルを編集して、VPN経由でのアクセスを許可するようにネットワークアドレスを変更します。 vi /etc/samba/smb.conf
OpenVPNのWindowsクライアント
起動したOpenVPNサーバーに接続します。今回使用するOpenVPNのWindowsクライアントはvpnux Clientです。サイトからダウンロードすることができます。ダウンロードした実行ファイルを起動してインストールを開始します。 ラ...
OpenVPNの起動
OpenVPNを起動する前に、ルーターのファイアーウォールのUDPポート1194を解放し、静的NATルールを追加します。次にシステム起動時にサービスが開始されるように設定します。 systemctl -f enable openvpn@se...
OpenVPNサーバーの設定
設定ファイルを使ってOpenVPNサーバーの設定を行います。OpenVPNサーバーの設定ファイルは提供されているサンプルファイルを編集して行います。 cp /usr/share/doc/openvpn-2.3.7/sample/sample...
OpenVPNのセキュリティの強化
OpenVPNのセキュリティを強化すると次のような攻撃や問題に対処できます。 OpenVPN UDPポートに対するDoSアタックなどの攻撃 リッスン中のサーバーのUTPポートを特定するためのポートスキャン SSL/TLS実装上のバッファオー...
Diffie Hellmanパラメータの生成
以下のコマンドを使ってDiffie Hellmanパラメータを生成します。 ./build-dh >Generating DH parameters, 1024 bit long safe prime, generator 2 This i...
クライアント用の証明書と鍵の生成
クライアント用の証明書と秘密鍵を生成します。クライアントの鍵をパスワードで保護するためにbuild-key-passコマンドを実行します。パスフレーズの入力を2回求めらるので入力します。それ以外の応答はすべてエンターキーを押します。 ./b...
サーバー用の証明書と鍵の生成
サーバー用の証明書と秘密鍵を生成します。 応答はすべてエンターキーを押します。 最後にSign the certificate?(証明書に署名しますか?) と1 out of 1 certificate requests certified...