小龙的博客

IPsec VPN服务器自动安装脚本

在几分钟内建立自己的IPsec VPN服务器,在Ubuntu,Debian和CentOS上同时使用IPsec / L2TP和Cisco IPsec。您需要做的就是提供自己的VPN凭据,然后让脚本处理剩下的工作。

IPsec VPN会对您的网络流量进行加密,这样您和VPN服务器之间的任何人都无法在通过Internet传输数据时窃听您的数据。这在使用不安全的网络时尤其有用,例如在咖啡店,机场或酒店房间。

我们将使用Libreswan作为IPsec服务器,并使用xl2tpd作为L2TP提供程序。

»另请参阅:Docker上的IPsec VPN服务器

请阅读其他语言版本:English简体中文

目录

快速开始

首先,使用全新安装的Ubuntu LTS,Debian或CentOS 准备Linux服务器*

使用此单行设置IPsec VPN服务器:

wget https://git.io/vpnsetup -O vpnsetup.sh && sudo sh vpnsetup.sh

如果使用CentOS,请将上面的链接替换为https://git.io/vpnsetup-centos

您的VPN登录详细信息将随机生成,并在完成后显示在屏幕上。

有关其他安装选项以及如何设置VPN客户端,请阅读以下部分。

*专用服务器或虚拟专用服务器(VPS)。不支持OpenVZ VPS。

特征

  • 新增:IPsec/XAuth ("Cisco IPsec")支持更快的模式

  • 新增功能:现在可以使用预先构建的VPN服务器Docker镜像

  • 全自动IPsec VPN服务器设置,无需用户输入

  • 封装UDP中的所有VPN流量 - 不需要ESP协议

  • 可以直接用作新Amazon EC2实例的“用户数据”

  • 包括sysctl.conf优化以提高性能

  • 使用Ubuntu 18.04 / 16.04 / 14.04,Debian 9/8和CentOS 7/6进行测试

要求

新创建的Amazon EC2实例,来自以下图像之一:

请参阅详细说明EC2定价

-要么-

基于上述操作系统之一新安装的专用服务器或基于KVM / Xen的虚拟专用服务器(VPS)。不支持OpenVZ VPS,用户可以尝试使用OpenVPNShadowsocks

这还包括公共云中的Linux VM,例如DigitalOceanVultrLinodeGoogle Compute EngineAmazon LightsailMicrosoft AzureIBM CloudOVHRackspace

  

»我想运行自己的VPN,但没有服务器

高级用户可以在35美元的Raspberry Pi 3上设置VPN服务器在这些文章中了解更多:[1] [2]

 不要在PC或Mac上运行这些脚本!它们只应在服务器上使用!

安装

Ubuntu和Debian

首先,使用apt-get update && apt-get dist-upgrade并重新启动系统这是可选的,但建议使用。

要安装VPN,请选择以下选项之一:

选项1:让脚本为您生成随机VPN凭证(完成后将显示):

wget https://git.io/vpnsetup -O vpnsetup.sh && sudo sh vpnsetup.sh

选项2:编辑脚本并提供您自己的VPN凭据:

wget https://git.io/vpnsetup -O vpnsetup.shnano -w vpnsetup.sh[替换为您自己的值:YOUR_IPSEC_PSK,YOUR_USERNAME和YOUR_PASSWORD]sudo sh vpnsetup.sh

注意:请勿在值中使用这些特殊字符:\ " '安全IPsec PSK应包含至少20个随机字符。

选项3:将VPN凭据定义为环境变量:

#所有值必须放在'单引号'内#不要在值中使用这些特殊字符:\“' wget https://git.io/vpnsetup -O vpnsetup.sh && sudo \VPN_IPSEC_PSK = ' your_ipsec_pre_shared_key ' \VPN_USER = ' your_vpn_username ' \VPN_PASSWORD = ' your_vpn_password ' SH vpnsetup.sh

