有没有从Linux连接到WatchGuard VPN的真正方法?


21

WatchGuard正式具有仅适用于Windows和Mac的客户端。但是我看到它在内部使用openvpn。我无法从Linux连接到WG。

确实有人在工作吗?怎么样?

Answers:


28

这是我为使WatchGuard / Firebox SSL VPN在Ubuntu 11.10上正常运行所做的工作:

获取所需的文件

您将需要以下文件:

  • 证书
  • client.crt
  • 客户程序
  • 客户程序

在Windows计算机上

您需要访问可在其上安装其客户端的窗口计算机。

  1. 按照说明安装客户端。
  2. 首次登录(这将在WatchGuard目录中创建许多文件)
  3. 从WatchGuard目录复制文件
    • Windows XP: C:\Documents and Settings\{Username}\Application Data\WatchGuard\Mobile VPN\
    • Windows Vista / 7: C:\Users\{Username}\AppData\Roaming\WatchGuard\Mobile VPN\
  4. 重要的是ca.crt,client.crt,client.pem和client.ovpn(请注意client.pem可能以.key结尾)。
  5. 将这些文件复制到您的Ubuntu系统。

从Firebox SSL框中

这来自Watchguard网站。我没有直接尝试这些说明,但是它们看起来很合理。

http://customers.watchguard.com/articles/Article/2870?retURL=/apex/knowledgeHome&popup=false

从他们的文档中:

  1. 启动WatchGuard System Manager,然后连接到Firebox。
  2. 启动Firebox系统管理器。
  3. 单击状态报告选项卡。
  4. 单击位于窗口右下角的支持。
  5. 单击浏览以选择计算机上您要保存支持文件的路径。单击检索。从Firebox下载支持文件时,请等待。这可能需要20到30秒。出现对话框,告诉您下载完成的时间。默认情况下,支持文件的名称类似于192.168.111.1_support.tgz。
  6. 将支持文件解压缩到计算机上易于访问的位置。
  7. 将原始文件中包含的Fireware_XTM_support.tgz文件解压缩到同一位置。

Ubuntu上所需的软件

您将需要安装许多软件包才能从Ubuntu连接(这是台式机版本,服务器版本可能有所不同)。

  • openvpn(可能已安装)
    • sudo apt-get install openvpn
  • 网络管理器打开的vpn插件
    • sudo apt-get install network-manager-openvpn
  • Gnome的Network Manager OpenVPN插件(从Ubuntu 12.04开始需要)
    • sudo apt-get install network-manager-openvpn-gnome

从命令行进行测试

您可以从命令行测试连接是否正常。您不必这样做,但这可能会使事情变得更容易。

从目录中复制config / crt文件:

sudo openvpn --config client.ovpn

设置网络管理器

网络管理器是顶部面板栏中的图标(当前是向上/向下箭头)。您将需要从client.ovpn文件中移出许多行,因此请在编辑器中将其打开以供参考。

这是一个例子client.ovpn

dev tun
client
proto tcp-client
ca ca.crt
cert client.crt
key client.pem
tls-remote "/O=WatchGuard_Technologies/OU=Fireware/CN=Fireware_SSLVPN_Server"
remote-cert-eku "TLS Web Server Authentication"
remote 1.2.3.4 1000
persist-key
persist-tun
verb 3
mute 20
keepalive 10 60
cipher AES-256-CBC
auth SHA1
float 1
reneg-sec 3660
nobind
mute-replay-warnings
auth-user-pass
  1. 点击网络管理器图标
  2. 选择VPN连接->配置VPN ...
  3. 选择添加。
  4. 选择“ VPN”选项卡
  5. 对于“用户证书”,请选择client.crt文件(从该cert行开始)
  6. 对于CA证书,请选择ca.crt文件(从该ca行开始)
  7. 对于私钥,请选择client.pem文件。(从key行)
  8. 对于我的设置,我还需要将类型设置为Password with Certificates (TLS)(从auth-user-pass行开始)。
  9. Gateway来自remote生产线。您需要复制服务器名称或IP地址。在此示例中,“ 1.2.3.4”

