HTTPS Bastion

The Reemo HTTPS Bastion is a locked-down browser, securely exposed through a Reemo session directly inside the user’s own browser. It gives controlled access to web applications without installing or exposing a browser on the workstation.

This guide covers deployment first (administrator side), then day-to-day usage (end-user side).

Template

This template can be imported from the Images page of the administration interface. See the Import and Export of Images section for the import and update procedure.

{
  "name": "HTTPS Bastion",
  "type": "ALU",
  "comments": "",
  "reference": "registry.reemo.io/reemosbhttps",
  "icon": "<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 512 512\" width=\"512\" height=\"512\" role=\"img\" aria-label=\"HTTPS Bastion\"><rect width=\"512\" height=\"512\" rx=\"96\" fill=\"#7B88A3\"/><path d=\"M 184 192 V 146 a 72 72 0 0 1 144 0 V 192\" fill=\"none\" stroke=\"#FFFFFF\" stroke-width=\"34\" stroke-linecap=\"round\"/><rect x=\"126\" y=\"192\" width=\"260\" height=\"208\" rx=\"40\" fill=\"#FFFFFF\"/><g fill=\"none\" stroke=\"#56617A\" stroke-width=\"15\" stroke-linecap=\"round\"><circle cx=\"256\" cy=\"296\" r=\"54\"/><ellipse cx=\"256\" cy=\"296\" rx=\"22\" ry=\"54\"/><path d=\"M 202 296 H 310\"/></g></svg>",
  "config": [
    {"conditionOp":"EQUAL","conditionVal":"allowlist","conditionVar":"REEMO_FILTER_LOGIC","defaultValue":null,"intMax":null,"intMin":null,"intStep":null,"volumeName":null,"volumeTarget":null,"volumeStorageClass":null,"volumeAccessMode":null,"volumeMode":null,"volumeRequestSize":null,"volumeRequestSizeOverhead":null,"editable":true,"hint":"Only these are reachable; everything else is blocked. Comma-separated. Accepts bare domains (reemo.io = that host only), wildcard subdomains (*.github.com), full URLs with a path prefix (https://site.com/app), or URL globs (*://*.cdn.net/*).","name":"Allowed Websites","placeholder":null,"type":"STRING","uiPriority":830,"value":"","variable":"REEMO_ALLOWLIST","optional":false},
    {"conditionOp":"EQUAL","conditionVal":"blocklist","conditionVar":"REEMO_FILTER_LOGIC","defaultValue":null,"intMax":null,"intMin":null,"intStep":null,"volumeName":null,"volumeTarget":null,"volumeStorageClass":null,"volumeAccessMode":null,"volumeMode":null,"volumeRequestSize":null,"volumeRequestSizeOverhead":null,"editable":true,"hint":"These are blocked; everything else is allowed. Same formats as allowlist: bare domains, *.subdomain wildcards, full URLs with a path prefix, or URL globs.","name":"Blocked Websites","placeholder":null,"type":"STRING","uiPriority":820,"value":"","variable":"REEMO_BLOCKLIST","optional":false},
    {"conditionOp":null,"conditionVal":"","conditionVar":"","defaultValue":null,"intMax":null,"intMin":null,"intStep":null,"volumeName":null,"volumeTarget":null,"volumeStorageClass":null,"volumeAccessMode":null,"volumeMode":null,"volumeRequestSize":null,"volumeRequestSizeOverhead":null,"editable":false,"hint":null,"name":"Allowlist (deny by default)","placeholder":null,"type":"SELECT_OPTION","uiPriority":10,"value":"allowlist","variable":"REEMO_FILTER_LOGIC","optional":false},
    {"conditionOp":null,"conditionVal":"","conditionVar":"","defaultValue":"BLANK","intMax":null,"intMin":null,"intStep":null,"volumeName":null,"volumeTarget":null,"volumeStorageClass":null,"volumeAccessMode":null,"volumeMode":null,"volumeRequestSize":null,"volumeRequestSizeOverhead":null,"editable":true,"hint":"What a new tab shows.","name":"New Tab Page","placeholder":null,"type":"SELECT","uiPriority":900,"value":"","variable":"REEMO_NEW_TAB","optional":false},
    {"conditionOp":null,"conditionVal":"","conditionVar":"","defaultValue":null,"intMax":null,"intMin":null,"intStep":null,"volumeName":null,"volumeTarget":null,"volumeStorageClass":null,"volumeAccessMode":null,"volumeMode":null,"volumeRequestSize":null,"volumeRequestSizeOverhead":null,"editable":false,"hint":null,"name":"Reemo","placeholder":null,"type":"SELECT_OPTION","uiPriority":50,"value":"#896FFB","variable":"REEMO_BACKGROUND_COLOR","optional":false},
    {"conditionOp":null,"conditionVal":"","conditionVar":"","defaultValue":null,"intMax":null,"intMin":null,"intStep":null,"volumeName":null,"volumeTarget":null,"volumeStorageClass":null,"volumeAccessMode":null,"volumeMode":null,"volumeRequestSize":null,"volumeRequestSizeOverhead":null,"editable":false,"hint":null,"name":"5","placeholder":null,"type":"SELECT_OPTION","uiPriority":10,"value":"5","variable":"REEMO_LIMIT_MONITOR","optional":false},
    {"conditionOp":"EQUAL","conditionVal":"external","conditionVar":"REEMO_PROXY_MODE","defaultValue":null,"intMax":null,"intMin":null,"intStep":null,"volumeName":null,"volumeTarget":null,"volumeStorageClass":null,"volumeAccessMode":null,"volumeMode":null,"volumeRequestSize":null,"volumeRequestSizeOverhead":null,"editable":true,"hint":"All browser traffic is routed through this upstream proxy, as host:port (e.g. proxy.corp.local:3128).","name":"Upstream Proxy (host:port)","placeholder":null,"type":"STRING","uiPriority":810,"value":"","variable":"REEMO_EXTERNAL_PROXY","optional":false},
    {"conditionOp":"EQUAL","conditionVal":"custom","conditionVar":"REEMO_NEW_TAB","defaultValue":null,"intMax":null,"intMin":null,"intStep":null,"volumeName":null,"volumeTarget":null,"volumeStorageClass":null,"volumeAccessMode":null,"volumeMode":null,"volumeRequestSize":null,"volumeRequestSizeOverhead":null,"editable":true,"hint":"URL opened on each new tab.","name":"New Tab URL","placeholder":null,"type":"STRING","uiPriority":890,"value":"","variable":"REEMO_NEW_TAB_URL","optional":false},
    {"conditionOp":null,"conditionVal":"","conditionVar":"","defaultValue":null,"intMax":null,"intMin":null,"intStep":null,"volumeName":null,"volumeTarget":null,"volumeStorageClass":null,"volumeAccessMode":null,"volumeMode":null,"volumeRequestSize":null,"volumeRequestSizeOverhead":null,"editable":false,"hint":null,"name":"2","placeholder":null,"type":"SELECT_OPTION","uiPriority":40,"value":"2","variable":"REEMO_LIMIT_MONITOR","optional":false},
    {"conditionOp":null,"conditionVal":"","conditionVar":"","defaultValue":null,"intMax":null,"intMin":null,"intStep":null,"volumeName":null,"volumeTarget":null,"volumeStorageClass":null,"volumeAccessMode":null,"volumeMode":null,"volumeRequestSize":null,"volumeRequestSizeOverhead":null,"editable":false,"hint":null,"name":"1","placeholder":null,"type":"SELECT_OPTION","uiPriority":50,"value":"1","variable":"REEMO_LIMIT_MONITOR","optional":false},
    {"conditionOp":null,"conditionVal":"","conditionVar":"","defaultValue":null,"intMax":null,"intMin":null,"intStep":null,"volumeName":null,"volumeTarget":null,"volumeStorageClass":null,"volumeAccessMode":null,"volumeMode":null,"volumeRequestSize":null,"volumeRequestSizeOverhead":null,"editable":false,"hint":null,"name":"Direct connection (no proxy)","placeholder":null,"type":"SELECT_OPTION","uiPriority":5,"value":"direct","variable":"REEMO_PROXY_MODE","optional":false},
    {"conditionOp":null,"conditionVal":"","conditionVar":"","defaultValue":null,"intMax":null,"intMin":null,"intStep":null,"volumeName":null,"volumeTarget":null,"volumeStorageClass":null,"volumeAccessMode":null,"volumeMode":null,"volumeRequestSize":null,"volumeRequestSizeOverhead":null,"editable":false,"hint":null,"name":"Navy","placeholder":null,"type":"SELECT_OPTION","uiPriority":30,"value":"#0a3d62","variable":"REEMO_BACKGROUND_COLOR","optional":false},
    {"conditionOp":null,"conditionVal":"","conditionVar":"","defaultValue":null,"intMax":null,"intMin":null,"intStep":null,"volumeName":null,"volumeTarget":null,"volumeStorageClass":null,"volumeAccessMode":null,"volumeMode":null,"volumeRequestSize":null,"volumeRequestSizeOverhead":null,"editable":false,"hint":null,"name":"External proxy (upstream)","placeholder":null,"type":"SELECT_OPTION","uiPriority":15,"value":"external","variable":"REEMO_PROXY_MODE","optional":false},
    {"conditionOp":null,"conditionVal":"","conditionVar":"","defaultValue":null,"intMax":null,"intMin":null,"intStep":null,"volumeName":null,"volumeTarget":null,"volumeStorageClass":null,"volumeAccessMode":null,"volumeMode":null,"volumeRequestSize":null,"volumeRequestSizeOverhead":null,"editable":false,"hint":null,"name":"Dark","placeholder":null,"type":"SELECT_OPTION","uiPriority":5,"value":"#1e1e1e","variable":"REEMO_BACKGROUND_COLOR","optional":false},
    {"conditionOp":null,"conditionVal":"","conditionVar":"","defaultValue":null,"intMax":null,"intMin":null,"intStep":null,"volumeName":null,"volumeTarget":null,"volumeStorageClass":null,"volumeAccessMode":null,"volumeMode":null,"volumeRequestSize":null,"volumeRequestSizeOverhead":null,"editable":false,"hint":null,"name":"URL filtering (allow / block websites)","placeholder":null,"type":"SELECT_OPTION","uiPriority":10,"value":"filter","variable":"REEMO_PROXY_MODE","optional":false},
    {"conditionOp":null,"conditionVal":"","conditionVar":"","defaultValue":"direct","intMax":null,"intMin":null,"intStep":null,"volumeName":null,"volumeTarget":null,"volumeStorageClass":null,"volumeAccessMode":null,"volumeMode":null,"volumeRequestSize":null,"volumeRequestSizeOverhead":null,"editable":true,"hint":"How the browser reaches the web. Direct: no proxy. URL filtering: route through a local proxy that allows or blocks websites. External proxy: route all traffic through an upstream proxy.","name":"Proxy Mode","placeholder":null,"type":"SELECT","uiPriority":850,"value":"","variable":"REEMO_PROXY_MODE","optional":false},
    {"conditionOp":null,"conditionVal":"","conditionVar":"","defaultValue":null,"intMax":null,"intMin":null,"intStep":null,"volumeName":null,"volumeTarget":null,"volumeStorageClass":null,"volumeAccessMode":null,"volumeMode":null,"volumeRequestSize":null,"volumeRequestSizeOverhead":null,"editable":false,"hint":null,"name":"Custom URL","placeholder":null,"type":"SELECT_OPTION","uiPriority":20,"value":"custom","variable":"REEMO_NEW_TAB","optional":false},
    {"conditionOp":null,"conditionVal":"","conditionVar":"","defaultValue":null,"intMax":null,"intMin":null,"intStep":null,"volumeName":null,"volumeTarget":null,"volumeStorageClass":null,"volumeAccessMode":null,"volumeMode":null,"volumeRequestSize":null,"volumeRequestSizeOverhead":null,"editable":false,"hint":null,"name":"4","placeholder":null,"type":"SELECT_OPTION","uiPriority":20,"value":"4","variable":"REEMO_LIMIT_MONITOR","optional":false},
    {"conditionOp":null,"conditionVal":"","conditionVar":"","defaultValue":null,"intMax":null,"intMin":null,"intStep":null,"volumeName":null,"volumeTarget":null,"volumeStorageClass":null,"volumeAccessMode":null,"volumeMode":null,"volumeRequestSize":null,"volumeRequestSizeOverhead":null,"editable":false,"hint":null,"name":"Blank page","placeholder":null,"type":"SELECT_OPTION","uiPriority":10,"value":"BLANK","variable":"REEMO_NEW_TAB","optional":false},
    {"conditionOp":"EQUAL","conditionVal":"url","conditionVar":"REEMO_HOME_MODE","defaultValue":"https://reemo.io","intMax":null,"intMin":null,"intStep":null,"volumeName":null,"volumeTarget":null,"volumeStorageClass":null,"volumeAccessMode":null,"volumeMode":null,"volumeRequestSize":null,"volumeRequestSizeOverhead":null,"editable":true,"hint":"Page loaded when the session starts.","name":"Start URL / Homepage","placeholder":null,"type":"STRING","uiPriority":1000,"value":"","variable":"REEMO_HOME","optional":false},
    {"conditionOp":null,"conditionVal":"","conditionVar":"","defaultValue":null,"intMax":null,"intMin":null,"intStep":null,"volumeName":null,"volumeTarget":null,"volumeStorageClass":null,"volumeAccessMode":null,"volumeMode":null,"volumeRequestSize":null,"volumeRequestSizeOverhead":null,"editable":false,"hint":null,"name":"Black","placeholder":null,"type":"SELECT_OPTION","uiPriority":20,"value":"#000000","variable":"REEMO_BACKGROUND_COLOR","optional":false},
    {"conditionOp":null,"conditionVal":"","conditionVar":"","defaultValue":null,"intMax":null,"intMin":null,"intStep":null,"volumeName":null,"volumeTarget":null,"volumeStorageClass":null,"volumeAccessMode":null,"volumeMode":null,"volumeRequestSize":null,"volumeRequestSizeOverhead":null,"editable":false,"hint":null,"name":"Blocklist (allow by default)","placeholder":null,"type":"SELECT_OPTION","uiPriority":5,"value":"blocklist","variable":"REEMO_FILTER_LOGIC","optional":false},
    {"conditionOp":"EQUAL","conditionVal":"filter","conditionVar":"REEMO_PROXY_MODE","defaultValue":null,"intMax":null,"intMin":null,"intStep":null,"volumeName":null,"volumeTarget":null,"volumeStorageClass":null,"volumeAccessMode":null,"volumeMode":null,"volumeRequestSize":null,"volumeRequestSizeOverhead":null,"editable":true,"hint":"Allowlist: block everything except the listed websites. Blocklist: allow everything except the listed websites.","name":"Filtering Logic","placeholder":null,"type":"SELECT","uiPriority":840,"value":"","variable":"REEMO_FILTER_LOGIC","optional":false},
    {"conditionOp":null,"conditionVal":"","conditionVar":"","defaultValue":"Bookmarks","intMax":null,"intMin":null,"intStep":null,"volumeName":null,"volumeTarget":null,"volumeStorageClass":null,"volumeAccessMode":null,"volumeMode":null,"volumeRequestSize":null,"volumeRequestSizeOverhead":null,"editable":true,"hint":"Name of the bookmarks folder shown in the bar.","name":"Bookmarks Folder Name","placeholder":null,"type":"STRING","uiPriority":520,"value":"","variable":"REEMO_BOOKMARKS_NAME","optional":true},
    {"conditionOp":null,"conditionVal":"","conditionVar":"","defaultValue":"#896FFB","intMax":null,"intMin":null,"intStep":null,"volumeName":null,"volumeTarget":null,"volumeStorageClass":null,"volumeAccessMode":null,"volumeMode":null,"volumeRequestSize":null,"volumeRequestSizeOverhead":null,"editable":true,"hint":null,"name":"Background Color","placeholder":null,"type":"SELECT","uiPriority":490,"value":"","variable":"REEMO_BACKGROUND_COLOR","optional":false},
    {"conditionOp":null,"conditionVal":"","conditionVar":"","defaultValue":null,"intMax":null,"intMin":null,"intStep":null,"volumeName":null,"volumeTarget":null,"volumeStorageClass":null,"volumeAccessMode":null,"volumeMode":null,"volumeRequestSize":null,"volumeRequestSizeOverhead":null,"editable":false,"hint":null,"name":"White","placeholder":null,"type":"SELECT_OPTION","uiPriority":30,"value":"#ffffff","variable":"REEMO_BACKGROUND_COLOR","optional":false},
    {"conditionOp":null,"conditionVal":"","conditionVar":"","defaultValue":null,"intMax":null,"intMin":null,"intStep":null,"volumeName":null,"volumeTarget":null,"volumeStorageClass":null,"volumeAccessMode":null,"volumeMode":null,"volumeRequestSize":null,"volumeRequestSizeOverhead":null,"editable":true,"hint":"Bookmarks as Name|URL pairs, comma-separated (e.g. Reemo|https://reemo.io,Docs|https://docs.reemo.io).","name":"Bookmarks","placeholder":null,"type":"STRING","uiPriority":510,"value":"","variable":"REEMO_BOOKMARKS","optional":true},
    {"conditionOp":null,"conditionVal":"","conditionVar":"","defaultValue":"5","intMax":null,"intMin":null,"intStep":null,"volumeName":null,"volumeTarget":null,"volumeStorageClass":null,"volumeAccessMode":null,"volumeMode":null,"volumeRequestSize":null,"volumeRequestSizeOverhead":null,"editable":true,"hint":null,"name":"Monitor Limit","placeholder":null,"type":"SELECT","uiPriority":480,"value":"","variable":"REEMO_LIMIT_MONITOR","optional":false},
    {"conditionOp":null,"conditionVal":"","conditionVar":"","defaultValue":null,"intMax":null,"intMin":null,"intStep":null,"volumeName":null,"volumeTarget":null,"volumeStorageClass":null,"volumeAccessMode":null,"volumeMode":null,"volumeRequestSize":null,"volumeRequestSizeOverhead":null,"editable":false,"hint":null,"name":"3","placeholder":null,"type":"SELECT_OPTION","uiPriority":30,"value":"3","variable":"REEMO_LIMIT_MONITOR","optional":false},
    {"conditionOp":null,"conditionVal":"","conditionVar":"","defaultValue":"false","intMax":null,"intMin":null,"intStep":null,"volumeName":null,"volumeTarget":null,"volumeStorageClass":null,"volumeAccessMode":null,"volumeMode":null,"volumeRequestSize":null,"volumeRequestSizeOverhead":null,"editable":true,"hint":"Allows the browser to resolve and display URLs using the local file:// protocol.","name":"Local file navigation (file://)","placeholder":null,"type":"SELECT","uiPriority":805,"value":"","variable":"REEMO_ALLOW_FILE_PROTOCOL","optional":false},
    {"conditionOp":null,"conditionVal":"","conditionVar":"","defaultValue":null,"intMax":null,"intMin":null,"intStep":null,"volumeName":null,"volumeTarget":null,"volumeStorageClass":null,"volumeAccessMode":null,"volumeMode":null,"volumeRequestSize":null,"volumeRequestSizeOverhead":null,"editable":false,"hint":null,"name":"Enabled","placeholder":null,"type":"SELECT_OPTION","uiPriority":10,"value":"true","variable":"REEMO_ALLOW_FILE_PROTOCOL","optional":false},
    {"conditionOp":null,"conditionVal":"","conditionVar":"","defaultValue":null,"intMax":null,"intMin":null,"intStep":null,"volumeName":null,"volumeTarget":null,"volumeStorageClass":null,"volumeAccessMode":null,"volumeMode":null,"volumeRequestSize":null,"volumeRequestSizeOverhead":null,"editable":false,"hint":null,"name":"Disabled","placeholder":null,"type":"SELECT_OPTION","uiPriority":5,"value":"false","variable":"REEMO_ALLOW_FILE_PROTOCOL","optional":false},
    {"conditionOp":null,"conditionVal":"","conditionVar":"","defaultValue":"fr","intMax":null,"intMin":null,"intStep":null,"volumeName":null,"volumeTarget":null,"volumeStorageClass":null,"volumeAccessMode":null,"volumeMode":null,"volumeRequestSize":null,"volumeRequestSizeOverhead":null,"editable":true,"hint":"Keyboard layout for the session.","name":"Keyboard","placeholder":null,"type":"SELECT","uiPriority":470,"value":"","variable":"REEMO_KEYMAP","optional":false},
    {"conditionOp":null,"conditionVal":"","conditionVar":"","defaultValue":null,"intMax":null,"intMin":null,"intStep":null,"volumeName":null,"volumeTarget":null,"volumeStorageClass":null,"volumeAccessMode":null,"volumeMode":null,"volumeRequestSize":null,"volumeRequestSizeOverhead":null,"editable":false,"hint":null,"name":"English","placeholder":null,"type":"SELECT_OPTION","uiPriority":30,"value":"us","variable":"REEMO_KEYMAP","optional":false},
    {"conditionOp":null,"conditionVal":"","conditionVar":"","defaultValue":null,"intMax":null,"intMin":null,"intStep":null,"volumeName":null,"volumeTarget":null,"volumeStorageClass":null,"volumeAccessMode":null,"volumeMode":null,"volumeRequestSize":null,"volumeRequestSizeOverhead":null,"editable":false,"hint":null,"name":"French","placeholder":null,"type":"SELECT_OPTION","uiPriority":20,"value":"fr","variable":"REEMO_KEYMAP","optional":false},
    {"conditionOp":null,"conditionVal":"","conditionVar":"","defaultValue":null,"intMax":null,"intMin":null,"intStep":null,"volumeName":null,"volumeTarget":null,"volumeStorageClass":null,"volumeAccessMode":null,"volumeMode":null,"volumeRequestSize":null,"volumeRequestSizeOverhead":null,"editable":false,"hint":null,"name":"Sweden","placeholder":null,"type":"SELECT_OPTION","uiPriority":10,"value":"sv","variable":"REEMO_KEYMAP","optional":false},
    {"conditionOp":null,"conditionVal":"","conditionVar":"","defaultValue":"Europe/Paris","intMax":null,"intMin":null,"intStep":null,"volumeName":null,"volumeTarget":null,"volumeStorageClass":null,"volumeAccessMode":null,"volumeMode":null,"volumeRequestSize":null,"volumeRequestSizeOverhead":null,"editable":true,"hint":"Time zone for the session.","name":"Timezone","placeholder":null,"type":"SELECT","uiPriority":460,"value":"","variable":"REEMO_TIMEZONE","optional":false},
    {"conditionOp":null,"conditionVal":"","conditionVar":"","defaultValue":null,"intMax":null,"intMin":null,"intStep":null,"volumeName":null,"volumeTarget":null,"volumeStorageClass":null,"volumeAccessMode":null,"volumeMode":null,"volumeRequestSize":null,"volumeRequestSizeOverhead":null,"editable":false,"hint":null,"name":"Europe/Paris","placeholder":null,"type":"SELECT_OPTION","uiPriority":30,"value":"Europe/Paris","variable":"REEMO_TIMEZONE","optional":false},
    {"conditionOp":null,"conditionVal":"","conditionVar":"","defaultValue":null,"intMax":null,"intMin":null,"intStep":null,"volumeName":null,"volumeTarget":null,"volumeStorageClass":null,"volumeAccessMode":null,"volumeMode":null,"volumeRequestSize":null,"volumeRequestSizeOverhead":null,"editable":false,"hint":null,"name":"Europe/London","placeholder":null,"type":"SELECT_OPTION","uiPriority":20,"value":"Europe/London","variable":"REEMO_TIMEZONE","optional":false},
    {"conditionOp":null,"conditionVal":"","conditionVar":"","defaultValue":null,"intMax":null,"intMin":null,"intStep":null,"volumeName":null,"volumeTarget":null,"volumeStorageClass":null,"volumeAccessMode":null,"volumeMode":null,"volumeRequestSize":null,"volumeRequestSizeOverhead":null,"editable":false,"hint":null,"name":"Europe/Stockholm","placeholder":null,"type":"SELECT_OPTION","uiPriority":10,"value":"Europe/Stockholm","variable":"REEMO_TIMEZONE","optional":false},
    {"conditionOp":"EQUAL","conditionVal":"html","conditionVar":"REEMO_HOME_MODE","defaultValue":null,"intMax":null,"intMin":null,"intStep":null,"volumeName":null,"volumeTarget":null,"volumeStorageClass":null,"volumeAccessMode":null,"volumeMode":null,"volumeRequestSize":null,"volumeRequestSizeOverhead":null,"editable":true,"hint":"Paste raw HTML to use as the session start page. The page is served locally and hardened: scripts and remote resources are disabled, so images must be inlined as data: URIs. Keep it under ~128 KB.","name":"Custom Homepage (HTML)","placeholder":null,"type":"TEXT","uiPriority":995,"value":"","variable":"REEMO_CUSTOM_HTML","optional":true},
    {"conditionOp":null,"conditionVal":"","conditionVar":"","defaultValue":null,"intMax":null,"intMin":null,"intStep":null,"volumeName":null,"volumeTarget":null,"volumeStorageClass":null,"volumeAccessMode":null,"volumeMode":null,"volumeRequestSize":null,"volumeRequestSizeOverhead":null,"editable":false,"hint":null,"name":"Same as start page","placeholder":null,"type":"SELECT_OPTION","uiPriority":15,"value":"CUSTOM_HTML","variable":"REEMO_NEW_TAB","optional":false},
    {"conditionOp":null,"conditionVal":"","conditionVar":"","defaultValue":"url","intMax":null,"intMin":null,"intStep":null,"volumeName":null,"volumeTarget":null,"volumeStorageClass":null,"volumeAccessMode":null,"volumeMode":null,"volumeRequestSize":null,"volumeRequestSizeOverhead":null,"editable":true,"hint":"What the session opens on. URL: a normal web address. Custom HTML page: paste your own HTML below.","name":"Start Page","placeholder":null,"type":"SELECT","uiPriority":1010,"value":"","variable":"REEMO_HOME_MODE","optional":false},
    {"conditionOp":null,"conditionVal":"","conditionVar":"","defaultValue":null,"intMax":null,"intMin":null,"intStep":null,"volumeName":null,"volumeTarget":null,"volumeStorageClass":null,"volumeAccessMode":null,"volumeMode":null,"volumeRequestSize":null,"volumeRequestSizeOverhead":null,"editable":false,"hint":null,"name":"URL","placeholder":null,"type":"SELECT_OPTION","uiPriority":20,"value":"url","variable":"REEMO_HOME_MODE","optional":false},
    {"conditionOp":null,"conditionVal":"","conditionVar":"","defaultValue":null,"intMax":null,"intMin":null,"intStep":null,"volumeName":null,"volumeTarget":null,"volumeStorageClass":null,"volumeAccessMode":null,"volumeMode":null,"volumeRequestSize":null,"volumeRequestSizeOverhead":null,"editable":false,"hint":null,"name":"Custom HTML page","placeholder":null,"type":"SELECT_OPTION","uiPriority":10,"value":"html","variable":"REEMO_HOME_MODE","optional":false}
  ],
  "links": [],
  "usePushNotifications": false,
  "assignableToProvider": true,
  "os": null,
  "vmStartMode": null,
  "vmCreationMode": null,
  "vmCreationDate": null,
  "vmPersistentDisk": null,
  "official": false
}

