The yaml plugin for sshpiperd is a simple plugin that allows you to use single yaml file to configure your sshpiperd.
some basic idea of yaml config file:
first matched pipe will be used.
any from in pipe fits downstream authentication will be considered as the pipe matched.
username_regex_match can be used to match with regex
authorized_keys, private_key, known_hosts are path/to/target/file, but there are also authorized_keys_data, private_key_data, known_hosts_data accepting base64 inline data
magic placeholders in path, example usage: /path/to/$UPSTREAM_USER/file
DOWNSTREAM_USER: supported in private_key, known_hosts
UPSTREAM_USER: supported in authorized_keys, private_key, known_hosts
environment variables: supported in authorized_keys, private_key, known_hosts
Usage
sshpiperd yaml --config /path/to/sshpiperd.yaml
options
--config value path to yaml config file [$SSHPIPERD_YAML_CONFIG]
--no-check-perm disable 0400 checking (default: false) [$SSHPIPERD_YAML_NOCHECKPERM]