github.com/google/fleetspeak@v0.1.15-0.20240426164851-4f31f62c1aea/fleetspeak/src/config/proto/fleetspeak_config/config.proto (about)

     1  syntax = "proto3";
     2  
     3  package fleetspeak.config;
     4  
     5  import "fleetspeak/src/server/components/proto/fleetspeak_components/config.proto";
     6  
     7  option go_package = "github.com/google/fleetspeak/fleetspeak/src/config/proto/fleetspeak_config";
     8  
     9  // The configuration parameters needed by the configuration tool in order to
    10  // create the artifacts needed to run a fleetspeak installation.
    11  message Config {
    12    // An name for this installation, e.g. "Nascent" or "Nascent Staging".
    13    // Required.
    14    string configuration_name = 1;
    15  
    16    // A template for the components configuration file that will be generated.
    17    // The configuration tool will populate the https_config.key and
    18    // https_config.certificates fields based on the parameters below.
    19    fleetspeak.components.Config components_config = 2;
    20  
    21    // A file containing a PEM encoded certificate that clients should be
    22    // configured to trust. Typically a CA cert. If this file is not already
    23    // present, a 10 year self-signed CA certificate and associated private key
    24    // will be created.
    25    string trusted_cert_file = 3;
    26  
    27    // A file containing the private key associated with trusted_cert_file, only
    28    // required if it is necessary to create server certificates.
    29    //
    30    // NOTE: Contains private key material. Only needs to be online when creating
    31    // new server certificates.
    32    string trusted_cert_key_file = 4;
    33  
    34    // A file containing a PEM encoded certificate that the Fleetspeak server
    35    // should use to identify itself. If this file is not already present, a 1
    36    // year certificate signed directly using the contents of
    37    // trusted_cert_?(key_)file will be created.
    38    string server_cert_file = 5;
    39  
    40    // A file containing the private key associated with
    41    // server_cert_file. Required.
    42    //
    43    // NOTE: Contains private key material.
    44    string server_cert_key_file = 6;
    45  
    46    // Where to write the fleetspeak server component configuration file.
    47    //
    48    // NOTE: Result will contain private key material. Will only be needed by
    49    // fleetspeak servers.
    50    string server_component_configuration_file = 7;
    51  
    52    // How clients should find the fleetspeak server(s) used by this installation.
    53    //
    54    // Each entry should be of the form "<ip/hostname>:<port>". Note the clients
    55    // will not perform any intelligent load balancing, rather they will continue
    56    // to use the first option which works for them.
    57    //
    58    // If you are creating your own server certificates, they will need to cover
    59    // these addresses.
    60    repeated string public_host_port = 8;
    61  
    62    // If set, write a linux client configuration file for this installation.
    63    string linux_client_configuration_file = 9;
    64  
    65    // If set, write a linux client configuration file for this installation.
    66    string darwin_client_configuration_file = 10;
    67  
    68    // If set, write a linux client configuration file for this installation.
    69    string windows_client_configuration_file = 11;
    70  
    71    // If set, used for SNI server name and client-side certificate validation.
    72    string server_name = 12;
    73  }