Configuration and deployment

Image information

  • Image:

registry.reemo.io/reemosbhttps:latest
  • Internal browser: ungoogled-Chromium

Choosing the start page

The Start Page selector determines what the session displays on opening. Only one of the two following fields is visible at a time, depending on the option chosen.

Option

Associated field and behavior

URL (default)

Start URL / Homepage: a regular web address loaded when the session starts. Default value: https://reemo.io.

Custom HTML page

Custom Homepage (HTML): your own HTML code, pasted into the form, becomes the start page. See the next section.

Custom HTML homepage

Display your own page when the browser opens: a portal of internal links, a welcome message, your team’s guidelines. You paste HTML, and it becomes the session’s start page.

How to enable it

  1. Start PageCustom HTML page

  2. Custom Homepage (HTML) → paste your code

  3. Optional — New Tab PageSame as start page, so new tabs also open this page. The address bar then stays empty.

What works

Text, headings, tables, and lists · CSS formatting (<style> and style=”…” attributes) · links to your sites, subject to the session’s URL filtering like anywhere else · forms · images, provided they are embedded directly in the code as a data: URI.

What deliberately does not work

  • No JavaScript: <script> tags, onclick attributes, and javascript: links have no effect.

  • No resource loaded from the Internet: an image, font, or stylesheet referenced by URL will not display.

  • <iframe> elements do not display.