注意:如果无法通过下载wget,您也可以打开vpnsetup.sh(或vpnsetup_centos.sh)并单击Raw按钮。Ctrl-A选择全部,Ctrl-C复制,然后粘贴到您喜欢的编辑器中。

CentOS和RHEL

首先,使用yum update并重新启动系统这是可选的,但建议使用。

按照上面的相同步骤,但替换https://git.io/vpnsetuphttps://git.io/vpnsetup-centos

下一步

让您的计算机或设备使用VPN。请参阅:

配置IPsec / L2TP VPN客户端

配置IPsec / XAuth(“Cisco IPsec”)VPN客户端

方法:适用于Windows,macOS,Android和iOS的IKEv2 VPN

如果在尝试连接时出错,请参阅故障排除

享受您自己的VPN! 

重要笔记

请阅读其他语言版本:English简体中文

对于Windows用户如果VPN服务器和/或客户端位于NAT后面(例如家庭路由器),则需要更改一次性注册表

您的多个设备可以使用相同的VPN帐户。但是,由于IPsec / L2TP限制,如果您希望从同一NAT(例如家庭路由器)后面同时连接多个设备,则必须仅使用IPsec / XAuth模式

对于具有外部防火墙(例如EC2 / GCE)的服务器,请为VPN打开UDP端口500和4500。阿里云用户,请参阅#433

如果要添加,编辑或删除VPN用户帐户,请参阅管理VPN用户

当VPN处于活动状态时,客户端将设置为使用Google Public DNS如果另一个DNS提供商是首选,取代8.8.8.88.8.4.4在这两个/etc/ppp/options.xl2tpd/etc/ipsec.conf然后重启服务器。

使用内核支持可以提高IPsec / L2TP性能。它可以在Ubuntu 18.04 / 16.04,Debian 9和CentOS 7/6上找到。Ubuntu用户需要安装linux-image-extra-`uname -r`包并运行service xl2tpd restart

在安装,编辑/etc/iptables.rules和/或/etc/iptables/rules.v4(Ubuntu / Debian)或/etc/sysconfig/iptables(CentOS / RHEL)之后修改IPTables规则然后重启服务器。

连接时IPsec/L2TP,VPN服务器192.168.42.1在VPN子网内具有IP 192.168.42.0/24

脚本将在进行更改之前备份现有配置文件,并带有.old-date-time后缀。

升级Libreswan

附加脚本vpnupgrade.shvpnupgrade_centos.sh可用于升级Libreswanchangelog | announce)。SWAN_VER根据需要编辑变量。检查安装的版本:ipsec --version

# Ubuntu的&Debian的wget https://git.io/vpnupgrade -O vpnupgrade.sh# CentOS&RHEL wget https://git.io/vpnupgrade-centos -O vpnupgrade.sh

错误和问题

卸载

请参阅卸载VPN

也可以看看

执照

版权所有(C)2014-2018 Lin Song 基于Thomas Sarlandie的工作(版权所有2012)在LinkedIn上查看我的个人资料

本作品采用知识共享署名 - 相同方式共享3.0 Unported License
Attribution 许可:请在任何衍生产品中加入我的名字,并告诉我您是如何改进的!


配置 IPsec/L2TP VPN 客户端

其他语言版本: English简体中文.

注: 你也可以使用更高效的 IPsec/XAuth 模式 连接,或者配置 IKEv2

在成功搭建自己的 VPN 服务器之后,按照下面的步骤来配置你的设备。IPsec/L2TP 在 Android, iOS, OS X 和 Windows 上均受支持,无需安装额外的软件。设置过程通常只需要几分钟。如果无法连接,请首先检查是否输入了正确的 VPN 登录凭证。


Windows

注: 你也可以配置并且使用更新的 IKEv2 模式 连接。