其余设置位于“高级”区域(底部的高级按钮)。在常规标签中:

  1. Use custom gateway port使用行中的最后一个数字remote。在此示例中,“ 1000”
  2. Use TCP connection来自proto行。在这种情况下,tcp-client。

在安全选项卡下:

  1. Cipher来自cipher生产线。(在此示例中,AES-256-CBC)
  2. “ HMAC身份验证”来自这一auth行。(在本例中为SHA1)

在“ TLS身份验证”选项卡下:

  1. Subject Match来自“ tls-remote”行。(在此示例中,/ O = WatchGuard_Technologies / OU = Fireware / CN = Fireware_SSLVPN_Server)

我还需要选中“路由...”按钮下的“ IPv4设置”选项卡下的“仅将此连接用于其网络上的资源”。

可能还需要根据Firebox SSL的设置方式进行设置,但希望这会有所帮助。另外,如果您遇到问题,也可能希望查看系统日志(tail -fn0 / var / log / syslog)


5
的圣母……对于新用户来说,这是一个相当不错的答案。欢迎光临本站!
pauska,2012年

1
这适用于Ubuntu 13.04。在“步骤3-添加”之后,从下拉列表中选择“导入已保存的VPN配置”,并将其指向client.opvn。这将自动填写所有字段。
Pete SupportMonica13年

2

软件需求

sudo apt-get install network-manager-openvpn-gnome

或极简主义者:

sudo apt-get install openvpn

获取证书和配置

对于运行11.8+的Watchguard XTM设备

似乎用来拾取Windows客户端的https://yourrouter.tld/sslvpn.html页现在还包括通用的ovpn配置下载,可保存解决方法中的步骤。只需登录并转到该目录即可获取您的配置文件。恭喜您与Windows和Mac好友同在。

跳到“创建新的VPN连接”步骤。

对于运行11.7或更低版​​本的Watchguard XTM设备

这些可以直接从防火墙(用您自己的服务器替换)中检索:

  1. 转到https://watchguard_server and authenticate to the firewall
  2. https://watchguard_server:4100/?action=sslvpn_download&filename=client.wgssl

或者(我相信这样做不太安全,因为密码是在请求中发送的)(替换服务器,用户并通过您自己的密码传递):

https://watchguard_server:4100/?action=sslvpn_download&filename=client.wgssl&username=youruser&password=yourpass

将client.wgssl移至要存储配置和证书的位置,也许是/ etc / openvpn。这将对您造成焦油炸弹,因此您需要创建一个文件夹以将其提取到其中。

tar zxvf client.wgssl

创建新的VPN连接

打开网络连接并添加新的。对于类型,在VPN下,选择“导入已保存的VPN配置...”。在提取的client.wgssl文件夹中浏览client.ovpn文件。

添加凭证

编辑新创建的连接以包括您的用户名和密码,或将密码设置为“始终询问”。

警告:密码以可逆的加密方式保存。

调整网络

如果您不希望VPN接管所有流量,只需将流量转到远程位置,请转到“ IPv4设置”选项卡->“路由”,然后选中“仅将此连接用于其网络上的资源”


YMMV警告:看来我的两步获取配置的方法在XTM固件的较旧版本上可能无法正常工作。我第一次访问端口4100使我再次进行身份验证,但是在对端口4100进行身份验证之后第二次粘贴相同的链接仍然有效。
flickerfly 2013年

我还没有找到使用Network Manager做到这一点的方法。我相信主要是因为“远程证书eku“ TLS Web服务器身份验证””。在此期间,我一直在使用命令'openvpn --config client.ovpn'。烦人,但可以完成工作,尤其是将其设置为bash别名时。
flickerfly


By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.