The page is displayed in the deliberately locked-down browser. Rather than “cleaning up” your code, the browser is instructed to execute nothing and contact no one. Your HTML is never modified: it is displayed as-is, inside a frame that prevents it from acting.

Tip

Good to know

  • Maximum size of about 128 KB, embedded images included.

  • For a logo, convert it to a data: URI and use <img src=”data:image/png;base64,…”>.

  • For a regular web address, leave Start Page on URL.

Controlling new tabs

The New Tab Page selector determines what a new tab displays.

Option

Behavior

Blank page (default)

Empty tab.

Custom URL

Shows the New Tab URL field: the address opened on every new tab.

Same as start page

Opens the same page as the session start: the custom HTML page if you set one, otherwise the Start URL.

Note

With Same as start page and a custom HTML page, the session’s address bar stays empty at startup, on the Home button, and on new tabs. This is the setting to prefer for an internal portal.

Filtering navigation

The Proxy Mode selector determines how the browser reaches the web.

Option

Behavior

Direct connection (no proxy) (default)

Direct access, no URL filtering.

URL filtering (allow / block websites)

Turns the session into a filtered gateway. Shows the Filtering Logic selector.

External proxy (upstream)

Shows the Upstream Proxy (host:port) field: all browser traffic is routed to this existing proxy (e.g. proxy.corp.local:3128).

