16
2019
03
17:56:24

教程-使用StrongSwan IPsec VPN软件

http://www.bluestep.cc/教程-使用strongswan-ipsec-vpn软件/


本文将向您展示如何在服务器以及iOSAndroidWindows客户端上安装StrongSwan。 在本文中,服务器使用证书进行身份验证,客户端使用用户名和密码进行身份验证。

我们使用名为ExampleCA的证书颁发机构和名为gateway.example.com的服务器作为本文中的示例。 当然,你必须用自己的选择来取代这些。 同样,您还必须使用您自己的用户名和密码选项。

服务器

首先访问DigitalOcean并开设并资助一个帐户。如果您使用我的链接,当您第一次添加资金时,他们可能会额外获得奖励。按照文章“教程-Windows PC基本设置Linux VPS”来创建和设置您的“droplet”(VPS)。
本文使用Ubuntu 16.04。如果您选择了其他Linux发行版,则需要对Linux命令进行适当更改。

当您创建了水滴时,请安装StrongSwan所需的软件包:

sudo apt-get install strongswan libcharon-extra-plugins

注意:在Debian 9中,还需要安装package strongswan-pki

除非您打算使用真实证书来验证您的服务器,否则请自行创建证书颁发机构(CA)密钥:

sudo ipsec pki --gen --outform pem > caKey.pem
sudo mv caKey.pem /etc/ipsec.d/private/caKey.pem
sudo chmod 600 /etc/ipsec.d/private/caKey.pem

制作CA证书:

sudo ipsec pki --self --ca --lifetime 3650 --in /etc/ipsec.d/private/caKey.pem --dn“C = CA,O = Example,CN = ExampleCA”--outform pem> caCert.pem
sudo mv caCert.pem /etc/ipsec.d/cacerts/caCert.pem

长的命令可能出现在此网页的多行上,但必须作为单个命令输入。

制作服务器密钥:

sudo ipsec pki --gen --outform pem> serverKey.pem
sudo mv serverKey.pem /etc/ipsec.d/private/serverKey.pem
sudo chmod 600 /etc/ipsec.d/private/serverKey.pem

使用您的CA签署服务器证书:

sudo ipsec pki --pub --in /etc/ipsec.d/private/serverKey.pem | sudo ipsec pki --issue --lifetime 365 --cacert /etc/ipsec.d/cacerts/caCert.pem --cakey /etc/ipsec.d/private/caKey.pem --dn "C=CA, O=Example, CN=gateway.example.com" --san gateway.example.com --flag serverAuth --flag ikeIntermediate --outform pem > serverCert.pem
sudo mv serverCert.pem /etc/ipsec.d/certs/serverCert.pem

编辑StrongSwan IPsec配置文件:

sudo vi /etc/ipsec.conf

删除现有内容,并将其替换为:

config setup

conn %default
keyexchange=ikev2
leftid=gateway.example.com
leftcert=serverCert.pem
leftsubnet=0.0.0.0/0
right=%any
rightsourceip=10.9.0.0/24
rightdns=208.67.222.222,208.67.220.220
dpdaction=clear

conn client
leftsendcert=always
rightauth=eap-mschapv2
eap_identity=%identity
auto=add

编辑IPsec“机密”文件:

sudo vi /etc/ipsec.secrets

插入两行:

 : RSA serverKey.pem
derek : EAP "RhZ7DwL3b"

请注意,第一行冒号前有一个空格。当然,您必须用自己的选择替换用户名和密码。请记住用户名和密码,因为您在配置VPN客户端时稍后需要它们。

通过编辑系统控制配置文件允许在Linux内核中转发:

 sudo vi /etc/sysctl.conf

取消注释:

net.ipv4.ip_forward=1

现在就让这个改变生效:

sudo sysctl -p

打开防火墙,对出站报文进行网络地址转换:

sudo iptables -A INPUT -p udp --dport 500 -j ACCEPT
sudo iptables -A INPUT -p udp --dport 4500 -j ACCEPT
sudo iptables -A INPUT -p 50 -j ACCEPT
sudo iptables -A INPUT -p 51 -j ACCEPT
sudo iptables -t nat -A POSTROUTING -s 10.9.0.0/24 -o eth0 -j MASQUERADE
sudo dpkg-reconfigure iptables-persistent

通过重新启动StrongSwan完成服务器工作,以使所有这些更改生效:

sudo service strongswan restart

也可以通过将您的CA证书放在由Apache提供的简单网页上供下载到客户端,并从外部世界访问:

sudo iptables -A INPUT -p tcp --dport 80 -j ACCEPT
sudo dpkg-reconfigure iptables-persistent
sudo apt-get install apache2

将证书复制到位:

sudo openssl x509 -outform der -in /etc/ipsec.d/cacerts/caCert.pem -out /var/www/html/caCert.crt

创建您的简单网页:

sudo vi /var/www/html/cacert.html

插入一些HTML以使CA证书可供本机下载
Insert some HTML to make the CA certificate available for download by the client(s):

<!DOCTYPE html>
<html>
<head>
<title>Your CA Certificate</title>
</head>
<body>
<h1>Here Is Your CA Certificate</h1>
<p><a href="caCert.crt">caCert.crt</a></p>
</body>
</html>

这是服务器设置的结束。

iOS客户端

去你的iPhone或iPad。
要导入CA证书,请打开Safari并访问 http://gateway.example.com/cacert.html (当然,您必须根据自己的选择更换主机名)。

点击链接到CA证书。 向导会引导您完成将步骤安装到iPad或iPhone上的步骤。

在导入过程结束时点击Done
ipsec-vpn-001

