strongswan教程

在 CentOS 7 上使用 StrongSwan 5.7.2 建立 IPSec VPN 连接,可以按照以下步骤进行配置:

准备3台服务器:

A:192.168.3.209,私网172.18.1.0/24

B:192.168.3.29,私网172.18.2.0/24

C:192.168.3.154,私网10.10.10.0/24

目标如下:

A与B的2个私网网段相互通信,

A与C的2个私网网段相互通信,

B与C的2个私网网段不能通信

1. 安装 StrongSwan 软件包:在两台 CentOS 7 服务器上都需要安装 StrongSwan 软件包。可以使用以下命令安装 StrongSwan:

sudo yum install strongswan

2. 3台服务器都配置路由转发

vi /etc/sysctl.conf

net.ipv4.ip_forward = 1
net.ipv4.conf.all.accept_redirects = 0
net.ipv4.conf.all.send_redirects = 0


sysctl -p

3. 配置服务器 A:在服务器 A 上,编辑 StrongSwan 的配置文件 `/etc/ipsec.conf`,并添加以下内容:

#编辑 StrongSwan 的配置文件 `/etc/ipsec.conf`,并添加以下内容:
[root]# cat ipsec.conf
config setup
        # strictcrlpolicy=yes
        # uniqueids = no
conn swan
        left=192.168.3.209
        leftsubnet=172.18.1.0/24
        right=192.168.3.29
        rightsubnet=172.18.2.0/24
        authby=secret
        auto=start

conn swan2
        left=192.168.3.209
        leftsubnet=172.18.1.0/24
        right=192.168.3.154
        rightsubnet=10.10.10.0/24
        authby=secret
        auto=start
#其中,`left` 是本地服务器的 IP 地址,`right` 是远程服务器的 IP 地址。`leftsubnet` 是本地服务器的子网地址,`rightsubnet` 是远程服务器的子网地址。`authby` 指定使用的认证方式,这里使用预共享密钥。`auto` 指定 StrongSwan 自动启动该连接。

#然后,编辑 StrongSwan 的预共享密钥文件 `/etc/ipsec.secrets`,并添加以下内容:

[root]# cat ipsec.secrets
# ipsec.secrets - strongSwan IPsec secrets file
192.168.3.209 192.168.3.29 : PSK "ffffffff"
192.168.3.209 192.168.3.154 : PSK "ffffffff"

#其中,`192.168.1.100` 是本地服务器的 IP 地址,`192.168.2.100` 是远程服务器的 IP 地址。`mysecret` 是预共享密钥。

4.配置服务器 B:在服务器 B 上,执行与服务器 A 相同的步骤,但是需要将 `left` 和 `right` 的值交换。例如,在 `/etc/ipsec.conf` 文件中

[root]# cat ipsec.conf
# ipsec.conf - strongSwan IPsec configuration file

# basic configuration

config setup
        # strictcrlpolicy=yes
        # uniqueids = no

# Add connections here.

# Sample VPN connections

#conn sample-self-signed
#      leftsubnet=10.1.0.0/16
#      leftcert=selfCert.der
#      leftsendcert=never
#      right=192.168.0.2
#      rightsubnet=10.2.0.0/16
#      rightcert=peerCert.der
#      auto=start

#conn sample-with-ca-cert
#      leftsubnet=10.1.0.0/16
#      leftcert=myCert.pem
#      right=192.168.0.2
#      rightsubnet=10.2.0.0/16
#      rightid="C=CH, O=Linux strongSwan CN=peer name"
#      auto=start

conn swan
        left=192.168.3.29
        leftsubnet=172.18.2.0/24

        right=192.168.3.209
        rightsubnet=172.18.1.0/24
        authby=secret
        auto=start
[root]# cat ipsec.secrets
# ipsec.secrets - strongSwan IPsec secrets file
192.168.3.29 192.168.3.209 : PSK "ffffffff"

5.配置服务器 C:在服务器 B 上,执行与服务器 A 相同的步骤,但是需要将 `left` 和 `right` 的值交换。例如,在 `/etc/ipsec.conf` 文件中

[root]# cat ipsec.conf
# ipsec.conf - strongSwan IPsec configuration file

# basic configuration

config setup
        # strictcrlpolicy=yes
        # uniqueids = no

# Add connections here.

# Sample VPN connections

#conn sample-self-signed
#      leftsubnet=10.1.0.0/16
#      leftcert=selfCert.der
#      leftsendcert=never
#      right=192.168.0.2
#      rightsubnet=10.2.0.0/16
#      rightcert=peerCert.der
#      auto=start

#conn sample-with-ca-cert
#      leftsubnet=10.1.0.0/16
#      leftcert=myCert.pem
#      right=192.168.0.2
#      rightsubnet=10.2.0.0/16
#      rightid="C=CH, O=Linux strongSwan CN=peer name"
#      auto=start
conn swan2
        left=192.168.3.154
        leftsubnet=10.10.10.0/24
        right=192.168.3.209
        rightsubnet=172.18.1.0/24
        authby=secret
        auto=start
您在 /var/spool/mail/root 中有新邮件
[root]# cat ipsec.secrets
# ipsec.secrets - strongSwan IPsec secrets file
192.168.3.154 192.168.3.209 : PSK "ffffffff"

6. 各台服务器都启动,注意优先启动A服务器,其次再启动B与C

#启动 StrongSwan 服务:在两台服务器上都启动 StrongSwan 服务,使用以下命令:
sudo systemctl start strongswan

7. 查看链接信息

strongswan statusall

3.209的

3.29的

3.154的

8. 通信检测

A:192.168.3.209,私网172.18.1.0/24

B:192.168.3.29,私网172.18.2.0/24

C:192.168.3.154,私网10.10.10.0/24

在A上可以ping通,B和C的私网

在B上可以ping通A,但是不通C的私网

在C上可以ping通A,但是不通B的私网

  • 6
    点赞
  • 20
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值