macchina.io REMOTE Login (remote-login)
March 28, 2026 ยท View on GitHub
remote-login is a command-line program that obtains an OAuth 2.0 token (JWT) from
the macchina.io REMOTE server. The program will ask the user for their
username and password (unless these are provided via command-line parameters).
The program then uses the macchina.io REMOTE server API to request a token, using the given credentials. If the user has two-factor authentication enabled on the server, the program will also ask for a time-based one-time password (TOTP), typically provided by an authenticator app like Authy or Google Authenticator.
The received token will then be stored in the file .remote-credentials.properties
in the user's home directory. If present, this file will be read by all macchina.io REMOTE
client programs (remote-client, remote-ssh, etc.) on startup, and the stored
token will be used for authentication against the macchina.io REMOTE server.
The main advantage of remote-login over using environment variables or
configuration files to store the credentials is that only the token is
stored on the local machine. The token has a limited validity, typically
24 hours, controlled through the macchina.io REMOTE server configuration.
Running remote-login
At startup, remote-login will look for a configuration file named
.remote-login.properties in the current user's home directory, and read it if it's present.
To request a token, run remote-login without parameters. The program will ask
for a username and password, and, if two-factor authentication has been enabled for
the user, will also ask for a time-based one-time password.
If no further command-line parameters or configuration files are given, remote-login
will use https://remote.macchina.io to obtain the token. To use a different server,
specify the --reflector-uri command-line parameter, e.g.:
remote-login --reflector-uri=https://remote.company.com
Alternatively, you can create a configuration file
(.remote-login.properties in the home directory) containing:
remote.reflectorURI = https://remote.company.com
To check the validity of an existing token, run:
remote-login --status
To clear the token (and delete the .remote-credentials.properties file), run:
remote-login --clear
Command-Line Arguments Help
You can run remote-login without command-line options (or with --help
or /help on Windows) to see a help screen with available command-line options.
Configuration
SSL/TLS Configuration
Please refer to the WebTunnelAgent
documentation for SSL/TLS configuration settings.
HTTP Proxy Configuration
Please refer to the WebTunnelAgent
documentation for configuring a HTTP proxy, including proxy credentials.