现在转到Settings。 点击General部分,然后向下滚动并选择VPN部分。
点击Add VPN Configuration

  • 类型为IKEv2

  • 描述由您决定,但您可以将StrongSwan放入,例如

  • 服务器 gateway.example.com

  • 在此示例中,远程ID是gateway.example.com

  • 本地ID为空

  • 用户身份验证是Username

  • 使用者名称是您选择的使用者名称

  • 密码是您选择的密码

点击Done

ipsec-vpn-002

要连接到VPN,请选择名为StrongSwan的VPN配置。

将状态开关切换到连接(绿色)位置。

Android客户端

转到您的Android手机或平板电脑。

要将CA证书导入到您的Android设备中,请访问Chrome浏览器中的http://gateway.example.com/cacert.html(注意,如果您在Firefox中尝试它,则此功能无效)。

点击指向CA证书的链接。 如果询问,请选择仅使用证书安装程序完成操作。
您可以将证书名称保留为caCert,并将证书用作VPN和应用程序。

点击OK:
ipsec-vpn-003

CA证书显示在Android设备的“User”选项卡上的“Settings, General, Security, Trusted credentials”下:
ipsec-vpn-004

从Google Play商店安装StrongSwan VPN客户端:

打开App.
Click ADD VPN PROFILE.

  • Server is gateway.example.com in this example.

  • Type is IKEv2 EAP (Username/Password).

  • Username is your choice of username

  • Password is your choice of password

  • For CA certificate, check Select automatically

点击Save.
ipsec-vpn-006

要连接到VPN,请选择gateway.example.com的VPN连接。
选中我信任此应用程序的框,然后点击确定。
ipsec-vpn-007
VPN客户端连接到VPN服务器。

Windows客户端

转到您的Windows PC。
要下载您的CA证书,请在浏览器中访问 http://gateway.example.com/cacert.html 。右键单击证书文件,选择将目标另存为,并将其保存到您的下载文件夹。

要将CA证书添加到受信任的根证书颁发机构商店:

  1. 打开命令窗口并输入mmc(或在Windows搜索框中搜索mmc ,然后选择Microsoft管理控制台)。

  2. 当您询问您是否要允许Microsoft管理控制台应用更改您的PC时,请点击是。

  3. 从菜单中,执行文件,然后点击添加/删除管理单元,证书。点击添加即可复制此选项。

  4. 最重要的是,选择计算机帐户的单选按钮,然后点击下一步。

  5. 选择本地计算机,然后点击完成。

  6. 点击确定。

  7. 在左窗格的树中,双击证书(本地计算机)。

  8. 右键单击受信任的根证书颁发机构商店,然后选择所有任务,然后点击导入。

  9. 按照证书导入向导中的步骤浏览并从您的下载文件夹导入文件caCert.crt。您应该收到一条消息,告知导入成功。

  10. 关闭Microsoft管理控制台窗口。当系统询问您是否要保存设置时,请选择否。您的 ExampleCA 证书现在出现在受信任的根证书颁发机构商店中:

ipsec-vpn-008
要添加VPN连接,请点击“开始”按钮,然后选择设置,然后选择网络&amp;互联网,然后是 VPN 。

点击 +添加VPN连接按钮。

  • VPN提供商是 Windows(内置)

  • 连接名称取决于您,但您可以将StrongSwan作为示例

  • 在此示例中,服务器名称为 gateway.example.com

  • VPN类型为自动

  • 登录类型为用户名和密码

  • 用户名是您选择的用户名

  • 密码是您选择的密码重要说明:当我将VPN类型设置为 IKEv2 时,VPN不起作用。我可以连接到VPN网关并进行身份验证,但是通过我的PC的非VPN以太网连接发送到外部世界的所有流量。 StrongSwan VPN被标记为无法访问Internet。如上所述,解决方法是将VPN类型设置为自动。

ipsec-vpn-009

点击Save。

要连接到VPN,请选择名为 StrongSwan 的VPN连接。

Connect。

Linux客户端

不幸的是,在撰写本文时, network-manager-strongswan 版本1.3.1(问题#1429)出现问题,无法在GNOME网络管理器中添加StrongSwan VPN。 这个问题影响了Debian 8 Jessie和Ubuntu 16.04等等。 Debian 9 Stretch中的Package 1.4.1允许Strongswan在Linux中使用Network Manager。

ipsec-vpn-010

相关阅读

教程-Windows PC基本设置Linux VPS
教程-使用Brook是跨平台代理VPN软件
教程-使用Goflyway端对端加密HTTP/SOCKS5软件
教程-使用StrongSwan IPsec VPN软件
教程-使用Lantern(Android版)
教程-使用OpenConnect VPN服务器和客户端
教程-使用OpenVPN+obfsproxy代理软件
教程-使用OpenVPN+Shadowsocks软件
教程-使用Psiphon 3 for Android软件
教程-使用Shadowsocks + GoQuiet软件
教程-使用Shadowsocks + kcptun软件
教程-使用Shadowsocks + simple-obfs软件
教程-使用Shadowsocks-libev + simple-obfs软件
教程-使用ShadowsocksR客户端服务器端软件
教程-使用Tor + Private Obfs4 Bridge软件
教程-使用V2Ray软件
教程-使用V2Ray Websocket + Nginx TLS + CDN
教程-使用WireGuard软件




推荐本站淘宝优惠价购买喜欢的宝贝:

image.png

本文链接:https://hqyman.cn/post/362.html 非本站原创文章欢迎转载,原创文章需保留本站地址!

分享到:
打赏





休息一下~~


« 上一篇 下一篇 »

发表评论:

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

请先 登录 再评论,若不是会员请先 注册

您的IP地址是: