我需要建立一个具有两个受保护段的 OpenVPN 网络。
1) 一个开发者网络,所有开发者都可以访问彼此的机器。2) 一个支持网络,有两个角色,支持者和客户。最好客户端不能发起与支持者的连接,但支持可以发起与客户端的连接。
设置的简单方法是使用两个独立的 OpenVPN 配置、2 个关键基础设施等。
不过,我认为只需一个 OpenVPN 配置就可以实现这一点,让支持者和开发者只使用一个证书就可以实现两个目的。
我该如何设置呢?
(OpenVPN 版本 2.0.x,openSuse 11.1)
答案1
我见过一个 openvpn 部署为服务器,其中客户端使用预共享密钥和证书进行身份验证,只有一个配置文件,每个客户端都有自己的证书
此外,可以通过netfilter设置网络间的流量规则
我会尝试在本周末安装它,并想出一个操作方法
@@@@ 稍后编辑
1 - 关注http://www.openvpn.net/index.php/open-source/documentation/howto.html#pki使用 openvpn 内置工具颁发证书
2-服务器配置
local 1.2.3.4
port 1977
proto tcp
dev tap-server
ca /etc/openvpn/certs/ca.crt
cert /etc/openvpn/certs/server.crt
key /etc/openvpn/certs/server.key
dh /etc/openvpn/certs/dh1024.pem
server 172.17.188.0 255.255.255.0
ifconfig-pool-persist /etc/openvpn/var/pool.txt
client-to-client
keepalive 10 120
#tls-auth /etc/openvpn/certs/ta.key 0
#cipher DES-EDE3-CBC
max-clients 10
persist-key
persist-tun
status /var/log/openvpn/server-status.log
log-append /var/log/openvpn/server.log
verb 3
mute 10
push "route 10.0.0.56 255.255.255.255"
#client-config-dir /etc/openvpn/var/routes
3-在客户端,与 ca.crt 和用户一起。(key、csr、crt)
remote 1.2.3.4
client
dev tap
nobind
port 1977
proto tcp-client
persist-key
persist-tun
ping-timer-rem
ping-restart 60
ping 10
verb 3
ca ca.crt
cert user.crt
key user.key
你可以从这个模式开始进行各种设置,按照 openvpn 的示例
答案2
或者,如果 OpenVPN 服务器是 Linux,请编写一些 iptables 规则来控制数据流。