Windows 10 and 8.x

  1. 右键单击系统托盘中的无线/网络图标。

  2. 选择 打开网络和共享中心。或者,如果你使用 Windows 10 版本 1709 或以上,选择 打开"网络和 Internet"设置,然后在打开的页面中单击 网络和共享中心

  3. 单击 设置新的连接或网络

  4. 选择 连接到工作区,然后单击 下一步

  5. 单击 使用我的Internet连接 (VPN)

  6. 在 Internet地址 字段中输入你的 VPN 服务器 IP

  7. 在 目标名称 字段中输入任意内容。单击 创建

  8. 返回 网络和共享中心。单击左侧的 更改适配器设置

  9. 右键单击新创建的 VPN 连接,并选择 属性

  10. 单击 安全 选项卡,从 VPN 类型 下拉菜单中选择 "使用 IPsec 的第 2 层隧道协议 (L2TP/IPSec)"。

  11. 单击 允许使用这些协议。确保选中 "质询握手身份验证协议 (CHAP)" 复选框。

  12. 单击 高级设置 按钮。

  13. 单击 使用预共享密钥作身份验证 并在 密钥 字段中输入你的 VPN IPsec PSK

  14. 单击 确定 关闭 高级设置

  15. 单击 确定 保存 VPN 连接的详细信息。

另外,除了按照以上步骤操作,你也可以运行下面的 Windows PowerShell 命令来创建 VPN 连接。将 你的 VPN 服务器 IP 和 你的 VPN IPsec PSK 换成你自己的值,用单引号括起来:

# 不保存命令行历史记录Set-PSReadlineOption –HistorySaveStyle SaveNothing# 创建 VPN 连接Add-VpnConnection -Name 'My IPsec VPN' -ServerAddress '你的 VPN 服务器 IP' -TunnelType L2tp -EncryptionLevel Required -AuthenticationMethod Chap,MSChapv2 -L2tpPsk '你的 VPN IPsec PSK' -Force -RememberCredential -PassThru

注: 在首次连接之前需要修改一次注册表。请参见下面的说明。

Windows 7, Vista and XP

  1. 单击开始菜单,选择控制面板。

  2. 进入 网络和Internet 部分。

  3. 单击 网络和共享中心

  4. 单击 设置新的连接或网络

  5. 选择 连接到工作区,然后单击 下一步

  6. 单击 使用我的Internet连接 (VPN)

  7. 在 Internet地址 字段中输入你的 VPN 服务器 IP

  8. 在 目标名称 字段中输入任意内容。

  9. 选中 现在不连接;仅进行设置以便稍后连接 复选框。

  10. 单击 下一步

  11. 在 用户名 字段中输入你的 VPN 用户名

  12. 在 密码 字段中输入你的 VPN 密码

  13. 选中 记住此密码 复选框。

  14. 单击 创建,然后单击 关闭 按钮。

  15. 返回 网络和共享中心。单击左侧的 更改适配器设置

  16. 右键单击新创建的 VPN 连接,并选择 属性

  17. 单击 选项 选项卡,取消选中 包括Windows登录域 复选框。

  18. 单击 安全 选项卡,从 VPN 类型 下拉菜单中选择 "使用 IPsec 的第 2 层隧道协议 (L2TP/IPSec)"。

  19. 单击 允许使用这些协议。确保选中 "质询握手身份验证协议 (CHAP)" 复选框。

  20. 单击 高级设置 按钮。

  21. 单击 使用预共享密钥作身份验证 并在 密钥 字段中输入你的 VPN IPsec PSK

  22. 单击 确定 关闭 高级设置

  23. 单击 确定 保存 VPN 连接的详细信息。

注: 在首次连接之前需要修改一次注册表,以解决 VPN 服务器 和/或 客户端与 NAT (比如家用路由器)的兼容问题。

要连接到 VPN: 单击系统托盘中的无线/网络图标,选择新的 VPN 连接,然后单击 连接。如果出现提示,在登录窗口中输入 你的 VPN 用户名 和 密码 ,并单击 确定。最后你可以到 这里 检测你的 IP 地址,应该显示为你的 VPN 服务器 IP

如果在连接过程中遇到错误,请参见 故障排除

OS X

