openvpn配置server.conf和iptables
2019-03-22openvpn用于开通vpn隧道,设置好ca/server/client证书。iptables用于将访问WCM公网IP的流量转发为内网流量
1、配置文件server.conf。
/etc/openvpn/server.conf
2、转发包/etc/sysconfig/iptables
-A INPUT -i tun0 -j ACCEPT
-A FORWARD -i tun0 -o em1 -j ACCEPT
-A FORWARD -i em1 -o tun0 -j ACCEPT
-A OUTPUT -o tun0 -j ACCEPT
-A INPUT -p tcp -m tcp --dport 1194 -j ACCEPT
-A INPUT -p tcp -m udp --dport 1194 -j ACCEPT
COMMIT
*nat
:PREROUTING ACCEPT [0:0]
:POSTROUTING ACCEPT [0:0]
:OUTPUT ACCEPT [0:0]
#-A POSTROUTING -s 172.10.2.0/24 -j SNAT --to-source 172.10.1.156
#-A POSTROUTING -s 172.26.1.0/24 -d 172.10.1.0/24 -j SNAT --to-source 172.10.1.46
-A POSTROUTING -s 172.26.1.0/24 -j MASQUERADE 这一条就够了。
COMMIT
或者
iptables -t nat -A POSTROUTING -s 172.26.1.0/24 -o tun0 -j MASQUERADE
iptables-save > /etc/sysconfig/iptables
如果VPN服务器上的内网ip不是网关那么必须加上下面这一句(如果不加则客户端无法连接其他内网机器):
iptables -t nat -A POSTROUTING -s 10.8.0.0/24 -d 172.18.2.0/24 -j SNAT –to-source 172.18.2.30
3、设置sysctl.conf
echo 1 > /proc/sys/net/ipv4/ip_forward
echo "net.ipv4.ip_forward=1" >> /etc/sysctl.conf
sysctl -p
4、设置DNS
在使用OpenVPN时,有的时候需要使用VPN的DNS,有的时候却需要使用本地网络的DNS。OpenVPN可以在配置中支持DNS设置,如果是server来配置客户端DNS, 需要在配置文件中加入:
push "dhcp-option DNS 202.106.0.20"
push "dhcp-option DNS 8.8.8.8"
如果是在客户端配置,需要在配置文件设置:
dhcp-option DNS 202.106.0.20
dhcp-option DNS 8.8.8.8