Synchronet v3.19b-Win32 (install) has been released (Jan-2022).

You can donate to the Synchronet project using PayPal.

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
Next revisionBoth sides next revision
config:sbbs.ini [2010/02/22 22:38] digitalmanconfig:sbbs.ini [2018/03/01 12:21] – old revision restored digital man
Line 15: Line 15:
 ===== Editing ===== ===== Editing =====
  
-When using the Synchronet-Win32 Control Panel, the contents of this file are automatically updated when any of the configuration changes are made in the File->Properties menu or the various [[:server:]] configuration dialogs. Windows sysops may never need to edit this file by hand.+When using the [[monitor:sbbsctrl|Synchronet-Win32 Control Panel]], the contents of this file are automatically updated when any of the configuration changes are made in the File->[[monitor:sbbsctrl:Properties]] menu or the various [[:server:]] configuration dialogs. Windows sysops may never need to edit this file by hand.
  
 If a sysop needs to edit the file by hand, any decent text file editor should do the job. See [[INI files]] for more details. If a sysop needs to edit the file by hand, any decent text file editor should do the job. See [[INI files]] for more details.
Line 25: Line 25:
 ==== [Global] ==== ==== [Global] ====
  
 +The ''[Global]'' section contains keys whose values will serve as default values for like-named keys in other server sections in the ''[[config:sbbs.ini]]'' file. 
 +
 +These keys are:
 +
 +=== Hostname ===
 +
 +Default: <none>
 +
 +The public Internet hostname of this server.
 +
 +If not set, the hostname configured in [[util:SCFG]]->Networks->Internet E-mail Address will be used.
 +
 +=== Interface ===
 +
 +Default: <any>
 +
 +The IPv4 and/or IPv6 address of the network interfaces to listen for incoming TCP/IP connections on.
 +
 +If multiple address are specified, they are to be separated by commas (this is true of all the ''*Interface'' values in this file).
 +
 +If not set, any and all network interfaces available will be listened on.
 +
 +=== CtrlDirectory ===
 +
 +Default: ''$[[:config:env#SBBSCTRL]]''
 +
 +Specify the location of the Synchronet ''[[dir:ctrl]]'' directory. Since this file is normally found in the ''[[dir:ctrl]]'' directory (e.g. by way of the ''[[:config:env#SBBSCTRL]]'' environment variable) you do not normally need to set this.
 +
 +=== TempDirectory ===
 +
 +Default: ''[[dir:ctrl]]/../temp''
 +
 +Override the default system "temp" directory (optional).
 +If you do override this, do NOT use the system-wide temp dir (e.g.: ''/tmp'' or ''windows\temp''), use a subdirectory instead. Synchronet assumes it is the only user of this directory/subdirectory for its temporary files only.
 +
 +
 +=== SemFileCheckFrequency ===
 +
 +Default: ''2'' (seconds)
 +Minimum: ''1'' (seconds)
 +
 +The interval, in seconds, betweeen [[semfiles|semaphore file]] checks. If you want to reduce the amount of disk I/O while the BBS is idle, you can increase this value. If you set this value below 1, the BBS server threads will use the default value (2).
 +
 +=== BindRetryCount ===
 +
 +Default: ''2''
 +
 +Set the number of times an interface //bind// will be attempted for each port (before giving up and failing to start/restart the server). An interface/port //bind// is required for listening for incoming TCP/IP connections.
 +
 +Increase this value if you get errors binding to ports on reloads (especially on *nix).
 +
 +=== BindRetryDelay ===
 +
 +Default: ''15'' (seconds)
 +
 +Delay (in seconds) between bind retries.
 +
 +=== LogLevel ===
 +
 +Default: ''Debugging''
 +
 +Highest log level to actually log/print (ignore all higher/less-severe log entries).
 +Supported log levels in decreasing severity (ala [[:monitor:syslog]]):
 +  Emergency, Alert, Critical, Error, Warning, Notice, Informational, Debugging
 +
 +=== JavaScriptMaxBytes ===
 +
 +Default: ''8M''
 +
 +Maximum allocation of memory per JavaScript run-time.
 +
 +=== JavaScriptContextStack ===
 +Default: ''16K''
 +
 +Maximum stack size per JavaScript context.
 +
 +=== JavaScriptTimeLimit ===
 +Default: ''864000'' (24 hours)
 +
 +Maximum number of ticks (100ms) before auto-termination of a JavaScript script (i.e. //infinite loop detection//).
 +
 +Set to ''0'' for unlimited time (disables //infinite loop detection//).
 +
 +Note: This key replaces the old ''JavaScriptBranchLimit'' key which is no longer used (as of Synchronet v3.16).
 +
 +=== JavaScriptGcInterval ===
 +Default: ''100''
 +
 +JavaScript Garbage Collection interval (in ticks). 
 +
 +Set to ''0'' for never.
 +
 +=== JavaScriptYieldInterval ===
 +
 +Default: ''10000''
 +
 +Time-slice yield interval (in ticks). 
 +
 +Set to ''0'' for never.
 +
 +=== JavaScriptLoadPath ===
 +Default: ''load''
 +
 +Comma-separated list of load paths (relative to ''[[dir:exec]]'' or ''[[dir:mods]]'' directories).
 +
 +These are the directories/sub-directories where the JavaScript ''load()'' method will search for filenames to be loaded by other scripts.
 +
 +=== LoginAttemptDelay ===
 +Default: ''5000'' (milliseconds)
 +
 +The number of milliseconds to pause after a failed login attempt.
 +
 +=== LoginAttemptThrottle ===
 +Deafult: ''1000'' (milliseconds)
 +
 +This value is multiplied by the number of consecutive unique failed login attempts and the result is the number of milliseconds to delay a connection from a suspicious host (e.g. with multiple consecutive unique failed login attempts).
 +
 +=== LoginAttemptHackThreshold ===
 +Default: ''10'' (attempts)
 +
 +The number of consecutive unique failed login attempts from the same host before adding entries to the ''hack.log'' file.
 +
 +Set to ''0'' to disable automatic ''hack.log'' file entries for failed login attempts.
 +
 +=== LoginAttemptTempBanThreshold ===
 +Default: ''20'' (attempts)
 +
 +The number of consecutive unique failed login attempts from the same host before temporarily banning connections from that client (based o IP address).
 +
 +Set to ''0'' to disable automatic banning.
 +
 +NOTE: Failed logins using any of the filtered user IDs (from ''[[config:name.can]]'') will automatically trigger a temporary ban.
 +
 +NOTE: Added in v3.17 (May-2016)
 +
 +=== LoginAttemptTempBanDuration ===
 +Default: ''10M'' (10 minutes)
 +
 +The  length (in seconds) of a temporary IP ban based on either multiple consecutive failed login attempts or any failed login attempt using a banned user ID (from ''[[config:name.can]]'').
 +
 +NOTE: Added in v3.17 (May-2016)
 +
 +=== LoginAttemptFilterThreshold ===
 +Default: ''0'' (attempts)
 +
 +The number of consecutive unique failed login attempts from the same host before auto-filtering the host's IP address in the ''[[config:ip.can]]'' file.
 +
 +For this auto-filtering feature to work with the Synchronet v3.16c Terminal Server (Telnet, RLogin, and SSH login attempts), the sysop must set [[util:SCFG]]->Nodes->Node 1->Toggle Options->Always Prompt for Password to "Yes".
 +
 +Set to ''0'' to disable automatic filtering of IP addresses due to failed login attempts.
 ==== [BBS] ==== ==== [BBS] ====
  
-==== [FTP====+See [[:server:terminal|Terminal Server]for more details.
  
-==== [Mail====+In addition to the keys listed in the ''[Global]'' section, the ''[BBS]'' section can contain the following keys with the specified default values:
  
-==== [Web] ====+=== TelnetInterface ===
  
-==== [Services====+Default: value of ''[GlobalInterface''
  
-==== [UNIX====+The IPv4 and/or IPv6 address of the network interfaces to listen for incoming [[server:terminal#Telnet]connections on (''0'' for //any// interface).
  
-Unix Sysops will particularly want to pay attention to the ''[UNIX]'' section of your ''sbbs.ini'' file.+=== TelnetPort ===
  
-If you do not want to run Synchronet (and all external programs/doors) as +Default: ''23''
-root, you will have to set the ''User'' and ''Group'' key values. Example:+
  
-  User=sbbsgroup +The TCP port number on which to listen for incoming [[server:terminal#Telnet]] connections.
-  Group=sbbsuser+
  
-Also, the file +=== RLoginInterface ===
-permissions/ownership should be such that the other user would have read +
-and write access to them.  The best way to accomplish this is a command +
-like:+
  
-  # chown -R sbbsuser:sbbsgroup /sbbs+Defaultvalue of ''[Global] Interface''
  
-If you want Synchronet to fork and run in the background as a daemon, logging +The IPv4 and/or IPv6 address of the network interfaces to listen for incoming [[server:terminal#RLogin]] connections on (''0'' for //any// interface).
-via syslog rather than the local console, set Daemonize=True in this sectionExample:+
  
-  Daemonize=True+=== RLoginPort ===
  
-To configure syslog and the ''LogFacility'', a good default to use is:+Default: ''513''
  
-  LogFacility=3 +The TCP port number on which to listen for incoming [[server:terminal#RLogin]] connections.
-  +
-  +
-Then, in ''/etc/syslog.conf'' you will need to add the line:+
  
-  local3.*                 /var/log/synchronet.log+=== SSHInterface ===
  
-Depending on how your vendor set up ''syslog.conf'' initially, you may also want +Default: value of ''[Global] Interface''
-to exclude local3.* from other log files (Noteably ''/var/log/messages''). how to +
-do this varies with your syslogd implementation, but for BSD based ones +
-(Which BSD and many Linux distros use) you would add ";local3.none" to the +
-end of the first field in the ''/var/log/messages'' line.+
  
-You will have to create this file manually initially by running: +The IPv4 and/or IPv6 address of the network interfaces to listen for incoming Secure Shell ([[server:terminal#SSH]]) connections on (''0'' for //any// interface).
-  touch /var/log/synchronet.log+
  
-Then send a HUP to syslogd like so: +=== SSHPort ===
-  # killall -HUP syslogd+
  
-You will want to investigate how your system rotates logs and set it up to +Default: ''22''
-rotate ''synchronet.log'' also.+
  
-Further use of the ''LogFacility'' setting is beyond the scope of this document. +The TCP port number on which to listen for incoming Secure Shell ([[server:terminal#SSH]]) connections.
-Read your ''syslog.conf'' manpage for more information about this.  In particular, +
-do NOT use the 'S' setting unless you are familiar with advanced syslogd +
-configuration.  The S setting will use different facilities for each feature +
-of Synchronet as appropriate Specifically, S will use:+
  
-    LOG_AUTH +=== FirstNode ===
-    LOG_DAEMON +
-    LOG_FTP (If available) +
-    LOG_MAIL +
-    LOG_CRON +
-    +
-=== LogIdent === +
-Default: Synchronet +
-=== PidFile === +
-Default: ''/var/run/sbbs.pid'' +
-=== umask === +
-Default: 077 +
- +
  
 +Default: ''1''
 +
 +The number of the first terminal server node serviced by this instance of Synchronet.
 +
 +=== LastNode ===
 +
 +Default: ''4''
 +
 +The number of the last terminal server node serviced by this instance of Synchronet.
 +
 +=== MaxConcurrentConnections ===
 +
 +Default: ''0''
 +
 +If set to a non-zero number, this will limit the number of concurrent connections to the [[server:Terminal]] Server from a common host/client IP address. Exempt hosts are not connection-limited by this setting. This setting added in Synchronet v3.17.
 +
 +=== OutbufHighwaterMark ===
 +
 +Default: ''0'' or ''1024''
 +
 +
 +=== OutbufDrainTimeout ===
 +
 +Default: ''10''
 +
 +=== ExternalTermANSI ===
 +
 +Default: ''pc3'' (Linux) or ''cons25'' (FreeBSD)
 +
 +=== ExternalTermDumb ===
 +
 +Default: ''dumb''
 +
 +=== DOSemuPath ===
 +
 +Default: ''/usr/bin/dosemu.bin'' (Linux) or ''/usr/local/bin/doscmd'' (FreeBSD)
 +
 +=== AnswerSound ===
 +
 +Default: //none//
 +
 +Path to a WAVE file to played (locally) when accepting incoming connections.
 +
 +=== HangupSound ===
 +
 +Default: //none//
 +
 +Path to a WAVE file to be played (locally) when terminating connections.
 +
 +=== Options ===
 +
 +Default: ''XTRN_MINIMIZED | SYSOP_AVAILABLE | ALLOW_RLOGIN | ALLOW_SSH''
 +
 +Supported options, separated by the pipe (''|'') symbol:
 +
 +^ Option         ^ Description ^
 +|XTRN_MINIMIZED  | External program windows are automatically minimized (Windows) |
 +|AUTO_LOGON | Enable automatic login based on IP address (not recommended) |
 +|DEBUG_TELNET     | Log Telnet commands and responses (with Debug log level) |
 +|SYSOP_AVAILABLE | Sysop is available to be paged for chat |
 +|ALLOW_RLOGIN | Enable the [[server:terminal#RLogin]] protocol for incoming connections |
 +|USE_2ND_RLOGIN  | Use the 2nd [[server:terminal#RLogin]] string as the user name to login with (DEPRECATED: this behavior is now hard-coded and non-optional) |
 +|NO_QWK_EVENTS   | Disable QWK networking events |
 +|NO_TELNET_GA    | Disable periodic transmissions of the Telnet "Go Ahead" command (Telnet only) |
 +|NO_EVENTS | Disable the Events thread (all timed events) |
 +|NO_HOST_LOOKUP  | Do not attempt hostname look-ups on incomming connections (log IP addresses only) |
 +|NO_SPY_SOCKETS  | Disable node spying (on *nix) |
 +|ALLOW_SSH | Enable the Secure Shell ([[server:terminal#SSH]]) protocol for incoming connections |
 +|NO_RECYCLE      | Disable the ability for the terminal server to be recycled |
 +|GET_IDENT | Use the IDENT protocol on incoming connections |
 +|NO_JAVASCRIPT   | Disable JavaScript support (not recommended) |
 +|NO_DOS          | Disable DOS Program support (eliminate the potential for modal error dialogs in 64-bit editions of Windows) |
 +|MUTE | Disable all local sound output |
 +
 +==== [FTP] ====
 +
 +See [[:server:ftp|FTP Server]] for more details.
 +
 +==== [Mail] ====
 +
 +See [[:server:mail|Mail Server]] for more details.
 +
 +==== [Web] ====
 +
 +See [[:server:web|Web Server]] for more details.
 +
 +==== [Services] ====
 +
 +See [[:service:index|Services]] and [[:config:services.ini]] for more details.
 +
 +==== [UNIX] ====
 +
 +See [[:config:nix|Configuring UNIX]] for more details.
 +  
 ===== See Also ===== ===== See Also =====
   * [[:config:|Configuration]]   * [[:config:|Configuration]]
Line 106: Line 318:
    
  
- +{{tag>sbbs.ini}}
- +