Openvpn示例

openvpn 示例文档

一、服务端部署

  • 1.安装软件包

    1sudo apt-get install openvpn
    
  • 2.生成证书

     1# cp -R /usr/share/doc/openvpn/examples/easy-rsa/ /etc/openvpn/
     2# cd /etc/openvpn/easy-rsa/2.0/
     3# ./clean-all
     4# ./build-ca  ;按提示填写信息,创建根证书
     5# ./build-key-server server ;按提示填写信息,创建服务端key
     6# ./build-key shanghai ;创建客户端key,上海用
     7# ./build-key shenzhen ;创建客户端key,深圳用
     8# ./build-key other ;创建客户端key,备用
     9创建不同key的用途是区别连接地区,分配固定IP。需要注意的是,Common Name(eg,your name or your server’s hostname)这项每个客户端之间不能重名,和server key的设置也不能重名,否则会生成失败。
    10# ./build-dh ;生成DH
    11# openvpn --genkey --secret ta.key ;生成tls-aut证书
    12# cp server.crt server.key dh2048.pem ca.crt ta.key /etc/openvpn/
    
  • 3.服务配置

     1# vi /etc/openvpn/server.conf ;创建配置文件
     2port 1195
     3proto udp
     4dev tap
     5ca ca.crt
     6cert server.crt
     7key server.key # This file should be kept secret
     8dh dh2048.pem
     9server 10.10.101.0 255.255.255.248
    10ifconfig-pool-persist ipp.txt
    11push "route 192.168.1.0 255.255.255.0"
    12client-config-dir ccd
    13keepalive 10 120
    14tls-auth ta.key 0
    15comp-lzo
    16user nobody
    17group nobody
    18persist-key
    19persist-tun
    20status openvpn-status.log
    21verb 3
    22# vi /etc/openvpn/ipp.txt ;分配客户端IP
    23shanghai,10.10.101.2
    24shenzhen,10.10.101.3
    25other,10.10.101.4
    
  • 4.网关配置,启动服务端时,同时开启IP转发,把本机设置成到办公网的网关

    1# vi /etc/openvpn/startserver.sh ;创建启动脚本
    2#!/bin/bash
    3/usr/sbin/openvpn --daemon --config /etc/openvpn/server.conf
    4sleep 5
    5echo 1 > /proc/sys/net/ipv4/ip_forward
    6ip ro add 10.10.0.0/16 via 10.10.101.2 dev tap0 src 192.168.1.213
    7ip ro add 192.168.20.0/24 via 10.10.101.3 dev tap0 src 192.168.1.213
    8(设置src很重要,否则IDC中其他机器可以ping通OA,但在网关机上却ping不通)
    
  • 5.启动服务

    1/etc/openvpn/startserver.sh
    
  • 6.开机启动服务

    1echo "/etc/openvpn/startserver.sh" >> /etc/rc.local
    
  • 7.所有IDC服务器配置静态路由,办公网IP段指向我们创建的网关

    1# /sbin/ip ro add 10.10.0.0/16 via 192.168.1.213
    2# /sbin/ip ro add 192.168.20.0/24 via 192.168.1.213
    

二、客户端部署

  • 1.安装软件包

    1apt-get install openvpn
    
  • 2.把服务端上生成的客户端key(ca.crt,shanghai.crt,shanghai.key,ta.key),上传到客户端的/etc/openvpn/conf/目录

  • 3.创建客户端配置文件

     1/etc/openvpn/conf/client.ovpn
     2client
     3remote 183.57.37.213 1194
     4dev tap
     5proto udp
     6resolv-retry infinite
     7nobind
     8persist-key
     9persist-tun
    10ca /etc/openvpn/conf/ca.crt
    11cert /etc/openvpn/conf/shanghai.crt
    12key /etc/openvpn/conf/shanghai.key
    13ns-cert-type server
    14comp-lzo
    15verb 3
    16tls-auth /etc/openvpn/conf/ta.key 1
    
  • 4.启动客户端

    1/usr/sbin/openvpn /etc/openvpn/conf/client.ovpn &
    2查看输出是否正常连接到服务端并获取IP,也可以ifconfig查看是否有tap设备。
    
  • 5.网关设置

    1IDC中有网关转发包到OA,办公网同样需要网关转发包到IDC。
    2如成功连接,此时这台客户端机器已可以连接到IDC的设备,我们还需要把他设置成网关服务器,让办公网其他设备可以通过它连接到IDC。
    3echo 1 > /proc/sys/net/ipv4/ip_forward
    4ip ro add 192.168.1.0/24 via 10.10.101.1 dev tap0
    5在办公网路由器上配置静态路由,把IDC内网段的包指向10.10.1.1。
    6
    7测试,已经可以互通了。
    
  • 6.创建启动脚本

    1/etc/openvpn/conf/startclient.sh
    2#!/bin/bash
    3/usr/sbin/openvpn /etc/openvpn/conf/client.ovpn &
    4sleep 5
    5echo 1 > /proc/sys/net/ipv4/ip_forward
    6ip ro add 192.168.1.0/24 via 10.10.101.1 dev tap0
    
最后修改于: Friday, April 12, 2024
欢迎关注微信公众号,留言交流。

相关文章:

翻译: