> ## Documentation Index
> Fetch the complete documentation index at: https://pentest-tools.com/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# Virtual machine

> Deploy the VPN agent as a virtual machine using VMware, Hyper-V, or VirtualBox

The VPN agent is available as a pre-configured virtual appliance. You download it from the dashboard, import it into your hypervisor, and boot it. The agent connects to the platform.

<Info>
  VPN profiles require the **Internal network scanning** add-on.
</Info>

## System requirements

| Resource | Minimum                                                                | Recommended |
| -------- | ---------------------------------------------------------------------- | ----------- |
| vCPUs    | 1                                                                      | 2           |
| Memory   | 1 GB                                                                   | 2 GB        |
| Disk     | 10 GB                                                                  | 20 GB       |
| Network  | 1 adapter with outbound internet access and access to internal targets |             |

## Downloading the VM

1. Go to **Settings > VPN Profiles**
2. Click on your VPN profile and open the deployment menu
3. Select **Virtual Machine**
4. Download the format that matches your hypervisor:

| Hypervisor                         | Format  |
| ---------------------------------- | ------- |
| VMware Workstation / ESXi / Fusion | `.vmdk` |
| VirtualBox                         | `.ova`  |
| Hyper-V                            | `.vhd`  |

Each download is pre-configured with your VPN profile credentials.

## Installation

<Tabs>
  <Tab title="VMware">
    ### VMware Workstation / Fusion

    The `.vmdk` file is a virtual disk, not a standalone appliance. You need to create a new VM that uses it.

    1. Go to **File > New Virtual Machine**
    2. Choose **Custom** configuration
    3. When prompted for the disk, select **Use an existing virtual disk** and browse to the downloaded `.vmdk` file
    4. Complete the wizard (Linux / Ubuntu 64-bit, 1+ vCPU, 1+ GB RAM)
    5. Start the VM

    ### vSphere / ESXi

    1. Open vSphere Client
    2. Right-click on your datacenter or cluster
    3. Select **Deploy OVF Template**
    4. Browse to the downloaded file
    5. Follow the deployment wizard, selecting the appropriate datastore and network
  </Tab>

  <Tab title="VirtualBox">
    1. Open VirtualBox
    2. Go to **File > Import Appliance**
    3. Browse to the downloaded `.ova` file
    4. Review settings and click **Import**
    5. Start the VM
  </Tab>

  <Tab title="Hyper-V">
    1. Open **Hyper-V Manager**
    2. Click **Action > Import Virtual Machine**
    3. Browse to the extracted appliance folder
    4. Select **Copy the virtual machine**
    5. Complete the import wizard and start the VM
  </Tab>
</Tabs>

## Network configuration

Connect the VM to a network that has:

* Outbound internet access (TCP port 22 to vpn2.pentest-tools.com)
* Access to the internal targets you want to scan

If you need to scan across VLANs, place the agent in a VLAN with routing to your targets, or use a trunk port with the appropriate VLAN access.

## Verifying the connection

After booting the VM:

1. The agent starts automatically and connects to the platform
2. Go to **Settings > VPN Profiles** and check that your profile shows as **Online**
3. Use the **Test connection** button to verify end-to-end connectivity

<Warning>
  The default credentials are `root` / `vpnagent007` and `tc` / `vpnagent007`. Change these passwords immediately after the first boot.
</Warning>

## Network requirements

| Protocol | Port | Destination            | Purpose      |
| -------- | ---- | ---------------------- | ------------ |
| TCP      | 22   | vpn2.pentest-tools.com | Agent tunnel |

No inbound ports need to be opened.

## Assigning a static IP

The agent VM uses DHCP by default. If you need a fixed IP to whitelist the agent on internal firewalls, you can assign one at the terminal. The change does not survive a reboot, so you'll need to reapply it after each reboot.

<Note>
  In VMware, set the network adapter to Bridged mode, not NAT. NAT hides the VM behind the host IP, which means the agent cannot reach internal targets directly.
</Note>

Boot the VM, then press **Ctrl+C** at the agent console to get a shell. Run the following commands with your own network values:

```bash theme={null}
ifconfig eth0 <static_ip> netmask <network_mask>
route add default gw <gateway_ip> eth0
```

Verify the IP is set:

```bash theme={null}
ping <gateway_ip>
ping vpn2.pentest-tools.com
```

If both pings succeed, run `start` to restart the agent.

<Warning>
  These settings are lost after a reboot. For a permanent static IP, use a DHCP reservation on your router or DHCP server tied to the VM's MAC address. That way the VM always gets the same IP without manual steps.
</Warning>

## Related topics

* [VPN profiles overview](/capabilities/vpn/overview)
* [Troubleshooting](/capabilities/vpn/troubleshooting)