注: 你也可以使用更高效的 IPsec/XAuth 模式 连接,或者配置 IKEv2

  1. 打开系统偏好设置并转到网络部分。

  2. 在窗口左下角单击 + 按钮。

  3. 从 接口 下拉菜单选择 VPN

  4. 从 VPN类型 下拉菜单选择 IPSec 上的 L2TP

  5. 在 服务名称 字段中输入任意内容。

  6. 单击 创建

  7. 在 服务器地址 字段中输入你的 VPN 服务器 IP

  8. 在 帐户名称 字段中输入你的 VPN 用户名

  9. 单击 鉴定设置 按钮。

  10. 在 用户鉴定 部分,选择 密码 单选按钮,然后输入你的 VPN 密码

  11. 在 机器鉴定 部分,选择 共享的密钥 单选按钮,然后输入你的 VPN IPsec PSK

  12. 单击 

  13. 选中 在菜单栏中显示 VPN 状态 复选框。

  14. (重要) 单击 高级 按钮,并选中 通过VPN连接发送所有通信 复选框。

  15. 单击 TCP/IP 选项卡,并在 配置IPv6 部分中选择 仅本地链接

  16. 单击  关闭高级设置,然后单击 应用 保存VPN连接信息。

要连接到 VPN: 使用菜单栏中的图标,或者打开系统偏好设置的网络部分,选择 VPN 并单击 连接。最后你可以到 这里 检测你的 IP 地址,应该显示为你的 VPN 服务器 IP

如果在连接过程中遇到错误,请参见 故障排除

Android

注: 你也可以使用更高效的 IPsec/XAuth 模式 连接,或者配置 IKEv2

  1. 启动 设置 应用程序。

  2. 在 无线和网络 部分单击 更多...

  3. 单击 VPN

  4. 单击 添加VPN配置文件 或窗口右上角的 +

  5. 在 名称 字段中输入任意内容。

  6. 在 类型 下拉菜单选择 L2TP/IPSec PSK

  7. 在 服务器地址 字段中输入你的 VPN 服务器 IP

  8. 在 IPSec 预共享密钥 字段中输入你的 VPN IPsec PSK

  9. 单击 保存

  10. 单击新的VPN连接。

  11. 在 用户名 字段中输入你的 VPN 用户名

  12. 在 密码 字段中输入你的 VPN 密码

  13. 选中 保存帐户信息 复选框。

  14. 单击 连接

VPN 连接成功后,会在通知栏显示图标。最后你可以到 这里 检测你的 IP 地址,应该显示为你的 VPN 服务器 IP

如果在连接过程中遇到错误,请参见 故障排除

iOS

注: 你也可以使用更高效的 IPsec/XAuth 模式 连接,或者配置 IKEv2

  1. 进入设置 -> 通用 -> VPN。

  2. 单击 添加VPN配置...

  3. 单击 类型 。选择 L2TP 并返回。

  4. 在 描述 字段中输入任意内容。

  5. 在 服务器 字段中输入你的 VPN 服务器 IP

  6. 在 帐户 字段中输入你的 VPN 用户名

  7. 在 密码 字段中输入你的 VPN 密码

  8. 在 密钥 字段中输入你的 VPN IPsec PSK

  9. 启用 发送所有流量 选项。

  10. 单击右上角的 完成

  11. 启用 VPN 连接。

VPN 连接成功后,会在通知栏显示图标。最后你可以到 这里 检测你的 IP 地址,应该显示为你的 VPN 服务器 IP

如果在连接过程中遇到错误,请参见 故障排除

Chromebook

  1. 如果你尚未登录 Chromebook,请先登录。

  2. 单击状态区(其中显示你的帐户头像)。

  3. 单击 设置

  4. 在 互联网连接 部分,单击 添加连接

  5. 单击 添加 OpenVPN / L2TP

  6. 在 服务器主机名 字段中输入你的 VPN 服务器 IP

  7. 在 服务名称 字段中输入任意内容。

  8. 在 供应商类型 下拉菜单选择 L2TP/IPsec + 预共享密钥

  9. 在 预共享密钥 字段中输入你的 VPN IPsec PSK

  10. 在 用户名 字段中输入你的 VPN 用户名

  11. 在 密码 字段中输入你的 VPN 密码

  12. 单击 连接

