sectra stands for Secrets Transport. Sensitive information is encrypted and securely transfered by piggybacking on the SSH v2 protocol. It's essential a funny behaving SSH server.
- sectra itself needs a host key pair to work. If no SSH key pair exists in
sectra/host_key
, a new host key pair will be generated automatically by sectra (requiresssh-keygen
command to be found inPATH
).- Warning: The newly created SSH private key will be generated without a passphrase. So please keep it private or better yet, delete it directly after it's not needed anymore.
-
The Up&Running way:
If the user who should connect tot the sectra server has one ore more public SSH keys added to his GitHub profile, then the fastest way to use them with sectra is:$ ./binaries/osx/fetchghkeys/fetchghkeys <GitHub username>
This will create a new subdirectory
./data/<GitHub username>
, which contains theauthorized_keys
file containing the fetched public SSH keys for the user given by<GitHub username>
.
Last thing to do is to create a file./data/<GitHub username>/payload
and put the actual sensitive data to transport into it. Then the the sectra server can be started. -
The manual way:
Create a subdirectory under thedata
directory which has to match a SSH username that should be allowed to connect to the sectra server. Inside the user-sepcific subdirectory, the public SSH keys of the user who is allowed to connect have to be placed in a file namedauthorized_keys
in the same format as used by OpenSSH. A file namedpayload
in the same user-sepcific subdirectory contains the actually sensitive information which should be transfered (make sure it uses DOS line endings (:set ff=dos
in Vim)).-
Example directory structure:
. ├── data │ └── username │ ├── authorized_keys │ └── payload ├── host_key │ ├── id_rsa │ └── id_rsa.pub
-
# optional (default port is 3333):
#export PORT=3456
# run the sectra server:
$ ./binaries/osx/sectra
$ ssh -q username@<sectra-HOST-IP> -p 3333
If nothing gets displayed on the console, run the ssh
command with -vvv
to see debug messages.
Licensed under the MIT License. See the LICENSE file for details.
- Tests!