Skip to content

DirectoriesAndFiles

Guiran Patrick edited this page Aug 8, 2011 · 1 revision

Description of Directories and Files on sshGate-server

Here is the default sshGate-server root directory structure (each directory will be explained below).

{SSHGATE_DIR}
 |-> archives/
 |-> bin/
 |   |-> core/
 |   \-> tests/
 |-> data/
 |   \-> templates/
 |-> logs/
 |   |-> targets-logs/
 |   \-> users-logs/
 |-> targets/
 |-> users/
 \-> users.groups/

Directory "archives/"

This directory contains .tar.gz files. They contain one month of sshGate-server logs and are created by archive-log.sh (placed in /etc/cron.montly/)

Directory "bin/"

This directory contains binaries of sshGate servers. Besides, the lib/ directory contains needed files from ScriptHelper.

  • sshgate-cli : the CLI program
  • sshgate-bridge : script called when a user connects to the sshGate-server with the account set up at install (see SSHGATE_GATE_ACCOUNT in configuration)
  • sshgate-configure : Utility to setup or change the configuration of sshGate

Directory "bin/core/"

This directory contains files containing core functions of sshGate. Typically, each file represent a ability category.

Directory "bin/tests/"

This directory contains test.sh script and *.testcase files. To launch tests, use the test.sh script.

Directory "data/"

This directory contains 3 files :

  • sshgate.conf : the global configuration of sshGate-server
  • sshkey.priv : the default private ssh key of target hosts
  • sshkey.pub : the default public ssh key of target hosts

Directory "data/templates/"

This directory contains one directory per language.

Directory "logs/"

This directory contains :

  • current_session.log : this file contain CSV formatted data, which list all active sessions

Directory 'logs/targets-logs/'

This directory contains targets logs, one directory per target host configured.

Each target host directory contains the following log files :

  • global.log : which contains general log information for the target host
  • {date}.{login}.{pid} : session log file. Its name contains the date, user login, and the pid of the process dealing with the sshGate session. This file contains what the user sees in his terminal (thanks to the tee unix command)

Directory "logs/users-logs/"

This directory contains users related logs, one file per user. Filename format is .log>. Those file contains information about user activity (connection and file transfert).

Directory "targets/"

This directory contains one directory per target host, and one symbolic link (which pointed to a target host dir) per alias.

In target host directory, you can find :

  • access.groups : a plain text file. Each line is the name of a 'usergroup' whom users can access to this target host
  • access.users : a plain text file. Each line is the name of a user who can access to this target host
  • (optional) properties : configuration file of a target host containing key=value lines. This file doesn't exist if the target host has no configuration settings.
  • (optional) sshkey.priv : the private ssh key of the target host. If not present, /conf/sshkey.priv private ssh key file is used.
  • (optional) sshkey.pub : the public ssh key of the target host. If not present, /conf/sshkey.pub public ssh key file is used.

Directory "users/"

This directory contains two kind of files :

  • sshkeys : public ssh key of users, where name of the file is the login of the user
  • properties : properties (configuration) files of some users. The file name format is "{login}.properties"

Directory "users.groups/"

This directory contains one file per user group. The name of the file is the name of the user group. Each file may contain several logins (one per line) of users belonging to the user group.