Skip to main content

OCI Free Tier Server Preparation

FRP Auto Deploy needs a publicly reachable server entry point. If you do not have a static public IP at home or the office, and you do not want to pay for a separate VPS, an Oracle Cloud Infrastructure (OCI) Always Free-eligible Linux VM can be a practical FRP server host. This page stops before installing FRP Auto Deploy. The goal is to prepare the Linux server, networking, SSH access, and persistent public IPv4 address.
A DNS name is optional. You can start with only the reserved public IP and the assigned FRP service ports, then add a hostname later.

What this solves

For the current FRP Auto Deploy stable support boundary, use this conservative configuration:
OCI Free Tier policies and tenancy limits can change. Before creating resources, confirm the Always Free Eligible label and the cost estimate shown in the OCI Console. Capacity also varies by home region.

Why E2.1.Micro instead of Ampere A1?

OCI also offers Arm-based VM.Standard.A1.Flex under its Always Free program. FRP Auto Deploy, however, does not currently advertise native ARM64 systemd as field-validated stable support. For a first-time deployment, use x86_64 E2.1.Micro when capacity is available.

1. Create the OCI account and choose the Home Region

Choose the Home Region carefully when creating the tenancy. Oracle documents that Always Free Compute instances must be created in that home region. If OCI reports Out of host capacity, try another Availability Domain when possible or try again later.
OCI account registration may require a mobile number and payment-card verification. Always Free resources are distinct from time-limited Free Trial credits, but the OCI Console at creation time is the final source for eligibility and billing status.

2. Create a VCN with Internet connectivity

In the OCI Console:
Simple example:
The wizard normally creates the required Internet-facing network components. Place the FRP server VM in the public subnet.

3. Create the Ubuntu VM

In the OCI Console:

Image

Recommended:

Shape

Networking

  • Select the VCN you created.
  • Select the public subnet.
  • Let OCI assign the primary private IPv4 automatically.
  • Prefer Do not assign a public IPv4 address at this step.
The next step attaches a Reserved Public IP directly, avoiding a temporary ephemeral IP first.

SSH key

Upload/paste your existing public key, or let OCI generate a key pair.
If OCI generates the key pair, store the private key safely. Do not assume you can download the same private key later.

4. Create a Reserved Public IPv4

In the OCI Console:
Example:
Unlike an ephemeral public IP, a Reserved Public IP is a persistent regional object. It can be unassigned and reassigned to another compatible private IP in the same region.

5. Attach the Reserved Public IP to the VM

Oracle’s current Console flow is:
If the VNIC private IP already has an ephemeral or reserved public IP, remove/unassign it first. OCI allows only one public-IP object on that private IP at a time.

6. Why does Linux only show a private IP?

OCI public IPv4 is not configured directly on the guest OS NIC. OCI provides one-to-one NAT between the public IPv4 and the VNIC’s private IPv4. So this is normal:
shows 10.x.x.x, while the persistent public address is visible in the OCI Console.

7. Configure OCI Security List / NSG ingress

FRP Auto Deploy does not modify OCI Security Lists or NSGs for you.

Safe starting rules

Avoid leaving SSH TCP/22 open to 0.0.0.0/0 longer than necessary. Restrict it to your administrator public IP /32 when practical.
If you want automatic service-port allocation without updating OCI rules every time, you can allow 6000-6098. In stricter environments, open only the ports currently assigned to services and update firewall policy as services are added.

Enterprise single-443

Typical public ingress:
Backend 6099 and 7000 remain loopback-only and must not be exposed to the Internet.

8. SSH to Ubuntu

The default account for OCI Ubuntu images is typically ubuntu.
Verify the host:
Recommended result:

9. Perform basic Linux preparation

Before installing FRP Auto Deploy:
Check time synchronization:
Large clock drift can cause TLS/enrollment problems. Check the local firewall too:
If UFW is active, both the OCI network policy and UFW must allow the required ports. If UFW is inactive, this guide does not require enabling it just for FRP Auto Deploy.

10. Final readiness check

Checklist:
  • VM is in the Home Region
  • Shape is marked Always Free Eligible
  • Ubuntu 24.04 x86_64 is used
  • Public subnet + Internet Gateway are present
  • Reserved Public IPv4 is attached
  • SSH private key is safely stored
  • External SSH connection succeeds
  • OCI Security List/NSG is ready
  • curl and CA certificates are installed
  • System clock is healthy
Continue to Server Installation.

Free-operation caveats

Idle Always Free instance reclamation

Oracle’s current Always Free documentation states that idle compute instances may be reclaimed. It describes a 7-day period of low CPU/network utilization, with memory utilization also considered for A1 shapes. A rarely used FRP gateway can therefore be affected by the provider’s idle policy.
If remote-access availability is business-critical, evaluate the availability tradeoff of Free Tier. Do not generate meaningless workload simply to defeat an idle-reclamation policy.

Free Tier limits can change

OCI documentation and product pricing pages can change over time. This guide intentionally recommends the x86_64 E2.1.Micro path marked Always Free Eligible in the Console and treats the live Console eligibility/cost estimate as the final check before provisioning.

Next steps

Install the FRP Server

Install the stable FRP Auto Deploy server on the prepared OCI Ubuntu VM.

Firewall & NAT

Understand public IP, NAT, and service-port behavior in more depth.

Official OCI references

Last modified on September 7, 2026