Prepare WebSSH for self-hosted deployment
This commit is contained in:
+31
-3
@@ -49,7 +49,29 @@ Quickstart
|
||||
1. Install this app, run command ``pip install webssh``
|
||||
2. Start a webserver, run command ``wssh``
|
||||
3. Open your browser, navigate to ``127.0.0.1:8888``
|
||||
4. Input your data, submit the form.
|
||||
4. Create the WebSSH administrator account on first visit
|
||||
5. Input your ssh data, submit the form.
|
||||
|
||||
WebSSH login and saved connections
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
WebSSH requires a login before opening ssh sessions. On first startup, if
|
||||
no administrator password has been configured, the login page will ask you
|
||||
to create one. The password is stored as a PBKDF2 hash under the data
|
||||
directory, not as plain text.
|
||||
|
||||
You can also provide credentials with environment variables:
|
||||
|
||||
.. code:: bash
|
||||
|
||||
WEBSSH_AUTH_USERNAME=admin WEBSSH_AUTH_PASSWORD='strong-password' wssh
|
||||
|
||||
Saved connections are stored under the data directory too. WebSSH saves
|
||||
hostname, port, username and terminal type for quick reconnects. It does
|
||||
not persist ssh passwords, private keys, key passphrases or TOTP codes.
|
||||
|
||||
Use ``--auth=false`` only for a trusted private deployment where another
|
||||
layer already protects access to WebSSH.
|
||||
|
||||
Server options
|
||||
~~~~~~~~~~~~~~
|
||||
@@ -71,6 +93,9 @@ Server options
|
||||
# log to file
|
||||
wssh --log-file-prefix=main.log
|
||||
|
||||
# data directory for login and saved connection data
|
||||
wssh --data-dir='/path/to/webssh-data'
|
||||
|
||||
# more options
|
||||
wssh --help
|
||||
|
||||
@@ -162,13 +187,16 @@ Start up the app
|
||||
|
||||
::
|
||||
|
||||
docker-compose up
|
||||
docker compose up -d
|
||||
|
||||
Tear down the app
|
||||
|
||||
::
|
||||
|
||||
docker-compose down
|
||||
docker compose down
|
||||
|
||||
The bundled compose file persists login and saved connection data in the
|
||||
``webssh-data`` volume mounted at ``/data`` inside the container.
|
||||
|
||||
Tests
|
||||
~~~~~
|
||||
|
||||
Reference in New Issue
Block a user