OpenVPN/チェックリストガイド
この記事では、OpenVPN に必要なインストール手順をまとめています。チュートリアルについては、OpenVPN を参照してください。
インストール
openvpn と easy-rsa パッケージをインストールします。
データの準備
/etc/easy-rsa
を/etc/openvpn/easy-rsa
にコピーし、そこに移動します(cd)- ご希望の情報を入力して
vars
ファイルを編集します。詳細は easy-rsa スクリプトを使用して公開キー基盤を作成する を参照してください。 - 以前のキーをクリーンアップします:
# easyrsa clean-all
証明書の生成
- CA 作成のためのシードを作成します
# dd if=/dev/urandom of=pki/.rnd bs=256 count=1
- 「証明機関 (certificate authority)」のキーを作成します
# easyrsa build-ca nopass
- サーバー用の証明書と秘密キーを作成します
# easyrsa build-server-full <server-name> nopass
- サーバー用の Diffie-Hellman pem ファイルを作成します。
# easyrsa gen-dh
- 各クライアント用の証明書を作成します。
# easyrsa build-client-full <client-name> nopass
すべての証明書は pki
ディレクトリに格納されます。間違えた場合は、easyrsa clean-all
を実行して最初からやり直すことができます。
各クライアントには ca.crt
とそのクライアント固有の crt と key ファイルをコピーします。
サーバーの設定
以下の内容で /etc/openvpn/server/myvpnserver.conf
を作成します:
/etc/openvpn/server/myvpnserver.conf
port <port> proto tcp dev tun0 ca /etc/openvpn/easy-rsa/pki/ca.crt cert /etc/openvpn/easy-rsa/pki/issued/<server-name>.crt key /etc/openvpn/easy-rsa/pki/private/<server-name>.key dh /etc/openvpn/easy-rsa/pki/<your pem file> server <desired base ip> 255.255.255.0 ifconfig-pool-persist ipp.txt keepalive 10 120 comp-lzo user nobody group nobody persist-key persist-tun status /var/log/openvpn-status.log verb 3 log-append /var/log/openvpn status /tmp/vpn.status 10
- サービスを開始します。起動時に開始する場合は、デーモンを有効化します。この例では、
openvpn-server@myvpnserver.service
となります。
詳しくはデーモンをお読みください。
クライアントの設定
各クライアント用に以下のような .conf ファイルを作成します:
/etc/openvpn/client/a-client-conf-file.conf
client remote <server> <port> dev tun0 proto tcp resolv-retry infinite nobind persist-key persist-tun verb 2 ca ca.crt cert <client crt file with full path> key <client key file with full path> comp-lzo
# openvpn a-client-conf-file.conf &
で接続を開始する。
オプションで、起動時のデーモン自動起動を有効にします。(この例では、openvpn-client@a-client-conf-file.service
)。
詳しくはデーモンをお読みください。