cockpit
Administer Linux servers via web browser
SYNOPSIS
cockpit [OPTIONS...] [HOST]
cockpit [OPTIONS...] PATH
PARAMETERS
HOST
The remote host to connect to via SSH. If omitted, connects to localhost if `PATH` is not provided.
PATH
A local Cockpit component (e.g., an HTML file) to launch directly, bypassing the full web service.
--help
Display a help message and exit.
--version
Show the program's version number and exit.
--port PORT
Connect to the Cockpit web service on the specified port, typically 9090.
--user USER
Connect to the remote host as the specified user, overriding the current user.
--local-ssh
Force the client to connect to the local machine using SSH, even if it's localhost.
--shell
Launch an interactive shell instead of the web interface after connecting to the host.
--debug
Enable debug logging, showing more detailed information about the client's operations.
--no-desktop
Do not attempt to open a desktop web browser, even if a graphical environment is detected.
DESCRIPTION
The cockpit command is an interactive client for the Cockpit web service, a modern, web-based graphical interface for Linux servers. It allows users to manage and monitor their systems through a web browser, providing a user-friendly way to view logs, manage services, configure networking, storage, virtual machines, and containers. While daily system management occurs primarily in the browser, the cockpit command-line utility itself is used to establish SSH connections to remote Cockpit instances, launch local components, or perform specific administrative and debugging tasks. It's designed to be lightweight, integrate directly with existing system APIs and tools, and offer a simple, transparent way to interact with your server.
CAVEATS
The cockpit command-line utility primarily functions as a client for establishing connections to the Cockpit web service. Most server management is performed through the web browser interface. The Cockpit web service (cockpit-ws) must be running and accessible on the target host, typically listening on port 9090, and remote connections rely on SSH for security and authentication.
ARCHITECTURE AND OPERATION
Cockpit consists of a small web server (cockpit-ws) that listens for connections, and a cockpit-bridge process that communicates with the underlying operating system. Instead of duplicating existing tools, Cockpit directly calls system tools and APIs, such as systemctl for services, journalctl for logs, and various D-Bus APIs. This design ensures that Cockpit always reflects the real state of the system and that changes made via Cockpit are consistent with those made via the command line.
DEFAULT PORT AND ACCESS
By default, the Cockpit web service listens on TCP port 9090. It typically uses HTTPS for encrypted communication. Access is authenticated using system user credentials, allowing users to log in with the same username and password they would use for SSH or local console access. It integrates with PAM, meaning existing system policies for password strength and multi-factor authentication apply.
HISTORY
Developed by Red Hat and first released around 2014, Cockpit was created to provide a modern, user-friendly, and lightweight web interface for managing Linux servers. Its design philosophy emphasizes direct integration with existing system tools and APIs rather than reimplementing functionality, ensuring transparency and reliability. Cockpit quickly gained adoption across various major Linux distributions, becoming a standard component in Fedora, CentOS, RHEL, and Ubuntu servers.
SEE ALSO
ssh(1), systemctl(1), journalctl(1), firewall-cmd(1), nmcli(1)