In URL filtering mode, the Filtering Logic selector chooses the direction of the rule.

Option

Semantics

Allowlist (deny by default)

Everything is blocked except the sites listed in Allowed Websites.

Blocklist (allow by default)

Everything is allowed except the sites listed in Blocked Websites.

Both fields accept a comma-separated list. Each entry can take one of the following forms:

Form

Scope

reemo.io

This single host.

*.github.com

All subdomains of github.com.

https://site.com/app

Full URL with a path prefix.

*://*.cdn.net/*

Generic URL pattern.

Note

Filtering applies to all navigation, including a link followed from inside a page or from your custom homepage. A denied address shows a block page instead of loading.

Allowing navigation into local files

The Local file navigation (file://) selector controls the browser’s access to file:// addresses.

Option

Behavior

Disabled (default)

file:// addresses are blocked: the session cannot act as a file browser for the container.

Enabled

The browser can resolve and display file:// addresses.

Warning

Only enable this option if a specific use case requires it. Left disabled, it prevents the end user from browsing the container’s internal filesystem from the address bar.

Publishing bookmarks

Field

Description

Bookmarks

Comma-separated list of Name|URL pairs, e.g. Reemo|https://reemo.io,Docs|https://docs.reemo.io.

Bookmarks Folder Name

Name of the folder shown in the bookmarks bar. Default: Bookmarks.

The folder is pushed by policy: the end user can neither edit nor delete it.

Configuring the session

Field

Description

Monitor Limit

Maximum number of screens usable in the session, from 1 to 5. Default: 5.

Background Color

Desktop background color: Reemo (default), Navy, Dark, Black, White.

Keyboard

Session keyboard layout: French (default), English, Sweden.

Timezone

Session time zone: Europe/Paris (default), Europe/London, Europe/Stockholm.

Usage guide

Opening the session

When the Reemo session opens, the browser starts directly on the page defined by Start Page. No installation or configuration is required from the user.

Managing windows

A taskbar is present at the bottom of each session screen and lists open windows. The Reemo logo button, on the left of the bar, opens a menu containing the New window entry: it opens an additional browser window on the session’s start page, at any time.

Entering credentials from the Reemo portal

When the session is linked to a secret from the Reemo credentials portal, the user has no password to know:

  1. Open the target site’s login page.

  2. A Reemo logo badge appears on the username field.

  3. Clicking the badge (or the empty field) opens the credential picker.

  4. Choose the entry: both the username and the password are filled in.

Note

The secret is never written to the container’s disk, and never shown in clear text to the end user. The component that holds it runs under a dedicated system account, separate from the browser’s.

Transferring files

When file transfer is enabled for the session, the image exposes a Transfer directory, accessible from the Reemo browser’s Files menu. This directory is also the browser’s download folder: a file downloaded in the session is dropped there directly, ready to be retrieved on the workstation.

Warning

The Transfer space is ephemeral. Remember to retrieve your files to your local workstation before closing the session: data does not survive the container stopping.

Security Constraints

The browser is permanently locked down. This is not a deployment option: the following restrictions apply to every session.

  • No access to browser configuration: settings pages, the extension manager, and internal chrome:// and about:// pages are inaccessible.

  • No developer tools: the console and inspector are disabled.

  • Locked extensions: the two Reemo extensions (credential injection, security and logging) can be neither disabled nor removed by the end user, and no other extension can be installed.

  • Disabled features: account sync, the built-in password manager, browsing history, printing, private browsing, search suggestions, and telemetry.

  • Full navigation logging: every request issued by the session (method and URL) is recorded in the container’s logs, with the Reemo user’s identity on every line. A session’s activity can therefore be reconstructed after the fact.

Changelog

v1.0.0 (2026-09-01)

First public release of the HTTPS Bastion Reemo image: a locked-down ungoogled-Chromium session, delivered in the browser through Reemo, that gives controlled access to web applications without exposing a browser installed on the user’s workstation.

Added

  • Web access through a locked-down browser. The session opens an ungoogled-Chromium window the end user cannot reconfigure or repurpose: the settings pages, the extension manager, the internal browser pages and the developer tools are all unreachable, and local file navigation is refused unless a deployment enables it explicitly. Sync, the built-in password manager, browsing history, printing and telemetry are disabled, and the two Reemo extensions are locked in place — the user can neither remove them nor install any other.

  • URL filtering, allowlist or blocklist. The session can act as a filtered gateway: either everything is blocked except the websites you list, or everything is allowed except those you list. Filtering applies to any navigation, including a link followed from inside a page, and a refused address shows a block page instead of loading. Alternatively, all browser traffic can be routed through an existing corporate proxy.

  • Custom start page written in HTML. Instead of a URL, the session can open on a page you supply as raw HTML — an internal link portal, a welcome message, your team’s instructions. It is served locally and displayed exactly as written, inside a frame that prevents it from running scripts or reaching the internet. New tabs can open on that same page, on a blank page, or on a URL of your choice.

  • Credential injection from the Reemo credential portal. A secret held in the portal is resolved when the session starts and offered on the target site’s login form: a Reemo badge appears on the username field, and one click fills username and password. The secret is never written to disk and never shown to the end user, and the component holding it runs under its own system account, isolated from the browser.

  • Full navigation audit. Every request the session issues is recorded in the container logs with per-line attribution to the Reemo user, so what was accessed during a session can be reconstructed afterwards. All subsystems of the image write to a single log format aligned with the rest of the Reemo platform, which makes the container output directly usable for operations and log collection.

  • Bidirectional file transfer. Files move between the user’s workstation and the session through a dedicated Transfer folder, which is also the browser’s download directory: a downloaded file lands there ready to be retrieved. Transfer can be disabled entirely for a deployment, in which case the browser’s file dialogs are closed off as well.

  • Multi-monitor desktop with a per-screen taskbar. The session can use several screens, added or removed on the fly, and resizes with the browser window. A taskbar on each screen manages the open windows, and its Reemo logo button opens a locked menu that can open another browser window at any time. The number of usable screens and the desktop background color are configurable.

  • Managed bookmarks, keyboard layout and time zone. A read-only bookmarks folder can be pushed into the bar, and the session’s keyboard layout and time zone are chosen at deployment.

Versions

Images published on registry.reemo.io/reemosbhttps. Each build exposes these pullable tags:

  • Latest (:latest) – the latest published release

  • Release (:vX.Y.Z) – always tracks the latest build of this version

  • Build (:vX.Y.Z-N) – a specific, frozen weekly build

  • Image (:<id>) – immutable reference to this exact build

Example: docker pull registry.reemo.io/reemosbhttps:vX.Y.Z-N

v1.0.0-1 (2026-09-01)

Release

v1.0.0

Build

v1.0.0-1

Image

ff9e3773bf84

Digest

sha256:ff9e3773bf84c0982ef6c08f457c49b3f8a96c99f12cd137102274ef2959d684

Applications

151.0.7922.173

Reemo Agent

2.5.10

OS

“Debian GNU/Linux 13 (trixie)”

Size

625.88 MB

Patched CVEs

first release (no comparison)