SolarisでOpenVPN
SoftwareDesignの6月号に乗っていたOpenVPNを研究すべく自社のSolarisにOpenVPNをインストールしてみました。例によって、configure,makeではすなまいところがかわいいというか憎らしいというか。
必要なソフトウェア
以下のものを入れる必要があります。
- OpenSSL
- lzo
- pam
Solaris9の場合、OpenSSLとlzoはデフォルトでは入っていないので自分でいれてあげる必要があります。pamはもう入っているはず。OpenSSLは過去に入れてあるので、今回は書きません。
lzoインストール
lzoはここからダウンロードできます。これは単純に展開して、configure,make。
$ /usr/local/bin/tar -zxvf lzo-2.02.tar.gz $ cd lzo-2.02 $ ./configure $ /usr/local/bin/make # /usr/local/bin/make install
OpenVPNインストール
OpenVPNはここからダウンロードできます。
Linuxだと、展開してconfigure,makeですむようですが、Solarisでは一工夫が必要なようです。そのまま展開して./configure,makeするとこんなエラーがでます。
$ make tun.c:1183:2: error: #error I need the symbol TUNNEWPPA from net/if_tun.h tun.c: In function 'open_tun': tun.c:1245: error: 'TUNNEWPPA' undeclared (first use in this function) tun.c:1245: error: (Each undeclared identifier is reported only once tun.c:1245: error: for each function it appears in.) make[1]: *** [tun.o] Error 1 make[1]: Leaving directory `/export/home/hoge/openvpn/openvpn-2.0.9' make: *** [all] Error 2
tun/tapのドライバをインストールする必要があります。ここに紹介されています。ありがたいことです。中ごろ、"Solaris 用 TAP(および TUN) ドライバソースファイル"のtuntap.tar.gzを展開して、configure,make,make install。続いて"Solaris 用 TAP デバイス対応のための OpenVPN の差分ファイル "のところのtun.cをダウンロードして、OpenVPNの開発ディレクトリの同じ名前のファイルと置換えます。詳しくはリンク先のページを参照。
tun.cをコピーしたら、configure,makeを実行。
$ ./configure --with-ssl-headers=/usr/local/ssl/include $ /usr/local/bin/make # /usr/local/bin/make install
これでインストールは終了。この後鍵を作ったり、設定ファイルを作ったりする作業が続きます。そのあたりはまた後日。