开发者社区> 问答> 正文

如何通过strongswan等工具搭建IKEv2 VPN服务,从而远程组建办公局域网?

希望通过strongswan等工具,搭建一个IKEv2的VPN隧道,将不同地区的员工组成内网通讯,但各自外网流量不经过vpn。

设备:
    1. 阿里云ECS充当VPN主机,安装strongswan搭建IKEv2 VPN服务;
    2. 公司电脑A,同事电脑B,同事电脑C;

需要效果:
    3. 电脑A、B、C三者使用各自账号连接VPN服务后,取得对应的固定虚拟IP地址
    4. 电脑A、B、C三者之间可以互相通讯,但不能访问VPN主机的资源
    5. 电脑A、B、C三者访问的外网流量不经过VPN,直接使用本地互联网;


==========================================================

从网上半抄半学,目前已成功安装strongswan和配置好防火墙,可以连接,但是无法实现3、4、5的效果,以下是配置过程,无奈本人的网络基础较差,折腾了好几天,搞不下去了,求支招。。。。

(阿里云的VPN太贵用不起 T_T)

以下配置的实际效果如下:
    A. 可以正常联通VPN,但无默认网关地址,也无法访问VPN主机的资源;
    B. 如果设置  leftsubnet=0.0.0.0/0
        B1. 电脑A、B、C可以互相访问;
        B2. 电脑A、B、C的内外网流量全部经过vpn;
    C. 如果注释  leftsubnet 效果刚好反过来
        C1. 电脑A、B、C无法互相访问;
        C2. 电脑A、B、C的外网流量使用本地网络,不经vpn;
    

==========================================================


strongswan配置部分:

vi /etc/strongswan/strongswan.conf

charon {

        load_modular = yes

        duplicheck {                          #冗余检查关闭,以允许同时连接多个设备

                        enable = no

        }

        compress = yes                                  #传输启用压缩

        plugins {

                include strongswan.d/charon/*.conf

        }

        dns1 = 8.8.8.8                                  #给远程端指定DNS服务器

        dns2 = 8.8.4.4

        nbns1 = 8.8.8.8                                 #指定Windows的WINS服务器

        nbns2 = 8.8.4.4


        filelog {                                        #配置strongSwan日志级别和路径

                charon{

                   path = /var/log/strongswan.log

                   time_format = %b %e %T

                   default = 1

                   append = no

                   flush_line = yes

                }

        }

}

include strongswan.d/*.conf




vi /etc/strongswan/ipsec.conf

config setup

        uniqueids=never               #关闭ID唯一性,即允许多个客户端使用同一个证书,多设备同时在线


conn %default                           #默认配置项,其他conn配置项都会调用此默认项

      left=%any                           #left表示local,即本地端(服务器端)IP地址;%any是魔数字,表示任意地址

        leftsubnet=10.0.0.0/16                #本地端网络,0.0.0.0/0为通配,表示所有IP网段

       leftsubnet=0.0.0.0/0

      leftsubnet=192.168.0.0/16

        leftid=192.168.0.1

      lefthostaccess=yes


        mask=255.255.255.255


      right=%any                          #right表示remote,即远程端(客户端)IP地址可为任意地址

        rightsubnet=10.10.0.0/24

        rightsourceip=10.10.0.0/24         #分配给远程端的虚拟IP地址段,尽量避免使用常用私网地址段以免冲突

        righthostaccess=yes


        compress = yes #是否启用压缩, yes 表示如果支持压缩会启用.

        dpdaction = hold #当意外断开后尝试的操作, hold, 保持并重连直到超时.

        dpddelay = 30s #意外断开后尝试重连时长

        dpdtimeout = 60s #意外断开后超时时长, 只对 IKEv1 起作用

        inactivity = 1800s #闲置时长,超过后断开连接.


conn IKEv2-EAP                          #供Windows 7+, IOS9+使用。IKEv2,EAP验证

        keyexchange=ikev2                   #密钥交换使用IKEv2

        ike=aes256-sha256-modp1024,3des-sha1-modp1024,aes256-sha1-modp1024!                #第一阶段加密方式

        esp=aes256-sha256,3des-sha1,aes256-sha1!                                           #ESP的顺序与IKE一致

        rekey=no                            #本地端对Windows远程端发出rekey请求会断开连接,所以需配置为no

        leftauth=pubkey                     #本地端使用公钥验证

        leftcert=server.cert.pem            #指定本地端证书

        leftsendcert=always                 #本地端总是发送证书

        leftid=<服务器外网IP>               #本地端标识,使用本地端公网IP地址作为标识,和生成服务器证书时的--san参数对应

        leftfirewall=yes

        rightauth=eap-mschapv2              #远程端使用eap-mschapv2验证

        rightsendcert=never                 #不要求远程端发送证书

        eap_identity=%any                   #指定EAP验证身份,任意账户

        fragmentation=yes                   #允许分片

        auto=add                            #strongSwan启动时添加连接类型但不启动





以下是防火墙部分配置:


#打开ip v4的转发功能

vi /etc/sysctl.conf

net.ipv4.ip_forward=1

sysctl -p



#添加 nat 转发

systemctl enable firewalld.service

systemctl start firewalld.service

firewall-cmd --permanent --add-service="ipsec"

firewall-cmd --permanent --add-port=500/udp

firewall-cmd --permanent --add-port=4500/udp

firewall-cmd --permanent --add-masquerade




求大神支招T_T~~~

展开
收起
cjchome 2019-05-04 03:57:56 10374 0
3 条回答
写回答
取消 提交回答
问答排行榜
最热
最新

相关电子书

更多
云通信—构筑直连用户之“桥” 立即下载
云端互联网化办公时代 立即下载
思科软件定义访问:实现基于业务意图的园区网络 立即下载