$ git clone https://github.com/cockpit-project/cockpit.git
$ cd cockpit
$ sudo apt-get install nodejs npm
$ sudo npm install -g phantomjs
$ sudo apt-get install -y dh-autoreconf intltool libglib2.0-dev \
xsltproc libsystemd-daemon-dev libsystemd-journal-dev libdbus-1-dev \
libjson-glib-dev libpolkit-agent-1-dev libkrb5-dev libssh-dev \
libpam0g-dev libkeyutils-dev libpcp3-dev libpcp-import1-dev xmlto\
libpcp-pmda3-dev
$ mkdir build
$ cd build/
$ sudo ../autogen.sh --prefix=/usr --enable-maintainer-mode --enable-debug
$ make
$ sudo make install
$ sudo cp ../src/bridge/cockpit.pam.insecure /etc/pam.d/cockpit
$ sudo sh -c "cat ../src/bridge/sshd-reauthorize.pam >> /etc/pam.d/sshd"
$ make check
Once Cockpit has been installed, the normal way to run it is via systemd:
# systemctl start cockpit.socket
This will cause systemd to listen on port 9090 and start cockpit-ws when someone connects to it. Cockpit-ws will in turn activate cockpit-bridge when someone logs in successfully.
To run Cockpit without systemd, start the cockpit-ws daemon manually:
# /usr/libexec/cockpit-ws --no-tls
Then you can connect to port 9090 of the host machine.