Example silcd.conf file that connects to sauna.silcnet.org directly.
[silc.git] / doc / example_silcd.conf.in
index f6e7839ab62528ea71cfd0bb5d07e8dbe272680c..897df2192ca26f9d4e7926884a5f0abaedde46c5 100644 (file)
@@ -32,11 +32,6 @@ Include "@ETCDIR@/silcalgs.conf";
 # for different connections.
 #
 General {
-       # This is the default path where to search modules.  If omitted
-       # built-in modules will be used.  Built-in modules will also be
-       # used if a module file cannot be located.
-       module_path = "@MODULESDIR@";
-
        # If both passphrase and public key authentication is set for a
        # connection the public key authentication is the preferred one
        # to use.  Set this to `true' to prefer passphrase authentication
@@ -48,8 +43,9 @@ General {
        # without FQDN cannot connect to the server.
        #require_reverse_lookup = true;
 
-       # Maximum number of incoming connections allowed to this server.
-       # If more attempt to connect they will be refused.
+       # Maximum number of connections server can handle.  If you want
+       # to limit the number of incoming connections, define the
+       # connections_max in the ConnectionParams.
        connections_max = 1000;
 
        # Maximum number of incoming connections allowed per single host.
@@ -70,14 +66,25 @@ General {
        # number of the software.  The string can be a regex string to match
        # more widely.  Usually the vendor version checking is not necessary
        # and can be omitted.  These can be overridden with ConnectionParams.
-       #version_protocol = "1.1";
-       #version_software = "1.3";
+       #version_protocol = "1.3";
+       #version_software = "2.0";
        #version_software_vendor = "SomeVendor";
 
        # Default keepalive frequency (seconds).  This can be overridden with
        # with ConnectionParams.
        keepalive_secs = 300;
 
+       # Dynamic router connections.  If this is set for normal SILC server
+       # the connection to primary router is not created untill it is actually
+       # needed.  Giving for example /WHOIS foobar@silcnet.org would then
+       # create connection to the primary router to resolve user foobar.
+       # On the other hand giving /WHOIS foobar would try to search the
+       # user foobar locally, without creating the connection.  Note that
+       # giving /JOIN foobar will also created the connection as current
+       # SILC Server version supports only global channels (all JOINs require
+       # connection to router, if one is configured).
+       #dynamic_server = true;
+
        # Default reconnection parameters defines how the server reconnect
        # to the remote if the connection was lost.  The reconnection phase
        # use so called exponential backoff algorithm;  The reconnect
@@ -157,6 +164,19 @@ General {
        #qos_bytes_limit = 2048;
        #qos_limit_sec = 0;
        #qos_limit_usec = 500000;
+
+       # Limit on how many channels one client can join.  Default is 50.
+       #channel_join_limit = 100;
+
+       # HTTP server access to the server for retrieving server statistics
+       # with a web browser.  This is disabled by default.
+       #http_server = true;
+       #http_server_ip = "127.0.0.1";
+       #http_server_port = 5000;
+
+       # Debug string.  Debug string can be set to print debugging from
+       # the running server.  The debug is redirected to stderr.
+       # debug_string = "";
 };
 
 #
@@ -166,14 +186,16 @@ ServerInfo {
        #
        # Server name (FQDN)
        #
-       hostname = "lassi.kuo.fi.ssh.com";
+       hostname = "your.server.name.here";
 
        #
        # Primary listener.  Specify the IP address and the port to bind
-       # the server.
+       # the server.  The public_ip can be used to specify the public IP
+       # if the server is behind NAT.
        #
        Primary {
-               ip = "10.2.1.6";
+               ip = "127.0.0.1";
+               # public_ip = "11.1.1.1";
                port = 706;
        };
 
@@ -188,22 +210,22 @@ ServerInfo {
        # ServerType field specifies the purpose of this server
        # This is only a descriptive field.
        #
-       ServerType = "Test Server";
+       ServerType = "My SILC Server";
 
        #
        # Geographic location
        #
-       Location = "Kuopio, Finland";
+       Location = "Planet Earth";
 
        #
        # Full admin name
        #
-       Admin = "Foo T. Bar";
+       Admin = "Your Name Here";
 
        #
        # Admin's email address
        #
-       AdminEmail = "foo-admin@bar.com";
+       AdminEmail = "your@email.here";
 
        #
        # Run SILC server as specific user and group.  The server must be
@@ -242,7 +264,8 @@ ServerInfo {
 # are redirected on the less important ones, thus setting a valid logging
 # file for "Info" will ensure logging for all channels, while setting
 # logging file for "Errors" will ensure logging for channels "Errors"
-# and "Fatals"
+# and "Fatals".  If only, for example, "Info" is set then all logs go to
+# that file (like in example below).
 #
 Logging {
        # Use timestamp in the logging files? (Usually it is a good idea,
@@ -266,26 +289,26 @@ Logging {
        # Informational messages
        Info {
                File = "@LOGSDIR@/silcd.log";
-               Size = "50k";
+               Size = "100k";
        };
 
        # Warning messages
-       Warnings {
-               File = "@LOGSDIR@/silcd_warnings.log";
-               Size = "50k";
-       };
+       #Warnings {
+       #       File = "@LOGSDIR@/silcd_warnings.log";
+       #       Size = "50k";
+       #};
 
        # Error messages
-       Errors {
-               File = "@LOGSDIR@/silcd_errors.log";
-               Size = "50k";
-       };
+       #Errors {
+       #       File = "@LOGSDIR@/silcd_errors.log";
+       #       Size = "50k";
+       #};
 
        # Fatal messages
-       Fatals {
-               File = "@LOGSDIR@/silcd_fatals.log";
-               Size = "50k";
-       };
+       #Fatals {
+       #       File = "@LOGSDIR@/silcd_fatals.log";
+       #       Size = "50k";
+       #};
 };
 
 #
@@ -405,10 +428,9 @@ ConnectionParams {
 #
 # The authentication data is specified by Passphrase and/or PublicKey.
 # If both are provided then both password and public key based authentication
-# is allowed.  If the Publickey is used it includes the file path to the
-# public key file.  If none of them is provided then authentication is not
-# required.  The PublicKey can be set multiple times to set multiple
-# public keys for one connection.
+# is allowed.  The "PublicKey" includes the single key contained in the
+# specified file, while "PublicKeyDir" includes all files in the specified
+# directory, which must all be valid public keys with ".pub" suffix.
 #
 # Next example connection will match to all incoming client connections,
 # and no authentication is required.
@@ -416,9 +438,10 @@ ConnectionParams {
 Client {
        #Host = "10.1.*";
        #Passphrase = "secret";
-       #PublicKey = "/path/to/the/user_my.key";
-       #PublicKey = "/path/to/the/user_221.key";
-       #PublicKey = "/path/to/the/user_313.key";
+       #PublicKey = "/path/to/the/user_my.pub";
+       #PublicKey = "/path/to/the/user_221.pub";
+       #PublicKey = "/path/to/the/user_313.pub";
+       #PublicKeyDir = "/path/to/keys/dir/";
        Params = "normal";
 };
 
@@ -435,11 +458,11 @@ Client {
 # required.
 #
 Admin {
-       Host = "10.2.1.199";
-       User = "priikone";
-       Nick = "pekka";
-       Passphrase = "verysecret";
-       # PublicKey = "/path/to/the/public.key";
+       #Host = "10.2.1.199";
+       #User = "priikone";
+       #Nick = "pekka";
+       #Passphrase = "verysecret";
+       #PublicKey = "/path/to/the/public.pub";
 };
 
 #
@@ -448,7 +471,8 @@ Admin {
 # If server connections are configured it means that this server is
 # router server.  Normal servers must not configure server connections.
 # Thus, if this server is not router do not configure this section.  If
-# your server is router, this must be configured.
+# your server is router, this must be configured.  The Host (mandatory)
+# specifies the remote server.
 #
 # The authentication data is specified by Passphrase and/or PublicKey.
 # If both are provided then both password and public key based authentication
@@ -461,11 +485,11 @@ Admin {
 # your server will be backup router.
 #
 ServerConnection {
-       Host = "10.2.1.7";
-       Passphrase = "verysecret";
-       #PublicKey = "/path/to/the/public.key";
-       Params = "normal";
-       Backup = false;
+       #Host = "10.2.1.7";
+       #Passphrase = "verysecret";
+       #PublicKey = "/path/to/the/public.pub";
+       #Params = "normal";
+       #Backup = false;
 };
 
 #
@@ -474,9 +498,9 @@ ServerConnection {
 # For normal servers only one entry maybe configured to this section.  It
 # must be the router this server will be connected to.  For router servers,
 # this section includes all configured router connections.  The first
-# configured connection is the primary route.  The Host specifies the
-# remote hostname or IP address.  The Port specifies the remote port to
-# connect when Initiator is true.  When Initiator is false the Port
+# configured connection is the primary route.  The Host (mandatory) specifies
+# the remote hostname or IP address.  The Port specifies the remote port
+# to connect when Initiator is true.  When Initiator is false the Port
 # specifies the local port (listener port).
 #
 # The authentication data is specified by Passphrase and/or PublicKey.
@@ -497,10 +521,10 @@ ServerConnection {
 # If the backup router is in other cell then set it to false.
 #
 RouterConnection {
-       Host = "10.2.1.100";
+       Host = "sauna.silcnet.org";
        Port = 706;
-       Passphrase = "verysecret";
-       #PublicKey = "/path/to/the/public.key";
+       #Passphrase = "verysecret";
+       #PublicKey = "/path/to/the/public.pub";
        Params = "normal";
        Initiator = true;
        #BackupHost = "10.2.1.6";