VPN 连接成功后,网络状态图标上会出现 VPN 指示。最后你可以到 这里 检测你的 IP 地址,应该显示为你的 VPN 服务器 IP

如果在连接过程中遇到错误,请参见 故障排除

Windows Phone

Windows Phone 8.1 及以上版本用户可以尝试按照 这个教程 的步骤操作。最后你可以到 这里 检测你的 IP 地址,应该显示为你的 VPN 服务器 IP

Linux

请参见 Linux VPN 客户端

故障排除

其他语言版本: English简体中文.

Windows 错误 809

无法建立计算机与 VPN 服务器之间的网络连接,因为远程服务器未响应。

要解决此错误,在首次连接之前需要修改一次注册表,以解决 VPN 服务器 和/或 客户端与 NAT (比如家用路由器)的兼容问题。请下载并导入下面的 .reg 文件,或者打开 提升权限命令提示符 并运行以下命令。完成后必须重启计算机。

  • 适用于 Windows Vista, 7, 8.x 和 10 (下载 .reg 文件)

    REG ADD HKLM\SYSTEM\CurrentControlSet\Services\PolicyAgent /v AssumeUDPEncapsulationContextOnSendRule /t REG_DWORD /d 0x2 /f
  • 仅适用于 Windows XP (下载 .reg 文件)

    REG ADD HKLM\SYSTEM\CurrentControlSet\Services\IPSec /v AssumeUDPEncapsulationContextOnSendRule /t REG_DWORD /d 0x2 /f

另外,某些个别的 Windows 系统配置禁用了 IPsec 加密,此时也会导致连接失败。要重新启用它,可以运行以下命令并重启。

  • 适用于 Windows XP, Vista, 7, 8.x 和 10 (下载 .reg 文件)

    REG ADD HKLM\SYSTEM\CurrentControlSet\Services\RasMan\Parameters /v ProhibitIpSec /t REG_DWORD /d 0x0 /f

Windows 错误 628

在连接完成前,连接被远程计算机终止。

要解决此错误,请按以下步骤操作:

  1. 右键单击系统托盘中的无线/网络图标,选择 打开网络和共享中心

  2. 单击左侧的 更改适配器设置。右键单击新的 VPN 连接,并选择 属性

  3. 单击 安全 选项卡,从 VPN 类型 下拉菜单中选择 "使用 IPsec 的第 2 层隧道协议 (L2TP/IPSec)"。

  4. 单击 允许使用这些协议。确保选中 "质询握手身份验证协议 (CHAP)" 复选框。

  5. 单击 高级设置 按钮。

  6. 单击 使用预共享密钥作身份验证 并在 密钥 字段中输入你的 VPN IPsec PSK

  7. 单击 确定 关闭 高级设置

  8. 单击 确定 保存 VPN 连接的详细信息。

Windows 10 升级

在升级 Windows 10 版本之后 (比如从 1709 到 1803),你可能需要重新按照上面的 Windows 错误 809 中的步骤修改注册表并重启。

Windows 8/10 DNS 泄漏

Windows 8.x 和 10 默认使用 "smart multi-homed name resolution" (智能多宿主名称解析)。如果你的因特网适配器的 DNS 服务器在本地网段上,在使用 Windows 自带的 IPsec VPN 客户端时可能会导致 "DNS 泄漏"。要解决这个问题,你可以 禁用智能多宿主名称解析,或者配置你的因特网适配器以使用在你的本地网段之外的 DNS 服务器(比如 8.8.8.8 和 8.8.4.4)。在完成后清除 DNS 缓存并且重启计算机。

另外,如果你的计算机启用了 IPv6,所有的 IPv6 流量(包括 DNS 请求)都将绕过 VPN。要在 Windows 上禁用 IPv6,请看这里

