Skip to main content

Configuring HTTPS & External Access for 3DPrinterOS Client

Illia Nazarko avatar
Written by Illia Nazarko
Updated this week

Configure the 3DPrinterOS Client (running on a Windows/Linux/Mac machine) to allow users to access the local management interface from other computers on the internal network using a secure HTTPS connection (SSL), removing the need to RDP into the server.

3DPrinterOS images for Raspberry Pi have external access enabled by default

Step 1: Configure Client Settings

You can configure these settings via the Text Editor or the Web Interface.

Option A: Text Editor

  1. Stop/Close the 3DPrinterOS Client application.

  2. Navigate to the Client’s data directory:

    • Windows: C:\Users\%USERNAME%\AppData\Roaming\3dprinteros\

    • Linux / macOS: ~/.3dprinteros/

  3. Open the user_settings.json file with a text editor.

  4. Locate and update the following parameters:

    • Enable External Access: Search for the remote_control section. Change web_server from false to true. (This switches the client from listening only on localhost to listening on all network interfaces).

    • Enable HTTPS: Search for the web_interface section. Set port_https to 443.

Ensure you maintain valid JSON syntax, including commas between lines

Option B: Web Interface (If Client is already running) If you already have access to the local client (localhost:8008), you can navigate to the Settings tab within the interface and modify the "Web Server" and "HTTPS Port" fields directly, then SAVE and restart the application.

Before stopping or restarting the Client, ensure that all connected printers are IDLE and there are no active print jobs.

Step 2: Install SSL Certificates

If you wish to use your own signed certificates (instead of the auto-generated self-signed ones), perform the following:

  1. Rename your certificate file to: certificate.pem

  2. Rename your private key file to: private_key.pem

  3. Place both files in the root of the settings directory mentioned in Step 1 (.../3dprinteros/ or ~/.3dprinteros/).

If these files are not present, the Client will automatically generate self-signed certificates upon startup.

Step 3: Firewall Configuration

Ensure traffic is allowed on the secure port.

For Windows:

  1. Open the Windows Defender Firewall with Advanced Security.

  2. Create a new Inbound Rule:

    • Port: TCP 443

    • Action: Allow the connection.

  3. If you wish to block insecure access, ensure Port 8008 is blocked or removed from the allow list.

For Linux (Ubuntu/Debian): Ports are typically open by default on Ubuntu, though this depends on your specific distribution and hardening rules.

  • If you have a firewall (UFW) active: Run sudo ufw allow 443/tcp to permit access.

  • To restrict access: You can use UFW to specifically block the insecure port 8008 if needed.

Step 4: Verification

  1. Start the 3DPrinterOS Client.

  2. From a different computer on the same network, open a web browser.

  3. Navigate to: https://<YOUR_SERVER_IP_OR_HOSTNAME>

  4. You should now see the 3DPrinterOS Client interface loaded securely.

Did this answer your question?