OpenVPNサーバ構築2

 

3)OpenVPN設定

□ OpenVPN設定
  ルーティングモードでの設定
  使用仮想インターフェースは【tun0】 

□ サーバー側OpenVPN設定
  ・TLS認証鍵の作成

# openvpn –genkey –secret /etc/openvpn/ta.key

  ・OpenVPN設定ファイルをサンプルより取得

# cp /usr/share/doc/openvpn-2.0.9/sample-config-files/server.conf /etc/openvpn/

  ・OpenVPN設定ファイルの編集
   以下を確認・追加する

protp tcp

dev tun VPNインタフェースとしてTUNを指定(デフォルト)
server 10.8.0.0 255.255.255.0 VPNクライアント割当てアドレス範囲として10.8.0.0/24を指定(デフォルト)
push “route 192.168.207.0 255.255.255.0” 追加(LAN(例:192.168.1.0/24)へのルートをVPNサーバー経由にする)
tls-auth ta.key 0 # This file is secret 行頭の;を削除してコメント解除(TLS認証有効化)
user nobody 行頭の;を削除してコメント解除(OpenVPN実行権限を下げる)
group nobody 行頭の;を削除してコメント解除(OpenVPN実行権限を下げる)
log-append /var/log/openvpn.log 行頭の;を削除してコメント解除(ログを/var/log/openvpn.logに記録する)
management localhost 7505 最終行へ追加(管理インタフェースの有効化)
crl-verify crl.pem 最終行へ追加(証明書廃止リストの有効化)

□ ファイアウォール設定
  ・iptables編集

# vi /etc/sysconfig/iptables

  以下を追記

-A RH-Firewall-1-INPUT -p udp -m state –state NEW -m udp –dport 1194 -j ACCEPT

  ・設定反映

# service iptables restart

□OpenVPN起動

# /etc/rc.d/init.d/openvpn start

  ・自動起動設定 

# chkconfig openvpn on

 

 

 

 

2)CA認証局の構築

・TLS認証実現のためOpenVPNパッケージ同梱のツールを利用して
 証明書と秘密鍵を作成する。

□ CA証明書・秘密鍵の作成
  ・証明書/鍵作成用ディレクトリをコピー 

# cp -r /usr/share/doc/openvpn-2.0.9/easy-rsa/2.0/ /etc/openvpn/easy-rsa

  ・証明書/鍵作成用ディレクトリへ移動

# cd /etc/openvpn/easy-rsa/

  ・各スクリプト実行権限付与

# chmod +x *

  ・証明書/鍵作成用環境変数設定ファイル編集

# vi vars

    以下を参照に編集

export KEY_COUNTRY=”JP”
export KEY_PROVINCE=”Yamanashi”
export KEY_CITY=”Kofu”
export KEY_ORG=”filesv01.itdo.jp”
export KEY_EMAIL=”miyamoto@itdo.jp”

   ・証明書/鍵作成用環境変数設定ファイル内容をシステムに反映

# source vars

  ・証明書/鍵作成先ディレクトリを初期化 

# ./clean-all

  ・CA証明書・秘密鍵の作成 

# ./build-ca
Generating a 1024 bit RSA private key
………….++++++
……..++++++
writing new private key to ‘ca.key’
—–
You are about to be asked to enter information that will be incorporated
into your certificate request.
What you are about to enter is what is called a Distinguished Name or a DN.
There are quite a few fields but you can leave some blank
For some fields there will be a default value,
If you enter ‘.’, the field will be left blank.
—–
Country Name (2 letter code) [JP]:
空Enter
State or Province Name (full name) [Yamanashi]:
空Enter
Locality Name (eg, city) [Kofu]:
空Enter
Organization Name (eg, company) [filesv01.itdo.jp]: 空Enter
Organizational Unit Name (eg, section) []: 空Enter
Common Name (eg, your name or your server’s hostname) [filesv01.itdo.jp CA]: 空Enter
Email Address [miyamoto@itdo.jp]:
空Enter

  ・CA証明書をOpenVPN設定ファイル格納ディレクトリにコピー 

# cp keys/ca.crt /etc/openvpn/

 □ サーバー証明書・秘密鍵の作成

# ./build-key-server server
Generating a 1024 bit RSA private key
……………………………..++++++
……………++++++
writing new private key to ‘server.key’
—–
You are about to be asked to enter information that will be incorporated
into your certificate request.
What you are about to enter is what is called a Distinguished Name or a DN.
There are quite a few fields but you can leave some blank
For some fields there will be a default value,
If you enter ‘.’, the field will be left blank.
—–
Country Name (2 letter code) [JP]:
空Enter
State or Province Name (full name) [Yamanashi]:
空Enter
Locality Name (eg, city) [Kofu]:
空Enter
Organization Name (eg, company) [filesv01.itdo.jp]: 空Enter
Organizational Unit Name (eg, section) []: 空Enter
Common Name (eg, your name or your server’s hostname) [server]: 空Enter
Email Address [miyamoto@itdo.jp]:
空Enter
 
Please enter the following ‘extra’ attributes   
to be sent with your certificate request  
A challenge password []: 空Enter
An optional company name []: 空Enter
Using configuration from /etc/openvpn/easy-rsa/openssl.cnf
Check that the request matches the signature
Signature ok
The Subject’s Distinguished Name is as follows
countryName      :PRINTABLE:’JP’
stateOrProvinceName     :PRINTABLE:’Yamanashi’
localityName     :PRINTABLE:’Kofu’
organizationName     :PRINTABLE:’centossv01′
commonName     :PRINTABLE:’server’
emailAddress      :IA5STRING:’goverdoing@gmail.com’
Certificate is to be certified until Sep 14 19:41:16 2017 GMT (3650 days)
Sign the certificate? [y/n]:y y応答
1 out of 1 certificate requests certified, commit? [y/n]y y応答
Write out database with 1 new entries  
Data Base Updated

  ・サーバ証明書をOpenVPN設定ファイル格納ディレクトリにコピー

# cp keys/ca.crt /etc/openvpn/

  ・サーバ秘密鍵をOpenVPN設定ファイル格納ディレクトリにコピー

# cp keys/server.key /etc/openvpn/

□ DH(Diffie Hellman)パラメータ作成
  ・DHパラメータ作成 

# ./build-dh

  ・DHパラメータをOpenVPN設定ディレクトリにコピー

# cp keys/dh1024.pem /etc/openvpn/

 

 

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です