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

相關文章:

翻譯: