网络布局是:
---------- ------- -------- ---------------- |Internet|-->|Modem|-->|Switch|-->|OpenVPN Server| ---------- ------- -------- ----------------
服务器是一个ubuntu服务器.我在服务器上启用了IP转发.
我们的网关/调制解调器是Linksys WAG54G2,并与WinXP机器连接.
有谁知道如何打开OpenVPN服务器所在的子网???
解决方法
> 1.1.1.1是服务器面向互联网的公共地址
> 2.2.2.2是您家中面向互联网的服务器的公共地址
> 192.168.1.0/24是您工作的网络
> 192.168.1.1是具有1.1.1.1的机器的内部地址
> 192.168.1.254将是具有1.1.1.1的机器的VPN端点
> 192.168.2.0/24是您家中的网络
> 192.168.2.1是机器的内部地址,具有2.2.2.2
> 192.168.2.254将是具有2.2.2.2的机器的VPN端点
和
> 1.1.1.1和2.2.2.2仅接受通过端口1194上的防火墙的流量.接受来自其他任何地方的流量毫无意义,它将减少潜在的攻击.
秘密静态密钥
您最简单的方法是使用静态密钥. Read instructions here on how to make one.这是从1.1.1.1以root身份完成的简短版本:
openvpn --genkey --secret > /etc/openvpn/secret.key chmod 600 /etc/openvpn/secret.key scp /etc/openvpn/static.key root@2.2.2.2:/etc/openvpn/secret.key ssh root@2.2.2.2 chmod 600 /etc/openvpn/secret.key exit
示例本地(工作LAN)配置:
您可以将此文本放在工作机器(1.1.1.1)上的/ etc / openvpn / home-vpn中,假设OpenVPN在启动时读取/ etc / openvpn的内容.
#daemon home-vpn local 1.1.1.1 remote 2.2.2.2 proto tcp-server port 1194 dev tun0 ifconfig 192.168.1.254 192.168.2.254 route 192.168.2.0 255.255.255.0 192.168.1.254 6 route-delay 5 verb 3 nice 1 secret /etc/openvpn/secret.key comp-lzo passtos
远程(家庭局域网)示例配置:
您可以将此文本放在/ etc / openvpn / work-vpn中的主机(2.2.2.2)上,假设OpenVPN在启动时读取/ etc / openvpn的内容.
#daemon work-vpn local 2.2.2.2 remote 1.1.1.1 proto tcp-server port 1194 dev tun0 ifconfig 192.168.2.254 192.168.1.254 route 192.168.1.0 255.255.255.0 192.168.2.254 6 route-delay 5 verb 3 nice 1 secret /etc/openvpn/secret.key comp-lzo passtos
这里的示例使用openvpn服务运行,优先级为1;如果您不希望这样,请删除整行读取好1以使其像任何其他程序一样运行.通过两端的comp-lzo启用压缩,并且passtos允许TOS数据包位在VPN上生存.如果您愿意,也可以禁用这两个.有些人会注意到6的路由成本似乎有点高,这是真的,它可以低得多(4-5取决于设置),但6为子网和附加路由提供了足够的“覆盖”.