macOS VPN 流量

OS X (macOS) 用户: 如果你成功地使用 IPsec/L2TP 模式连接,但是你的公有 IP 没有显示为 你的 VPN 服务器 IP,请阅读上面的 OS X 部分并完成这一步:单击 高级 按钮,并选中 通过VPN连接发送所有通信 复选框。然后重新连接 VPN。

Android 6 及以上版本

如果你无法使用 Android 6 或以上版本连接:

  1. 单击 VPN 连接旁边的设置按钮,选择 "Show advanced options" 并且滚动到底部。如果选项 "Backward compatible mode" 存在(看下图),请启用它并重试连接。如果不存在,请尝试下一步。

  2. 编辑 VPN 服务器上的 /etc/ipsec.conf。找到 sha2-truncbug=yes 并将它替换为 sha2-truncbug=no。保存修改并运行 service ipsec restart (参见)

Chromebook 连接问题

Chromebook 用户: 如果你无法连接,请尝试以下步骤:编辑 VPN 服务器上的 /etc/ipsec.conf。找到这一行 phase2alg=... 并在结尾加上 ,aes_gcm-null 。保存修改并运行 service ipsec restart

其它错误

如果你遇到其它错误,请参见以下链接:

额外的步骤

请尝试下面这些额外的故障排除步骤:

首先,重启 VPN 服务器上的相关服务:

service ipsec restart
service xl2tpd restart

如果你使用 Docker,请运行 docker restart ipsec-vpn-server

然后重启你的 VPN 客户端设备,并重试连接。如果仍然无法连接,可以尝试删除并重新创建 VPN 连接,按照本文档中的步骤操作。请确保输入了正确的 VPN 登录凭证。

检查 Libreswan (IPsec) 和 xl2tpd 日志是否有错误:

# Ubuntu & Debiangrep pluto /var/log/auth.log
grep xl2tpd /var/log/syslog# CentOS & RHELgrep pluto /var/log/secure
grep xl2tpd /var/log/messages

查看 IPsec VPN 服务器状态:

ipsec status
ipsec verify

显示当前已建立的 VPN 连接:

ipsec whack --trafficstatus

Linux VPN 客户端

以下步骤是基于 Peter Sanford 的工作。这些命令必须在你的 VPN 客户端上使用 root 账户运行。

要配置 VPN 客户端,首先安装以下软件包:

# Ubuntu & Debianapt-get update
apt-get -y install strongswan xl2tpd# CentOS & RHELyum -y install epel-release
yum --enablerepo=epel -y install strongswan xl2tpd# Fedorayum -y install strongswan xl2tpd

创建 VPN 变量 (替换为你自己的值):

VPN_SERVER_IP='你的VPN服务器IP'VPN_IPSEC_PSK='你的IPsec预共享密钥'VPN_USER='你的VPN用户名'VPN_PASSWORD='你的VPN密码'

配置 strongSwan:

cat > /etc/ipsec.conf <<EOF# ipsec.conf - strongSwan IPsec configuration file# basic configurationconfig setup  # strictcrlpolicy=yes  # uniqueids = no# Add connections here.# Sample VPN connectionsconn %default  ikelifetime=60m  keylife=20m  rekeymargin=3m  keyingtries=1  keyexchange=ikev1  authby=secret  ike=aes256-sha1-modp2048,aes128-sha1-modp2048!  esp=aes256-sha1-modp2048,aes128-sha1-modp2048!conn myvpn  keyexchange=ikev1  left=%defaultroute  auto=add  authby=secret  type=transport  leftprotoport=17/1701  rightprotoport=17/1701  right=$VPN_SERVER_IPEOFcat > /etc/ipsec.secrets <<EOF: PSK "$VPN_IPSEC_PSK"EOFchmod 600 /etc/ipsec.secrets# For CentOS/RHEL & Fedora ONLYmv /etc/strongswan/ipsec.conf /etc/strongswan/ipsec.conf.old 2>/dev/null
mv /etc/strongswan/ipsec.secrets /etc/strongswan/ipsec.secrets.old 2>/dev/null
ln -s /etc/ipsec.conf /etc/strongswan/ipsec.conf
ln -s /etc/ipsec.secrets /etc/strongswan/ipsec.secrets

