Index ソフト・ハード | OpenVPN タスク |
OpenVPN サーバの構築 サーバの起動 GWのNAT設定 リモートアクセス |
OpenVPNサーバの構築 ・PKIの構築 CA(認証局)の証明書の生成 CA秘密鍵の生成 OpenVPNサーバとクライアントの証明書の生成 OpenVPNサーバとクライアントの秘密鍵の生成 CAの証明書と秘密鍵を生成(OpenVPN添付のスクリプトを使用) スクリプト openvpn-2.x.x/easy-rsa/ (PKG) easy-rsa ディレクトリ (ソース展開トップdir) 「easy-rsa」ディレクトリを「/etc/openvpn」へコピー easy-rsa/vars ファイル(証明書と秘密鍵生成時の使用項目)を編集 export KEY_CONTRY=JP export KEY_PROVINCE=TOKYO export KEY_CITY=<市町村名> export KEY_ORG=<団体名> export KEY_EMAIL=<メール> 証明書と秘密鍵生成 # ../vars # ./clean-all # ./build-ca 生成確認 easy-rsa/keys/ca.crt easy-rsa/keys/ca.key サーバの設定ファイルで指定されたディレクトリへ格納 OpenVPNサーバの証明書と秘密鍵を生成(OpenVPN添付のスクリプトを使用) # ./build-key-server build-key-server スクリプトを実行、パラメータ有り Common Name は、「server」 Sign the certificate? は、「y」 1 out of 1 certificate requests certified. commit? は、「y」 生成確認 easy-rsa/keys/server.crt easy-rsa/keys/server.key サーバの設定ファイルで指定されたディレクトリへ格納 Diffie-Hellmanパラメータの生成 # ./build-dh easy-rsa/vars ファイルのDiffie-Hellmanパラメータの強度はデフォルト(1024ビット) easy-rsa/keys/dh1024.pem easy-rsa/keys/server.csr は、CAへの申請書、CA署名の証明書が出来ると削除可・openvpn/server.confの設定 ファイル作成 server項目の設定
何らかの用途で事前に設定されている場合は不要 デフォルトで有効にする場合 rc.localへの組込みや、sysctl.conf の設定など・OpenVPNサーバがGW上で動作している場合は、FWを通過させる ・# iptables -A FORWARD -I tun+ -j ACCEPT tunデバイス(OpenVPNサーバ)からのパケットをFWを通過させるOpenVPNサーバの起動 ・OpenVPNサーバの手動起動 ・# cd /etc/openvpn/ ・# openvpn /etc/openvpn server.conf : TAN/TAP device tun0 opend : initialozation Sequence Complated・OpenVPNサーバの自動起動 RPM PKG の場合、initscript が設定GW(ルータ)のNATの設定 ・# iptables -t nat -A PREROUTING -p udp -d <G-IP> --dport 1194 -j DNAT --to-destination <L-IP>:1194 待ち受け口 UDP 1194番 クライアント側でも使用リモートアクセスVPN ・OpenVPNクライアントをOpenVPNサーバへ接続 社員に対する証明書と秘密鍵を生成(OpenVPN添付のスクリプトを使用) 証明書と秘密鍵を生成スクリプト
社員に対する証明書と秘密鍵を生成 Windows用のスクリプトが無い場合 OpenVPNサーバで、build-req-pass スクリプト実行 (サーバがWindowsの場合、build-req スクリプト実行) # ../vars # ./build-req-pass employees パスフレーズ入力 Common Name は、「employees」 署名済み証明書と秘密鍵を生成 OpenVPNサーバの管理者は、安全な経路でユーザへ送付 ユーザは、C:\Program Files\OpenVPN\config\ へ格納 Windows以外のクライアントの場合 クライアントで、build-req-pass スクリプト実行 # ../vars # ./build-req-pass employees 署名リクエスト(employees.csr)と秘密鍵作成 署名リクエストから署名済み証明書の作成を、OpenVPNサーバの管理者へ依頼 メールなどで送付 OpenVPNサーバの管理者 署名リクエストを、easy-rsa/keys/ ディレクトリへ格納 # cd /etc/openvpn/easy-rsa/ # ../vars # ./build-req-pass employees OpenVPNサーバの管理者は、安全な経路でユーザへ送付 ユーザは、easy-rsa/keys/ ディレクトリへ格納 OpenVPNクライアントの設定 「/etc/openvpn/client.conf」
Windows C:\Program Files\OpenVPN\config\client.ovpn ディレクトリの区切り文字「\\」 ファイル名は、ダブルクォテーションで、くくる OpenVPNサーバの設定 アクセス制御を行わない場合、そのまま使用 OpenVPNクライアントの起動 Windows GUIアイコン右クリック、Connect 停止、Desconnect Linux 手動 # cd /etc/openvpn/ # openvpn /etc/openvpn/ client.conf・OpenVPNクライアント別にアクセス制御 クライアント証明書の Common Name を判断、証明書別に固有の設定可 |
All Rights Reserved. Copyright (C) ITCL |