GCPでOpenVPNを利用する 証明書作成編

GCPでOpenVPNを利用する CentOSの用意編

CentOSを用意したので次はOpenVPNのインストール、といきたいところですが、その前に証明書の類を生成しておきたいと思います。

Advertisement

Windows Subsystem for Linuxの利用

Windows10ではWindows中でLinuxを利用することができるすごい機能があります。

これから証明書の類を生成していくのですが、CentOS 8ではまだ未対応なのかeasy-rsaというツールが使えないうえ、今後証明書生成をしていくことがあるような気がするのでローカルの環境で生成したいと思います。

すでに仮想環境やらなんやらでLinuxの環境がある方は良いのですが、私は無いので(とはいっても簡単に作れますが)Windows Subsystem for Linuxを利用します。

Windows Subsystem for Linuxの有効化

コントロールパネル→プログラムと機能→Windowsの機能の有効化または無効化からWindows Subsystem for Linuxを探して有効にしてください。自動でファイルのダウンロードやらインストールやらをやってくれます。

完了したら再起動してください。再起動しないと利用できません。

Microsoft StoreからUbuntuのインストール

Microsoft Storeなんて今までの人生で一回も利用したことがありませんでしたが、WSLを利用する場合はMicrosoft StoreからUbuntuをインストールしなくてはなりません。

検索からWSLと検索し、Ubuntuをインストールします。

他のディストリビューションでも良いような気がしますが、ここは素直にUbuntuにしておきます。

Ubuntuの起動

起動すると初回インストールがあるので待ちましょう。

インストールが完了するとUbuntuで利用するユーザー名とパスワードを作成します。

何でも良いので忘れない適当なものを作りましょう。ただしユーザー名の頭に大文字を使えないなど制約があります。

また、パスワード入力時は*もなにも出てきません。

インストール可能なパッケージの一覧更新

コマンドプロンプトやらなんやらを起動して”ubuntu”と入力することでWSLを利用することが出来ます。

sudo su

パスワードを入力して管理者権限にして、

apt-get update

これを実行してください。

インストール可能なパッケージの一覧が更新されます。

easy-rsaのインストール

apt-get install easy-rsa

OKならばYを入力してインストールしましょう。

ディレクトリの移動

cd /usr/share/easy-rsa

とコマンド入力し、easy-rsaのあるディレクトリに移動します。

varsの編集

編集しないとエラーが出るので編集しておきます。

vim vars

で開き、

export KEY_CONFIG=`$EASY_RSA/whichopensslcnf $EASY_RSA`

をコメントアウト、

export KEY_CONFIG=/usr/share/easy-rsa/openssl-1.0.0.cnf

を追加します。

認証局の作成

. ./vars

環境変数の設定、

./clean-all

なんか、

./build-ca

で認証局を作ります。秘密鍵とか公開鍵とか色々作成されます。

色々なことを聞かれますが、適当でも大丈夫です。

サーバー証明書の作成

./build-key-server server

秘密鍵と公開鍵が作られます。同じく適当でも大丈夫です。

challenge passwordは何も入力しないでください。

Sign the certificate? と聞かれるのでyで署名します。

またなんか聞かれるのでyでOKです。多分。

DH鍵の生成

鍵交換のなんかすごいやつらしいです。

./build-dh

これで作成します。

クライアント証明書の作成

./build-key client

で作ります。同じく適当でも大丈夫です。

challenge passwordは何も入力しないでください。

Sign the certificate? と聞かれるのでyで署名します。

またなんか聞かれるのでyでOKです。多分。

生成した証明書の取り出し

Explorerから”\\wsl$”にアクセスすると簡単にファイルにアクセスすることが出来ます。

\\wsl$\Ubuntu\usr\share\easy-rsa\keys

に色々作ったものがあります。

ca.crtとca.key、client.crt、client.key、dh2048.pem、server.crt、server.keyをどこかわかりやすいところに移動しておきましょう。

OpenVPNのインストールと設定

次回ついにインストールと設定です。

なお、最後のあたりでうまいこといっていないので無期限公開延期になるかもしれません。

Advertisement

証明書を生成しました。

なお、なぜかファイルやフォルダーがWindows側からアクセスできないことがあります。
その場合はUbuntu側でパーミッションを全開放してください。いや別に全開放じゃなくて最低限で良いのですが・・・