この記事の目次
chevron_right
準備
chevron_right
Open VPNをインストール
chevron_right
VPNを設定
chevron_right
認証局の設定
chevron_right
varsファイルの以下の部分を修正
chevron_right
認証局を作成し、証明書を作成していく
chevron_right
VPNにつなぎに行くクライアントを作成
chevron_right
失効証明書の作成
chevron_right
HMAC署名の鍵作成
chevron_right
証明書をおいていく
chevron_right
Google authenticator をいれる
chevron_right
CCD
chevron_right
クライントの設定
準備
Open VPNをインストール
$ sudo yum install -y openvpn # epelリポジトリを有効にしておかないとできないかも
VPNを設定
cd /etc/openvpn/server
mkdir user
vim user.conf
設定を書く。
認証局の設定
git clone https://github.com/OpenVPN/easy-rsa.git
cd /home/user/easy-rsa/easyrsa3
cp vars.example vars
vim vars
varsファイルの以下の部分を修正
95 set_var EASYRSA_REQ_COUNTRY "JP"
96 set_var EASYRSA_REQ_PROVINCE "自分の街"
97 set_var EASYRSA_REQ_CITY "自分の市"
98 set_var EASYRSA_REQ_ORG "自分の会社"
99 set_var EASYRSA_REQ_EMAIL "自分のメアド"
100 set_var EASYRSA_REQ_OU "自分の所属"
~~~
116 set_var EASYRSA_ALGO 「rsa」か「ec」を書く
~~~
120 set_var EASYRSA_CURVE secp384r1
124 set_var EASYRSA_CA_EXPIRE 3650
128 set_var EASYRSA_CERT_EXPIRE 1080
~~~~~
212 set_var EASYRSA_DIGEST "sha256"
認証局を作成し、証明書を作成していく
$ ./easyrsa init-pki # 初回だけ実行
$ ./easyrsa build-ca # 認証局を作成
# パスワードを設定(これを破られると死ぬ)
# 認証局のサーバ名を指定(わかり易い名前)
# 以下コマンドで、作られた鍵情報が表示される
$ ./easyrsa show-ca full
# または
$ openssl x509 -text -in pki/ca.crt
$ ./easyrsa build-server-full サーバ名 nopass
$ $ ./easyrsa show-cert サーバ名
VPNにつなぎに行くクライアントを作成
$ ./easyrsa build-client-full
失効証明書の作成
ユーザに対する、接続の無効化を設定するためのもの。
(退職などでユーザの接続権を剥奪するときなどに使う)
$ ./easyrsa gen-crl
HMAC署名の鍵作成
メッセージ(パケット)の改ざんがされていないかをチェックする鍵
$ openvpn --genkey --secret ta.key
証明書をおいていく
$ mkdir /etc/openvpn/server/user/ssl
$ install -d -o root -g root -m 755 /etc/openvpn/server/user/ssl/certs
$ install -d -o root -g root -m 710 /etc/openvpn/server/user/ssl/private
$ install -o root -g root -m 644 pki/issued/nnahito.crt /etc/openvpn/server/user/ssl/certs/
$ install -o root -g root -m 644 pki/ca.crt /etc/openvpn/server/user/ssl/certs/
$ install -o root -g root -m 640 pki/private/nnahito.key /etc/openvpn/server/user/ssl/private/
$ install -o root -g root -m 640 ta.key /etc/openvpn/server/user/ssl/private/
$ install -o root -g root -m 644 pki/crl.pem /etc/openvpn/server/user/ssl/certs/
$ install -d -o root -g root -m 755 ccd
Google authenticator をいれる
sudo yum install -y google-authenticator
cd /etc/pam.d/
vim openvpn-nnahito
install -d -o root -g root -m 755 google-authenticator
cd /etc/openvpn/server/nnahito/google-authenticator/
CCD
cd /etc/openvpn/server/nnahito/ccd
vim nnahito
クライントの設定
この記事を書いた人
Nな人(えぬなひと)。
Nは本名から取っています。
Laravelが大好きなPHPerで、WEBを作るときはLaravelを技術スタックに絶対推すマン。
PHP、Pythonと、昔はperlを書いていたP言語エンジニア。
最近はNimを書いたりしています。
Nは本名から取っています。
Laravelが大好きなPHPerで、WEBを作るときはLaravelを技術スタックに絶対推すマン。
PHP、Pythonと、昔はperlを書いていたP言語エンジニア。
最近はNimを書いたりしています。