Cenos6.4配置openvpn服务器(桥接模式)
1. openvpn服务端
1.1 安装openvpn
#yum install openvpn
#cp /usr/share/doc/openvpn-2.3.6/sample/sample-config-files/server.conf /etc/openvpn/
1.2 下载 easy-ras,制作证书。
用来制作ca证书,服务端证书,客户端证书,openvpn2.3.0该版本源码不包含easy-rsa,所以需要单独下载安装用来配合openvpn实现证书生成。
#mkdir -p /etc/openvpn/easy-rsa/keys
#tar zxvf /install/easy-rsa-2.2.0_master.tar.gz
#cp /install/easy-rsa-2.2.0_master/easy-rsa/2.0/* /etc/openvpn/easy-rsa
#vim /etc/openvpn/easy-rsa/vars
export KEY_COUNTRY="CN"
export KEY_PROVINCE="BJ"
export KEY_CITY="Beijing"
export KEY_ORG="****"
export KEY_EMAIL="***@163.com"
export KEY_EMAIL=***@163.com
#cd /etc/openvpn/easy-rsa
#source ./vars
#./clean-all
#./bulid-ca
现在,我们有CA了,我们将创建OpenVPN服务器证书。密码设置为空
#./build-key-server server
我们也需要生成使用内建DH脚本,我们的Diffie Hellman密钥交换文件和所有的文件复制到/etc/openvpn下
#./build-dh
#cd keys
#cp dh1024.pem ca.crt server.crt server.key /etc/openvpn/
为了让客户端进行身份验证,我们需要创建客户端证书。您可以重复为每个客户端或设备产生一个唯一的证书和密钥。如果你规划超过一对以上的密钥对,一定要使用描述清楚文件的名字。
#cd /etc/openvpn/easy-rsa
#./build-key client
# tar keys.tar keys #打包后放到vpn客户端上
1.3 配置路由转发
vim /etc/sysctl
net.ipv4.ip_forward = 1
sysctl -p
1.4 配置防火墙
iptables -A INPUT -p TCP –dport 1194 -j ACCEPT
设置nat转发,保证VPN地址池可路由出外网
iptables -t nat -A POSTROUTING -s 192.168.1.0/24 -o em1 -j MASQUERADE
1.5 配置openvpn
#mkdir -p /var/log/openvpn/
#cat /etc/server.conf
port 1194
proto tcp
dev tap0 #桥接使用,非桥接可设置为tun
ca ca.crt
cert server.crt
key server.key # This file should be kept secret
dh dh1024.pem
ifconfig-pool-persist ipp.txt
server-bridge 192.168.1.102 255.255.255.0 192.168.1.110 192.168.1.120 #使用桥接,ip 192.168.1.102
client-to-client
keepalive 10 120
comp-lzo
persist-key
persist-tun
status /var/log/openvpn/openvpn-status.log
log /var/log/openvpn/openvpn.log
log-append /var/log/openvpn/openvpn.log
verb 3
#cp /usr/share/doc/openvpn-2.3.6/sample/sample-scripts/bridge-* /etc/openvpn/
#chmod a+x /etc/openvpn/bridge-*
# vim /etc/openvpn/bridge-start
eth="em3" #使用物理网卡em3做桥接
eth_ip="192.168.1.102" #桥接ip
eth_netmask="255.255.255.0"
eth_broadcast="192.168.1.255"
#./bridge-start
#/etc/init.d/openvpn start
#ifconfig
br0 Link encap:Ethernet HWaddr A2:A6:4F:BB:EF:D1
inet addr:192.168.1.102 Bcast:192.168.10.255 Mask:255.255.255.0
inet6 addr: fe80::a0a6:4fff:febb:efd1/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:441 errors:0 dropped:0 overruns:0 frame:0
TX packets:16 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:27648 (27.0 KiB) TX bytes:1296 (1.2 KiB)
em3 Link encap:Ethernet HWaddr F8:BC:12:4A:DE:82
inet6 addr: fe80::fabc:12ff:fe4a:de82/64 Scope:Link
UP BROADCAST RUNNING PROMISC MULTICAST MTU:1500 Metric:1
RX packets:1919 errors:0 dropped:0 overruns:0 frame:0
TX packets:2012 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:366467 (357.8 KiB) TX bytes:142896 (139.5 KiB)
Interrupt:34
tap0 Link encap:Ethernet HWaddr A2:A6:4F:BB:EF:D1
inet6 addr: fe80::a0a6:4fff:febb:efd1/64 Scope:Link
UP BROADCAST RUNNING PROMISC MULTICAST MTU:1500 Metric:1
RX packets:285 errors:0 dropped:0 overruns:0 frame:0
TX packets:18 errors:0 dropped:20 overruns:0 carrier:0
collisions:0 txqueuelen:100
RX bytes:24208 (23.6 KiB) TX bytes:1370 (1.3 KiB)
2. openvpn客户端
Windows安装文件为openvpn-install-2.3.4-I001-x86_64
按照提示完成安装。
在openvpn按照目录下,找到config文件夹。把刚才打包的keys.tar.gz下载下来,并将包内ca.crt、client1.crt、client1.key复制到config下,然后创建client.ovpn文件,内容如下:
client
dev tap //桥接模式使用,默认tun
proto tcp
remote vpn外网ip 1194
resolv-retry infinite
nobind
persist-key
persist-tun
ca ca.crt
cert client.crt
key client.key
comp-lzo
verb 3
连接:在右下角的openvpn图标上右击,选择“Connect”,若能正常分配IP,则连接成功。
获取到内网ip 192.168.1.110
测试:
ping vpn server 内网ip192.168.1.102,成功。
ping 其他服务器内网ip 192.168.1.100,成功。(需要关闭vpn server 端的防火墙,还没找到原因。)
3. 常见问题
openvpn 连接后不能上网
vi /etc/openvpn/server.conf
找到以下类型语句:
push "redirect-gateway def1 bypass-dhcp"
push "route 192.168.1.0 255.255.255.0"
push "dhcp-option DNS 208.67.222.222"
把它们注释掉
;push "redirect-gateway def1 bypass-dhcp"
;push "route 192.168.1.0 255.255.255.0"
;push "dhcp-option DNS 208.67.222.222"
意思是不要重建client的网关 路由 DNS。
重启openvpn服务器:
service openvpn restart
搞定。
本文出自 “jamp” 博客,请务必保留此出处http://3619523.blog.51cto.com/3609523/1625591
郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。