如何在两台主机ubuntu linux之间的多个接口之间创buildopenvpn隧道

我想在两个有两个接口的Ubuntu 12.10主机之间创buildOpenVPN隧道,例如:

Host1: eth0, eth1 Host2: eth0, eth1 

一个隧道之间通缉:

 Host1 (eth0) <-> Host 2 (eth0) Host1 (eth1) <-> Host2 (eth1) 

问题:

  1. 如何才能做到这一点? 我需要为每个接口创build两个桥接器,为br0和eth0创buildtap0; tap1为br1和eth1? 但在OpenVPN的server.conf中,我可以写dev开关,但是如何在configuration文件中添加多个网桥(br0,br1)和两个tap(tap0和tap1)?

  2. 如何做这个设置的路由和防火墙(iptables)? 客户需要额外的configuration吗? 我是否也需要在客户端创build点击和桥接? 如果是这样,这怎么能被添加到client.conf?

  3. 在我读过的任何OpenVPN安装指南中,都会显示一些命令来为服务器创build密钥等,然后将客户端复制到客户端计算机。 这是足够的还是我需要在客户端执行额外的命令? 客户端需要什么重要的证书?

  4. 当我在shell中运行openvpn命令时,它不会自动创buildtun或tap接口。 我用modprobe tun和sudo modprobe桥。 接下来,openvpn –mktun –dev tap0命令在单独的脚本中执行。 这是真的需要,创build一个接口之前启动OpenVPN?