Receptor Configuration Options¶
Control Services¶
Parameter |
Description |
Default value |
Type |
---|---|---|---|
|
Specifies the filename of a local Unix socket to bind to the service. |
No default value. |
string |
|
Socket file permissions |
0600 |
int |
|
Receptor service name to listen on |
control |
string |
|
Name of TLS server config for the Receptor listener |
No default value. |
string |
|
Local TCP port or host:port to bind to the control service |
No default value. |
string |
|
Name of TLS server config for the TCP listener |
No default value. |
string |
control-services:
- service: foo
filename: /tmp/foo.sock
Log level¶
Parameter |
Description |
Default value |
Type |
---|---|---|---|
|
Log level: Error, Warning, Info or Debug |
Error |
string |
Add payload tracing using RECEPTOR_PAYLOAD_TRACE_LEVEL=int envorment variable and using log level debug.
Tracing level |
Description |
---|---|
0 |
No payload tracing log |
1 |
Log connection type |
2 |
Log connection type and work unit id |
3 |
Log connection type, work unit id and payload |
Warning: Payload Tracing May Expose Sensitive Data
Please be aware that using payload tracing can potentially reveal sensitive information. This includes, but is not limited to, personal data, authentication tokens, and system configurations. Ensure that you only use tracing tools in a secure environment and avoid sharing trace output with unauthorized users. Always follow your organization’s data protection policies when handling sensitive information. Proceed with caution!
log-level:
level: debug
Qlog¶
Variable |
Description |
Type |
---|---|---|
QLOGDIR |
environment variable to the directory path where logs will be stored |
string |
Qlogs allows greater visibility in the Receptors mesh network. Set the QLOGDIR environment variable to the directory path where logs will be stored. Creating a new directory may help organize qlogs. Once logs are created they can be viewed using (qvis)[https://github.com/quiclog/qvis]
Run qvis locally:¶
Git clone qvis repo
cd visualizations
run npm install
npm run serve
Qvis is now served on port 8080
Upload qlogs to qvis and navigate to Sequence
Node¶
Parameter |
Description |
Default value |
Type |
---|---|---|---|
|
Node ID can only contain a-z, A-Z, 0-9 or special characters . - _ @ : |
local hostname |
string |
|
Directory in which to store node data |
/tmp/receptor |
string |
|
Firewall Rules. See Firewall Rules for syntax |
No default value. |
JSON |
|
Max duration with no traffic before a backend connection is timed out and refreshed |
No default value. |
string |
node:
id: foo
Configure resources used by other commands¶
TLS Clients¶
Parameter |
Description |
Default value |
Type |
---|---|---|---|
|
Client certificate filename (required) |
No default value. |
string |
|
Accept any server cert |
false |
bool |
|
Client private key filename (required) |
No default value. |
string |
|
Set minimum TLS version to 1.3. Otherwise the minimum is 1.2 |
false |
bool |
|
Name of this TLS client configuration (required) |
No default value. |
string |
|
Pinned fingerprint of required server certificate |
No default value. |
list of string |
|
Root CA bundle to use instead of system trust |
No default value. |
string |
|
if true, skip verifying ReceptorNames OIDs in certificate at startup |
No default value. |
bool |
tls-clients:
- name: tlsclient
cert: /tmp/certs/foo.crt
key: /tmp/certs/key.crt
TLS Servers¶
Parameter |
Description |
Default value |
Type |
---|---|---|---|
|
Server certificate filename (required) |
No default value. |
string |
|
Filename of CA bundle to verify client certs with |
No default value. |
string |
|
Server private key filename (required) |
No default value. |
string |
|
Set minimum TLS version to 1.3. Otherwise the minimum is 1.2 |
false |
bool |
|
Name of this TLS server configuration (required) |
No default value. |
string |
|
Pinned fingerprint of required client certificate |
No default value. |
list of string |
|
Require client certificates |
false |
bool |
|
Skip verifying ReceptorNames OIDs in certificate at startup |
false |
bool |
tls-servers:
- name: tlsserver
cert: /tmp/certs/foo.crt
key: /tmp/certs/key.crt
Options to configure back-ends, which connect Receptor nodes together¶
TCP listeners¶
Parameter |
Description |
Default value |
Type |
---|---|---|---|
|
Peer node IDs to allow via this connection |
No default value. |
list of string |
|
Local address to bind to |
0.0.0.0 |
string |
|
Connection cost (weight) |
1.0 |
float64 |
|
Per-node costs |
No default value. |
float64 |
|
Local TCP port to listen on (required) |
No default value. |
int |
|
Name of TLS server config |
No default value. |
string |
tcp-listeners:
- port: 2223
TCP Peers¶
Parameter |
Description |
Default value |
Type |
---|---|---|---|
|
Remote address (Host:Port) to connect to (required) |
No default value. |
string |
|
Peer node IDs to allow via this connection |
No default value. |
list of string |
|
Connection cost (weight) |
1.0 |
float64 |
|
Keep redialing on lost connection |
true |
bool |
|
Name of TLS client configuration |
No default value. |
string |
tcp-peers:
- address: localhost:2223
UDP Listeners¶
Parameter |
Description |
Default value |
Type |
---|---|---|---|
|
Peer node IDs to allow via this connection |
No default value. |
list of string |
|
Local address to bind to |
0.0.0.0 |
string |
|
Connection cost (weight) |
1.0 |
float64 |
|
Per-node costs |
No default value. |
float64 |
|
Local UDP port to listen on (required) |
No default value. |
int |
udp-listeners:
- port: 2223
UDP Peers¶
Parameter |
Description |
Default value |
---|---|---|
|
Host:Port to connect to (required) |
No default value. |
|
Peer node IDs to allow via this connection |
No default value. |
|
Connection cost (weight) |
1.0 |
|
Keep redialing on lost connection |
true |
udp-peers:
- address: localhost:2223
Websocket Listeners¶
Parameter |
Description |
Default value |
Type |
---|---|---|---|
|
Peer node IDs to allow via this connection |
No default value. |
list of string |
|
Local address to bind to |
0.0.0.0 |
string |
|
Connection cost (weight) |
1.0 |
float64 |
|
Per-node costs |
No default value. |
float64 |
|
URI path to the websocket server |
/ |
string |
|
Local TCP port to run http server on (required) |
No default value. |
int |
|
Name of TLS server configuration |
No default value. |
string |
ws-listeners:
- port: 27198
Websocket Peers¶
Parameter |
Description |
Default value |
Type |
---|---|---|---|
|
URL to connect to (required) |
No default value. |
string |
|
Peer node IDs to allow via this connection |
No default value. |
list of string |
|
Connection cost (weight) |
1.0 |
float64 |
|
Sends extra HTTP header on initial connection |
No default value. |
string |
|
Keep redialing on lost connection |
true |
bool |
|
Name of TLS client config |
No default value. |
string |
ws-peers:
- address: ws://localhost:27198
Configure services that run on top of the Receptor mesh¶
IP Routers¶
Parameter |
Description |
Default value |
Type |
---|---|---|---|
|
Name of the local tun interface |
No default value. |
string |
|
Local /30 CIDR address (required) |
No default value. |
string |
|
Name of this network and service. (required) |
No default value. |
string |
|
Comma separated list of CIDR subnets to advertise |
No default value. |
string |
ip-routers:
- networkname: hello
localnet: abc
TCP Clients¶
Parameter |
Description |
Default value |
---|---|---|
|
Address for outbound TCP connection (required) |
No default value. |
|
Receptor service name to bind to (required) |
No default value. |
|
Name of TLS server config for the Receptor service |
No default value. |
|
Name of TLS client config for the TCP connection |
No default value. |
tcp-clients:
- address: localhost:2223
service: foo
TCP Servers¶
Parameter |
Description |
Default value |
Type |
---|---|---|---|
|
Address to bind TCP listener to |
0.0.0.0 |
string |
|
Local TCP port to bind to (required) |
No default value. |
int |
|
Receptor node to connect to (required) |
No default value. |
string |
|
Receptor service name to connect to (required) |
No default value. |
string |
|
Name of TLS server config for the TCP listener |
No default value. |
string |
|
Name of TLS client config for the Receptor connection |
No default value. |
string |
tcp-servers:
- port: 2223
remotenode: foo
remoteservice: foo
UDP Clients¶
Parameter |
Description |
Default value |
Type |
---|---|---|---|
|
Address for outbound UDP connection (required) |
No default value. |
string |
|
Receptor service name to bind to (required) |
No default value. |
string |
udp-clients:
- address: localhost:2223
service: foo
UDP Servers¶
Parameter |
Description |
Default value |
Type |
---|---|---|---|
|
Address to bind UDP listener to |
0.0.0.0 |
string |
|
Local UDP port to bind to (required) |
No default value. |
int |
|
Receptor node to connect to (required) |
No default value. |
string |
|
Receptor service name to connect to (required) |
No default value. |
string |
udp-servers:
- address: 2223
remotenode: foo
remoteservice: foo
Unix Socket Clients¶
Parameter |
Description |
Default value |
Type |
---|---|---|---|
|
Socket filename, which must already exist (required) |
No default value. |
string |
|
Receptor service name to bind to (required) |
No default value. |
string |
|
Name of TLS server config for the Receptor connection |
No default value. |
string |
unix-socket-clients:
- filename: /tmp/foo.sock
service: foo
Unix Socket Servers¶
Parameter |
Description |
Default value |
Type |
---|---|---|---|
|
Socket filename, which will be overwritten (required) |
No default value. |
string |
|
Socket file permissions |
0600 |
int |
|
Receptor node to connect to (required) |
No default value. |
string |
|
Receptor service name to connect to (required) |
No default value. |
string |
|
Name of TLS client config for the Receptor connection |
No default value. |
string |
unix-socket-servers:
- filename: /tmp/foo.sock
remotenode: foo
remoteservice: foo
Configure workers that process units of work¶
Work Commands¶
Parameter |
Description |
Default value |
Type |
---|---|---|---|
|
Allow users to add more parameters |
false |
bool |
|
Command to run to process units of work (required) |
No default value. |
string |
|
Command-line parameters |
No default value. |
string |
|
Verify a signed work submission |
false |
bool |
|
Name for this worker type (required) |
No default value. |
string |
work-commands:
- command: cat
worktype: cat
Work Kubernetes¶
Parameter |
Description |
Default value |
Type |
---|---|---|---|
|
Allow passing API parameters at runtime |
false |
bool |
|
Allow specifying image & command at runtime |
false |
bool |
|
Allow adding command parameters at runtime |
false |
bool |
|
Allow passing Pod at runtime |
false |
bool |
|
One of: kubeconfig, incluster |
incluster |
string |
|
Command to run in the container (overrides entrypoint) |
No default value. |
string |
|
On restart, delete the pod if in pending state |
true |
bool |
|
Container image to use for the worker pod |
No default value. |
string |
|
Kubeconfig filename (for authmethod=kubeconfig) |
No default value. |
string |
|
Kubernetes namespace to create pods in |
No default value. |
string |
|
Command-line parameters to pass to the entrypoint |
No default value. |
string |
|
Pod definition filename, in json or yaml format |
No default value. |
string |
|
Method for connecting to worker pods: logger or tcp |
logger |
string |
|
Verify a signed work submission |
false |
bool |
|
Name for this worker type (required) |
No default value. |
string |
work-kubernetes:
- worktype: cat
Work Python¶
Parameter |
Description |
Default value |
---|---|---|
|
Plugin-specific configuration |
No default value. |
|
Receptor-exported function to call (required) |
No default value. |
|
Python module name of the worker plugin (required) |
No default value. |
|
Name for this worker type (required) |
No default value. |
Work Signing¶
Parameter |
Description |
Default value |
Type |
---|---|---|---|
|
Private key to sign work submissions |
No default value. |
string |
|
Expiration of the signed json web token, e.g. 3h or 3h30m |
No default value. |
string |
work-signing:
privatekey: /tmp/signworkprivate.pem
tokenexpiration: 30m
Work Verification¶
Parameter |
Description |
Default value |
Type |
---|---|---|---|
|
Public key to verify signed work submissions |
No default value. |
string |
work-verification:
publickey: /tmp/signworkpublic.pem
Create Certificate Requests¶
Parameter |
Description |
Default value |
Type |
---|---|---|---|
|
Bit length of the encryption keys of the certificate |
No default value. |
int |
|
Common name to assign to the certificate (required) |
No default value. |
string |
|
DNS names to add to the certificate |
No default value. |
list of string |
|
Private key to use for the request |
No default value. |
string |
|
IP addresses to add to the certificate |
No default value. |
list of string |
|
Receptor node IDs to add to the certificate |
No default value. |
list of string |
|
File to save the certificate request to (required) |
No default value. |
string |
|
File to save the private key to (new key will be generated) |
No default value. |
string |
cert-makereqs:
- address: localhost:2223
service: foo
Sign Request and Produce Certificate¶
Parameter |
Description |
Default value |
Type |
---|---|---|---|
|
CA certificate PEM filename (required) |
No default value. |
string |
|
CA private key PEM filename (required) |
No default value. |
string |
|
Expiration (NotAfter) date/time, in RFC3339 format |
No default value. |
string |
|
Effective (NotBefore) date/time, in RFC3339 format |
No default value. |
string |
|
File to save the signed certificate to (required) |
No default value. |
string |
|
Certificate Request PEM filename (required) |
No default value. |
string |
|
If true, do not prompt the user for verification |
False |
bool |
tcp-clients:
- address: localhost:2223
service: foo