配置 xl2tpd:

cat > /etc/xl2tpd/xl2tpd.conf <<EOF[lac myvpn]lns = $VPN_SERVER_IPppp debug = yespppoptfile = /etc/ppp/options.l2tpd.clientlength bit = yesEOFcat > /etc/ppp/options.l2tpd.client <<EOFipcp-accept-localipcp-accept-remoterefuse-eaprequire-chapnoccpnoauthmtu 1280mru 1280noipdefaultdefaultrouteusepeerdnsconnect-delay 5000name $VPN_USERpassword $VPN_PASSWORDEOFchmod 600 /etc/ppp/options.l2tpd.client

至此 VPN 客户端配置已完成。按照下面的步骤进行连接。

注: 当你每次尝试连接到 VPN 时,必须重复下面的所有步骤。

创建 xl2tpd 控制文件:

mkdir -p /var/run/xl2tpd
touch /var/run/xl2tpd/l2tp-control

重启服务:

service strongswan restart
service xl2tpd restart

开始 IPsec 连接:

# Ubuntu & Debianipsec up myvpn# CentOS/RHEL & Fedorastrongswan up myvpn

开始 L2TP 连接:

echo "c myvpn" > /var/run/xl2tpd/l2tp-control

运行 ifconfig 并且检查输出。现在你应该看到一个新的网络接口 ppp0

检查你现有的默认路由:

ip route

在输出中查找以下行: default via X.X.X.X ...。记下这个网关 IP,并且在下面的两个命令中使用。

从新的默认路由中排除你的 VPN 服务器 IP (替换为你自己的值):

route add 你的VPN服务器IP gw X.X.X.X

如果你的 VPN 客户端是一个远程服务器,则必须从新的默认路由中排除你的本地电脑的公有 IP,以避免 SSH 会话被断开 (替换为实际值):

route add 你的本地电脑的公有IP gw X.X.X.X

添加一个新的默认路由,并且开始通过 VPN 服务器发送数据:

route add default dev ppp0

至此 VPN 连接已成功完成。检查 VPN 是否正常工作:

wget -qO- http://ipv4.icanhazip.com; echo

以上命令应该返回 你的 VPN 服务器 IP

要停止通过 VPN 服务器发送数据:

route del default dev ppp0

要断开连接:

# Ubuntu & Debianecho "d myvpn" > /var/run/xl2tpd/l2tp-control
ipsec down myvpn# CentOS/RHEL & Fedoraecho "d myvpn" > /var/run/xl2tpd/l2tp-control
strongswan down myvpn

致谢

本文档是在 Streisand 项目文档基础上翻译和修改。该项目由 Joshua Lund 和其他开发者维护。

授权协议

注: 这个协议仅适用于本文档。

版权所有 (C) 2016-2018 Lin Song
基于 Joshua Lund 的工作 (版权所有 2014-2016)

本程序为自由软件,在自由软件联盟发布的 GNU 通用公共许可协议的约束下,你可以对其进行再发布及修改。协议版本为第三版或(随你)更新的版本。

我们希望发布的这款程序有用,但不保证,甚至不保证它有经济价值和适合特定用途。详情参见GNU通用公共许可协议。


本文标题:IPsec VPN服务器自动安装脚本
本文链接:https://xl.cndyun.com/post/374.html
作者授权:除特别说明外,本文由 admin 原创编译并授权 小龙的博客 刊载发布。
版权声明:本文不使用任何协议授权,您可以任何形式自由转载或使用。

发表评论:

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。

Copyright © 2015-2018 小龙的博客 All Rights Reserved 
蒙公网安备 15020202000127号 蒙ICP备16000686号

分享:

支付宝

微信