Quantcast
Channel: ssh – Homputer Security
Viewing all articles
Browse latest Browse all 14

Découvrez webssh, le client ssh à travers votre navigateur

$
0
0


Webssh est une application web qui vous permet de vous connecter à vos serveurs ssh à travers votre navigateur. Cette application écrite en Python3, utilise notamment les bibliothèques tornado, paramiko et xterm.js.

Ci-dessous quelques caractéristiques:
_ Support de l’authentification avec mot de passe, y compris les mots de passe vides.
_ Support de l’authentification avec clé publique y compris les clés DSA RSA ECDSA Ed25519.
_ Support des clés chiffrées.
_ Support de l’authentification à deux facteurs (avec TOTP).
_ Support de mode plein écran du terminal.
_ Fenêtre du terminal redimensionnable.
_ Support de tous les navigateurs modernes y compris Chrome, Safari, Firefox, Edge, Opera.
_ Détection automatique de l’encodage par défaut du serveur ssh de destination.

Les échanges éffectués entre les 3 parties (navigateur, webssh, serveur ssh distant) se résument comme suit:

+---------+     http     +--------+    ssh    +-----------+
| browser |  | webssh |  | ssh server|
+---------+   websocket  +--------+    ssh    +-----------+

Installation

Webssh peut être installé via pip.

# pip install webssh


Ci-dessous le menu d’aide de webssh

# wssh --help
Usage: /home/mdestroy/.local/bin/wssh [OPTIONS]

Options:

  --help                           show this help information

/home/mdestroy/.local/lib/python3.6/site-packages/tornado/log.py options:

  --log-file-max-size              max size of log files before rollover
                                   (default 100000000)
  --log-file-num-backups           number of log files to keep (default 10)
  --log-file-prefix=PATH           Path prefix for log files. Note that if you
                                   are running multiple tornado processes,
                                   log_file_prefix must be different for each
                                   of them (e.g. include the port number)
  --log-rotate-interval            The interval value of timed rotating
                                   (default 1)
  --log-rotate-mode                The mode of rotating files(time or size)
                                   (default size)
  --log-rotate-when                specify the type of TimedRotatingFileHandler
                                   interval other options:('S', 'M', 'H', 'D',
                                   'W0'-'W6') (default midnight)
  --log-to-stderr                  Send log output to stderr (colorized if
                                   possible). By default use stderr if
                                   --log_file_prefix is not set and no other
                                   logging is configured.
  --logging=debug|info|warning|error|none 
                                   Set the Python log level. If 'none', tornado
                                   won't touch the logging configuration.
                                   (default info)

$HOME/.local/lib/python3.6/site-packages/webssh/settings.py options:

  --address                        Listen address (default 0.0.0.0)
  --certfile                       SSL certificate file
  --debug                          Debug mode (default False)
  --fbidhttp                       Forbid public plain http incoming requests
                                   (default True)
  --hostfile                       User defined host keys file
  --keyfile                        SSL private key file
  --maxconn                        Maximum live connections (ssh sessions) per
                                   client (default 20)
  --origin                         Origin policy, 'same': same origin policy,
                                   matches host name and port number;
                                   'primary': primary domain policy, matches
                                   primary domain only; '': custom
                                   domains policy, matches any domain in the
                                    list separated by comma; '*':
                                   wildcard policy, matches any domain, allowed
                                   in debug mode only. (default same)
  --policy                         Missing host key policy,
                                   reject|autoadd|warning (default warning)
  --port                           Listen port (default 8888)
  --redirect                       Redirecting http to https (default True)
  --ssladdress                     SSL listen address (default 0.0.0.0)
  --sslport                        SSL listen port (default 4433)
  --syshostfile                    System wide host keys file
  --tdstream                       Trusted downstream, separated by comma
  --version                        Show version information
  --wpintvl                        Websocket ping interval (default 0)
  --xheaders                       Support xheaders (default True)
  --xsrf                           CSRF protection (default True)

Exemples d’utilisation

Après son installation, webssh sera disponible dans votre shell à travers le fichier binaire wssh qui s’installe par défaut dans le dossier $HOME/.local/bin/.
Pour utiliser webssh, vous n’aurez qu’à lancer la commande wssh.
L’application lancera un serveur web sur le port 8888.

Connectez vous sur ce port avec votre navigateur puis remplissez le formulaire que vous verrez avec les informations sur le serveur ssh de destination et lancez la connexion ssh…

…Et vous aurez accès à votre serveur distant.


Il est également possible d’utiliser un serveur HTTPS pour les connexions entre le navigateur et l’application webssh. Pour cela, vous n’aurez qu’à utiliser les options --certfile et --keyfile.

mdestroy

The post Découvrez webssh, le client ssh à travers votre navigateur appeared first on Homputer Security.


Viewing all articles
Browse latest Browse all 14

Latest Images

Trending Articles





Latest Images