OpenVPN

OpenVPNで接続したsambaサーバにファイル転送すると”パス名が長すぎます”と出てどうしてもうまくいかない。
ルーティングの問題かといろいろ調べたけどなんか違う。
ほかの実施例をいろいろみていたら一つ気がついた。
MTUのサイズを指定している人がいる!!これだ。
tun-mtu 1350
この設定をserver.confに入れたら転送速度は遅いけど(10Mだからね)ちゃんと送ることが出来るようになった。
good job!

出来てみれば簡単OpenVPN

Debian etchでOpenVPNを使ったVPN接続
openvpnパッケージを入れます。
たぶんそうするとlzoパッケージも入る物と思ういますが、lzo関連全部入れちゃいました。(汗
/usr/share/doc/openvpn/examples/easy-rsa/でルートになって証明書と鍵の作成をして、
/etc/openvpn/server.confを/usr/share/doc/openvpn/examples/sample-config-files/からserver.conf.gzをコピーして
gunzip server.conf.gzやって作り、適宜編集。
すごく悩んだtapの作成というか、設定は/etc/network/interfacesに設定を書くだけだった。(bridge-utilsパッケージが必要です)
ポイントはpre-upとpost-down!
Kung Noi に感謝!

auto br0
iface br0 inet static
address 192.168.0.1
netmask 255.255.255.0
network 192.168.0.0
broadcast 192.168.0.255
gateway 192.168.0.254
bridge_ports eth0 tap0
pre-up openvpn --mktun --dev tap0
post-down openvpn --rmtun --dev tap0

今回目指したのはブリッジタイプなので、tap0を使う設定をserver.confに書かなくてはならない。
こちらのポイントは
dev tap0と
server-bridge 192.168.0.1 255.255.255.0 192.168.0.50 192.168.0.100の2行。
serverのIPがサーバのIPと同じで、接続してきたクライアントには192.168.0.50~100が割り振られる設定。
後は安全面でTLSを使うこと。(たぶんこれが共通(秘密)鍵といってる物だな・・・
設定は至って簡単なので、クライアントのキーを作成するのだからこれもやるべき。
openvpn --genkey --secret ta.keyとするだけで秘密鍵が作れる(管理は厳重に!)
サーバには
tls-auth ta.key 0と設定、
クライアントには
tls-auth ta.key 1とするだけでok。
とても役に立つ(というかこれがなければ出来なかった)ありがたい資料
OpenVPN 2.0 HOWTO 日本語訳
Kung Noi
OpenVPNで構築するリモートアクセス環境
大阪演劇情報センター + 未知座小劇場
Windows側に使うクライアントは
OpenVPN 日本語情報サイト

build-ca失敗談

OpenVPNの認証用にCA作業をしているときの話。
# source ./vars
# ./clean-all
# ./build-ca
としたらエラーになって悩んだ。
error on line 88 of /usr/share/doc/openvpn/examples/easy-rsa/openssl.cnf
27714:error:0E065068:configuration file routines:STR_COPY:variable has no value:conf_def.c:629:line 88
###########################################
[ req ]
default_bits = $ENV::$KEY_SIZE  <=ここが88行目
default_keyfile = privkey.pem
distinguished_name = req_distinguished_name
attributes = req_attributes
x509_extensions = v3_ca # The extentions to add to the self signed cert
それで結局./varsをよく見たら、
export KEY_SIZ=2048
~~
Eがない!
消した?自分。

bridge-startの謎

OpenVPN関連情報によく出てくるbridge-startスクリプトだけど、Debian etchでbridge-utilsを入れても見あたらない。
findで探したってない。
どういうことかと思ったが、easy-rsaの並びにそれっぽいディレクトリがあるから中身をみたらやはりそうみたいだ。
hoge@localhost:/usr/share/doc/openvpn/examples/sample-config-files$ ls -l
合計 64
-rw-r--r-- 1 root root 131 2005-11-01 20:06 README
-rw-r--r-- 1 root root 3428 2006-10-10 19:17 client.conf
-rwxr-xr-x 1 root root 3564 2005-11-01 20:06 firewall.sh
-rwxr-xr-x 1 root root 62 2005-11-01 20:06 home.up
-rw-r--r-- 1 root root 634 2005-11-01 20:06 loopback-client
-rw-r--r-- 1 root root 660 2005-11-01 20:06 loopback-server
-rwxr-xr-x 1 root root 62 2005-11-01 20:06 office.up
-rwxr-xr-x 1 root root 63 2005-11-01 20:06 openvpn-shutdown.sh
-rwxr-xr-x 1 root root 776 2005-11-01 20:06 openvpn-startup.sh
-rw-r--r-- 1 root root 4080 2006-10-10 19:17 server.conf.gz
-rw-r--r-- 1 root root 1743 2006-10-10 19:17 static-home.conf
-rw-r--r-- 1 root root 1689 2006-10-10 19:17 static-office.conf
-rw-r--r-- 1 root root 1938 2006-10-10 19:17 tls-home.conf
-rw-r--r-- 1 root root 1949 2006-10-10 19:17 tls-office.conf
-rw-r--r-- 1 root root 199 2005-11-01 20:06 xinetd-client-config
-rw-r--r-- 1 root root 989 2005-11-01 20:06 xinetd-server-config
こんなん出ました。