Console access
Caution
We are currently in the process of migrating server console access to a new platform. This page provides documentation for the new platform only.
To check if your virtual, dedicated, or colo server has been migrated to the new platform, look for a Web Console link in the control panel. If it's there, your server has been migrated, and the rest of this page applies. Otherwise, please refer to the old support pages for virtual server consoles or dedicated servers.
Please feel free to contact support for more information.
The new console platform provides access to:
- For virtual servers:
- VNC
- Virtual serial console
- For dedicated and colo servers:
- Serial console
- IPMI Serial-over-LAN
Web access
Access is available through a web terminal in the control panel, using the "Web console" link on the corresponding server page.
For physical serial ports, this also allows changing the baud rate, sending breaks, and monitoring serial line state. For IPMI Serial-over-LAN ports, only break sending is supported.
Command line access (advanced users)
It is also possible to access consoles using our command-line out-of-band (OOB) access client, mythic-oob-client. For most users, we recommend using the web client unless you have a specific need to use the command-line client.
To install the client from our APT repository (on Debian, Ubuntu, or other Debian-based distribution):
wget -qO /etc/apt/trusted.gpg.d/support@mythic-beasts.com.asc https://mirror.mythic-beasts.com/mythic/support@mythic-beasts.com.gpg.key
echo deb http://mirror.mythic-beasts.com/mythic mythic main > /etc/apt/sources.list.d/mythic-beasts.list
apt update
apt install mythic-oob-client
The client is also available from
PyPI, the Python package
repository. If you are familiar with Python, you can install this with pip
or a similar tool. We recommend installing in a virtualenv.
Otherwise, we recommend using pipx, which is a tool that makes it easy to use scripts from Python packages. For example, on Fedora:
sudo dnf install pipx
pipx ensurepath
pipx install mythic-oobclient
Once you have installed the client, you can see the usage using the --help
option:
$ mythic-oob-client --help
usage: mythic-oob-client [-h] [-c CONFIG] [-q] [-d] {vnc,console,power} ...
Client for Mythic Beasts OOB services, version 1.0.0
positional arguments:
{vnc,console,power} Mode
vnc Connect to VPS VNC console
console Connect to server serial console
power Server power control
options:
-h, --help show this help message and exit
-c CONFIG, --config CONFIG
Config file path
-q, --quiet Quiet mode
-d, --debug Debug mode
Email support@mythic-beasts.com for help
Using the client
The first time you try to use the client, it will prompt to you configure it:
$ mythic-oob-client console vds:example
Please configure your API credentials in /home/user/.mythic/oob.conf
Edit the above file with a text editor and fill in your API key and secret, which you can get from the API Users page in the control panel. You will need to create an API key that has access to the VPS API and/or the Physical Server API (once this becomes available). You can use separate keys for the two APIs if you prefer (see the comments in the configuration file).
The examples given below use the service identifier vds:example
, but
dedicated/colo server service identifiers or asset tags can also be used
(except for VNC access).
Warning: the vnc
, console -p
, and console -t
modes will listen on a
local port and forward to your server's console. We recommend against using
these options on a multi-user system, as the forwarded port would be accessible
to anyone using the same computer.
VNC consoles
You can use the client to access a virtual server VNC console. The client will listen on a local port (default 5900), to which you will need to connect using a VNC viewer.
$ mythic-oob-client vnc vds:example
Connect to localhost, port 5900, using a VNC viewer
Press Ctrl+C to terminate
While this is running, connect to port 5900 (display 0) on localhost
with a
VNC viewer to access the VNC console of your virtual server.
For more options, run mythic-oob-client vnc --help
.
Serial consoles
You can also use the client to access serial consoles of virtual and physical servers.
There are four modes for console access:
- A terminal emulator (which includes commands for sending breaks, changing baud rate, and power control, and displays serial line state [if supported by the console])
- Forwarding the console to a local port:
- wrapped in Telnet -- so that you can connect with a Telnet client
- raw serial data -- in order to connect with your own client or script
- Raw terminal mode -- puts your terminal in raw mode and connects it to the console of your server
To use the terminal emulator:
$ mythic-oob-client console vds:example
Once inside, for help, press Ctrl+B, type help
, and press enter.
To use Telnet to access your console and run Telnet inside the client:
$ mythic-oob-client console -t 3000 -R 'telnet %h %p' vds:example
Trying ::1...
Connected to ::1.
Escape character is '^]'.
example login:
To use raw mode:
$ mythic-oob-client console -r vds:example
example login:
To end the session, you will need to send a TERM
signal to the process from
another window, or just close your terminal window.
You can also use the client to review the console log:
$ mythic-oob-client console -l 2 vds:example
2025-03-12 13:07:37: example login:
2025-03-12 13:07:37: example login:
For more details, run mythic-oob-client console --help
.
Power control
The client also support power control of physical and virtual servers. Run
mythic-oob-client power --help
for details.
Direct access to websockets
Behind the scenes, both the web terminal and the command-line client access consoles using websockets.
These websockets can also be accessed directly via our VPS API. The equivalent API for Physical Servers will be released shortly.
The APIs provide console capabilities (whether a console can set baud rate, send breaks, etc.) and one-time token URLs for websockets. These URLs expire once used, or after five minutes. Please refer to the API documentation for details.
Multiple types of websocket are supported for serial or virtual server consoles:
serial
: plain serial datatelnet
: serial data wrapped in Telnet (can be used if you want to access your console with a Telnet client)state
: JSON messages with port state updates (baud rate, serial line state) (only on physical serial ports)
The APIs also provide access to console logs and the ability to send breaks (where supported). Again, please refer to the API docs for details.