跳转到主要内容
Devin 在其独立的 VM 工作空间中运行,有时需要访问你的内部网络中的资源(例如内部包注册表、预发布环境服务、自托管服务)。与开发人员一样,Devin 可以使用客户端 VPN 连接到你的内部网络。

前置条件检查清单

在设置 VPN 访问之前,请确认以下事项:
  1. 公网访问验证
    • 确认这些服务不能通过公共互联网访问。
    • 对于云托管服务(例如 Gitlab Cloud Package Registry、JFrog Artifactory Cloud),通常只需一个访问令牌(access token)即可。
  2. 认证方式: 建议使用服务账户进行认证。凭证可以通过 Devin 的 Secrets 功能进行安全存储。

设置 OpenVPN

Devin 的工作空间中已预装 OpenVPN。要进行配置,请执行以下步骤:
  1. 将你的 config.ovpn 配置文件拖放到 VSCode 实例中,将其上传到 Devin 的工作空间。
VPN Configuration Interface
  1. 通过创建文件 /etc/systemd/system/openvpn.service,将 OpenVPN 设置为系统服务:
[Unit]
Description=OpenVPN Client Service
After=network.target

[Service]
ExecStart=/usr/sbin/openvpn --config /path/to/config.ovpn
Restart=always

[Install]
WantedBy=multi-user.target
然后重新加载 systemd,启用并启动该服务。
sudo systemctl daemon-reload
sudo systemctl enable openvpn
sudo systemctl start openvpn
这样可以确保 VPN 连接由系统管理,并在连接失败时自动重新建立。

其他 VPN 客户端

如果贵组织使用的是其他 VPN 解决方案:

公开发布的 VPN 客户端

对于像 Fortinet 这样可以通过包管理器安装的客户端: FortiClient VPN 安装
  1. 在设置过程中使用相应的包管理器命令安装客户端:
    sudo apt install forticlient
    
  2. 配置启动命令以建立连接。

私有 VPN 客户端

对于像 Palo Alto GlobalProtect 这样需要安装二进制客户端的 VPN:
  1. 通过将客户端二进制文件和证书拖放到 VSCode 实例中,将它们上传到 Devin 的工作区
  2. 使用以下命令安装:
    sudo dpkg -i /path/to/GlobalProtect_deb.deb
    
GlobalProtect VPN 安装
  1. 配置启动命令:
    globalprotect import-certificate --location /path/to/cert
    
GlobalProtect 证书导入