« LS-GL(debian Lenny) でpptpサーバー構築、その2 | トップページ | EM51 android 2.1 のカスタムファーム »

2011年11月13日 (日)

LS-GL(debian Lenny)でOpenVPNサーバーを構築する

■参考にしたURL
http://kilin.clas.kitasato-u.ac.jp/howto/openvpn.html

■openvpnのインストール、/etc/init.d/openvpnが作られる。
# aptitude install openvpn

■鍵の生成
# cp -r /usr/share/doc/openvpn/examples/easy-rsa/2.0/ /etc/openvpn/easy-rsa
# cd /etc/openvpn/easy-rsa/
# chmod +x *

■証明書/鍵作成用環境変数設定ファイル編集(自分の環境用に書き換える)
# vi vars

export KEY_COUNTRY="JP"
export KEY_PROVINCE="LS-GL"
export KEY_CITY="tokyo"
export KEY_ORG="LS-GL tokyo"
export KEY_EMAIL="xxxxx@nifty.com"

■環境変数設定,証明書/鍵作成先ディレクトリ初期化
# source vars
# ./clean-all

■CA証明書・秘密鍵作成し,/etc/openvpnにコピー
# ./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]:
State or Province Name (full name) [LS-GL]:
Locality Name (eg, city) [tokyo]:
Organization Name (eg, company) [LS-GL tokyo]:
Organizational Unit Name (eg, section) []:
Common Name (eg, your name or your server's hostname) [LS-GL tokyo CA]:
Email Address [xxxxxx@nifty.com]:

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

■サーバー証明書・秘密鍵とDH(Diffie Hellman)パラメータ作成 。/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]:
State or Province Name (full name) [LS-GL]:
Locality Name (eg, city) [tokyo]:
Organization Name (eg, company) [LS-GL tokyo]:
Organizational Unit Name (eg, section) []:
Common Name (eg, your name or your server's hostname) [server]:
Email Address [xxxxxxx@nifty.com]:

Please enter the following 'extra' attributes
to be sent with your certificate request
A challenge password []:
An optional company name []:
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:'LS-GL'
localityName          :PRINTABLE:'tokyo'
organizationName      :PRINTABLE:'LS-GL tokyo'
commonName            :PRINTABLE:'server'
emailAddress          :IA5STRING:'xxxxxx@nifty.com'
Certificate is to be certified until Nov  9 13:07:05 2021 GMT (3650 days)
Sign the certificate? [y/n]:y

1 out of 1 certificate requests certified, commit? [y/n]y
Write out database with 1 new entries
Data Base Updated
LS-GL:/etc/openvpn/easy-rsa#

# ./build-dh
Generating DH parameters, 1024 bit long safe prime, generator 2
This is going to take a long time
.............+.....

# cp keys/server.crt /etc/openvpn/
# cp keys/server.key /etc/openvpn/
# cp keys/dh1024.pem /etc/openvpn/

■クライアント証明書・秘密鍵作成。
サーバーの場合と同じように、以下のコマンドで作成する。クライアントの台数分つくる。ここでは2個作成。入力を促されたら、サーバーの場合と同じように全てデフォルトのままEnterし、[y/n]にはyで答える。

# ./build-key client1
# ./build-key client2

■confファイルを/etc/openvpn/に用意する。
# cp /usr/share/doc/openvpn/examples/sample-config-files/server.conf.gz /etc/openvpn/
# cd /etc/openvpn
# gunzip server.conf.gz

■起動の仕方。(ちなみにインストールすると自動起動になっている)
# /etc/rc.d/init.d/openvpn start
# /etc/rc.d/init.d/openvpn stop
# /etc/rc.d/init.d/openvpn restart

■Windows openvpnクライアントのインストール。
http://www.openvpn.jp/ からopenvpn gui for windowsをダウンロード。

全てデフォルトでインストール。

[スタート]-[全てのプログラム]-[openVPN]-[OpenVPN Sample Configuration Files]で
sample-configフォルダを開き、configフォルダにサーバーで作ったCA証明書、クライアント証明書、鍵をコピーする。
(例 client1.crt -> client.crtへファイル名変更、client1.key->client.keyへファイル名変更)
ca ca.crt
cert client.crt
key client.key

[スタート]-[全てのプログラム]-[openVPN]-[OpenVPN configuration file directory]でconfigフォルダを開く。
sample-configフォルダから、client.ovpnファイルをconfigフォルダにコピー。

コピー後、client.ovpn内の鍵ファイルの名前と,サーバー名を修正する。
;remote my-server-1 1194
先頭の";"を削除してmy-server-1をサーバー名かサーバーのIPアドレスに書き換える。

■Windowsファイアウオールの設定。
[コントロールパネル]の[Windowsファイアウォール]の[詳細設定]で
openvpnのインストールに伴ってできたローカルエリア接続のファイアウォールからはずす
(チェックをはずす).

■VPN接続
[スタート]-[全てのプログラム]-[openVPN]-[OpenVPN GUI]でopenvpnを開始し
タスクバーの通知領域のアイコンを右クリックして,[client]に[接続]する

■LS-GLのsambaを使う
サーバーの設定ファイルで,アドレス体系10.8.0.0/255.255.255.0がopenvpnに割り当てようになっているので、サーバーのアドレスは10.8.0.1になっている。
このアドレスでアクセスできる。
なお、IPアドレス体系を修正するには、/etc/openvpn/server.confを修正する。

■ADSLルータの設定
ルータ側は、NATでUDPポート番号 1194 を対象のサーバーへ向ける必要がある。

使用しているADSLルータ Aterm  WD701CV では、
  詳細設定 - ポートマッピング設定で
  変換対象プロコトル=UDP
  変換対象ポート = 1194
  宛先アドレス = 192.168.1.XX  (LS-GLのIPアドレス)
でポートアドレスをopenvpnサーバーであるLS-GLの設定を行う。

|

« LS-GL(debian Lenny) でpptpサーバー構築、その2 | トップページ | EM51 android 2.1 のカスタムファーム »

コメント

コメントを書く



(ウェブ上には掲載しません)


コメントは記事投稿者が公開するまで表示されません。



トラックバック


この記事へのトラックバック一覧です: LS-GL(debian Lenny)でOpenVPNサーバーを構築する:

« LS-GL(debian Lenny) でpptpサーバー構築、その2 | トップページ | EM51 android 2.1 のカスタムファーム »