Oracle Rac On Amazon EC2 その1 OpenVPN編
AMIは@suz_labさんのami-809f3581を選択。
Instance-typeは最初はmicroで
あとでVolumeを追加するので、Availability Zoneをあらかじめ決めておく。
セキュリティグループの作成
OpenVPN(1194/1195) iSCSI(3260) VNC(5901)のポートは予めあけておきます。
openvpnのインストール
#yum -y install openvpn
@dynakou さんのページを参考にopenvpnのキーを作成
http://blog.livedoor.jp/dynakou/archives/2009-05.html
#cp -rp /usr/share/doc/openvpn-2.1.4/easy-rsa /etc/openvpn
#chmod 755 /etc/openvpn/easy-rsa/2.0/*
#vi /etc/openvpn/easy-rsa/2.0/vars
export KEY_COUNTRY="JA"
export KEY_PROVINCE="CA"
export KEY_CITY="Tokyo"
export KEY_ORG="xxxxx.xxx"
export KEY_EMAIL="xxx.@xxx.xxx"
openvpnの鍵&証明書作成の事前作業(環境変数)
#cd /etc/openvpn/easy-rsa/2.0
#source /etc/openvpn/easy-rsa/2.0/vars
#/etc/openvpn/easy-rsa/2.0/clean-all
認証局の証明書&鍵作成
#/etc/openvpn/easy-rsa/2.0/build-ca
エンターキーを連打
サーバ証明書
#/etc/openvpn/easy-rsa/2.0/build-key-server server
基本はエンターキー連打
最後の以下だけyを押す
Sign the certificate? [y/n]:y
1 out of 1 certificate requests certified, commit? [y/n]y
Diffie-Hellman keyの作成
#/etc/openvpn/easy-rsa/2.0/build-dh
クライアントキーの作成
#/etc/openvpn/easy-rsa/2.0/build-key public1
#/etc/openvpn/easy-rsa/2.0/build-key public2
#/etc/openvpn/easy-rsa/2.0/build-key private1
#/etc/openvpn/easy-rsa/2.0/build-key private2
基本はエンターキー連打
最後の以下だけyを押す
Certificate is to be certified until May 12 20:57:09 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
設定ファイル(public)
#cp -p /usr/share/doc/openvpn-2.1.4/sample-config-files/server.conf /etc/openvpn/public.conf
#vi /etc/openvpn/public.conf
dev tap0
ca /etc/openvpn/easy-rsa/2.0/keys/ca.crt
cert /etc/openvpn/easy-rsa/2.0/keys/server.crt
key /etc/openvpn/easy-rsa/2.0/keys/server.key # This file should be kept secretdh /etc/openvpn/easy-rsa/2.0/keys/dh1024.pem
server 192.168.0.0 255.255.255.0
client-to-client
設定ファイル(private)
#cp /etc/openvpn/public.conf /etc/openvpn/private.conf
#vi /etc/openvpn/private.conf
port 1195
dev tap1
ca /etc/openvpn/easy-rsa/2.0/keys/ca.crt
cert /etc/openvpn/easy-rsa/2.0/keys/server.crt
key /etc/openvpn/easy-rsa/2.0/keys/server.key # This file should be kept secretdh /etc/openvpn/easy-rsa/2.0/keys/dh1024.pem
server 192.168.100.0 255.255.255.0
ifconfig-pool-persist ipp_private.txt
client-to-client
status private_openvpn-status.log
クライアントIPを固定する
#vi /etc/openvpn/ipp.txt
public1,192.168.0.11
public2,192.168.0.12
#vi /etc/openvpn/ipp_private.txt
private1,192.168.100.11
private2,192.168.100.12
openvpnを起動してみる
/etc/init.d/openvpn start
tapインターフェイスが出来ているか確認
ifconfig -a
tap0 Link encap:Ethernet HWaddr FA:C8:73:B3:43:8C
inet addr:192.168.0.1 Bcast:192.168.0.255 Mask:255.255.255.0
inet6 addr: fe80::f8c8:73ff:feb3:438c/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:0 errors:0 dropped:0 overruns:0 frame:0
TX packets:3 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:100
RX bytes:0 (0.0 b) TX bytes:238 (238.0 b)tap1 Link encap:Ethernet HWaddr 92:8D:76:E2:52:C2
inet addr:192.168.100.1 Bcast:192.168.100.255 Mask:255.255.255.0
inet6 addr: fe80::908d:76ff:fee2:52c2/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:0 errors:0 dropped:0 overruns:0 frame:0
TX packets:4 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:100
RX bytes:0 (0.0 b) TX bytes:308 (308.0 b)
openvpn自動起動
#chkconfig openvpn on
Dynamic DNS設定
クライアントから名前解決させるためにDynamic DNSの設定
http://www.dyndns.com/
設定方法は、ここらへんを参考に。
http://y-kit.jp/saba/xp/dyndns.htm
DNSの更新はddclientを使う
yum -y install
vi /etc/ddclient.conf
末尾に以下を追加(mydomain.dyndns.infoは使いたいホスト名)
use=if, if=eth0 # via interfaces
protocol=dyndns2
server=members.dyndns.org
login=ログインID
password=パスワード
mydomain.dyndns.info
ddclient -daemon=0 -verbose で動作確認
ホストが起動されるたびに ddclientが実行されるように。
vi /etc/rc.local
ddclient -daemon=0
AMIはami-24de7425を選択
openvpnは標準パッケージに含まれていないのでepelレポジストリを追加
#rpm -ivh http://download.fedora.redhat.com/pub/epel/5/x86_64/epel-release-5-4.noarch.rpm
#yum -y install openvpn
#mkdir -p /etc/openvpn/easy-rsa/2.0/keys
rootのパスワード設定(SCPで必要)
#passwd
PasswordAuthentication yes
PermitRootLogin yes
設定ファイル編集(public側)
#cp /usr/share/doc/openvpn-2.1.4/sample-config-files/client.conf /etc/openvpn/public.conf
#vi /etc/openvpn/public.conf
dev tap0
remote mydomain.dyndns.info 1194
ca /etc/openvpn/easy-rsa/2.0/keys/ca.crt
cert /etc/openvpn/easy-rsa/2.0/keys/public1.crt
key /etc/openvpn/easy-rsa/2.0/keys/public1.key
設定ファイル編集(private側)
vi /etc/openvpn/private.conf
dev tap1
remote mydomain.dyndns.info 1195
ca /etc/openvpn/easy-rsa/2.0/keys/ca.crt
cert /etc/openvpn/easy-rsa/2.0/keys/privare1.crt
key /etc/openvpn/easy-rsa/2.0/keys/private1.key
Openvpnサーバ側からOpenvpnクライアント側(RACノード側)へファイルをコピー
scp /etc/openvpn/easy-rsa/2.0/keys/ca.crt root@<クライアント1のip>:/etc/openvpn/easy-rsa/2.0/keys/
scp /etc/openvpn/easy-rsa/2.0/keys/public1.crt root@<クライアント1のip>:/etc/openvpn/easy-rsa/2.0/keys/
scp /etc/openvpn/easy-rsa/2.0/keys/public1.key root@<クライアント1のip>:/etc/openvpn/easy-rsa/2.0/keys/
scp /etc/openvpn/easy-rsa/2.0/keys/private1.crt root@<クライアント1のip>:/etc/openvpn/easy-rsa/2.0/keys/
scp /etc/openvpn/easy-rsa/2.0/keys/private1.key root@<クライアント1のip>:/etc/openvpn/easy-rsa/2.0/keys/
scp /etc/openvpn/easy-rsa/2.0/keys/public2.crt root@<クライアント1のip>:/etc/openvpn/easy-rsa/2.0/keys/
scp /etc/openvpn/easy-rsa/2.0/keys/public2.key root@<クライアント1のip>:/etc/openvpn/easy-rsa/2.0/keys/
scp /etc/openvpn/easy-rsa/2.0/keys/private2.crt root@<クライアント1のip>:/etc/openvpn/easy-rsa/2.0/keys/
scp /etc/openvpn/easy-rsa/2.0/keys/private2.key root@<クライアント1のip>:/etc/openvpn/easy-rsa/2.0/keys/