Differences
This shows you the differences between two versions of the page.
Both sides previous revisionPrevious revisionNext revision | Previous revision | ||
config:sbbs.ini [2014/02/17 23:45] – [[BBS]] List all the supported keys with default values. digital man | config:sbbs.ini [2024/03/03 01:34] (current) – [[BBS]] Add ALLOW_SFTP and NO_TELNET, remove MUTE digital man | ||
---|---|---|---|
Line 1: | Line 1: | ||
- | ====== | + | ====== |
- | The Synchronet BBS (SBBS) Initialization File is the mother of all Synchronet configuration files and is located in the '' | + | The Synchronet BBS (SBBS) Initialization File ('' |
===== Filename ===== | ===== Filename ===== | ||
Line 7: | Line 7: | ||
The base filename of the initialization file is '' | The base filename of the initialization file is '' | ||
- | The standard host/ | + | The standard host/ |
===== Defaults ===== | ===== Defaults ===== | ||
- | Download or view the default '' | + | Download or view the default '' |
===== 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-> | + | When using the [[monitor: |
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 27: | Line 27: | ||
The '' | The '' | ||
- | These keys are: | + | The supported '' |
- | === Hostname | + | ^ Key ^ Default |
+ | | HostName | ||
+ | | Interface | ||
+ | | OutboundInterface | ||
+ | | LogLevel | ||
+ | | TLSErrorLevel | ||
+ | | BindRetryCount | ||
+ | | BindRetryDelay | ||
+ | | CtrlDirectory | ||
+ | | TempDirectory | ||
+ | | SemFileCheckFrequency | ||
+ | | LoginAttemptDelay | ||
+ | | LoginAttemptThrottle | ||
+ | | LoginAttemptHackThreshold | ||
+ | | LoginAttemptTempBanThreshold | 20 | Default number of failed login attempts before temporarily banning IP address | | ||
+ | | LoginAttemptTempBanDuration | ||
+ | | LoginAttemptFilterThreshold | ||
+ | | LoginAttemptFilterDuration | ||
+ | | AnswerSound | ||
+ | | LoginSound | ||
+ | | LogoutSound | ||
+ | | HangupSound | ||
+ | | HackAttemptSound | ||
+ | | JavaScript* | ||
+ | |||
+ | **More details on keys follow**: | ||
+ | |||
+ | === HostName | ||
Default: < | Default: < | ||
- | The public Internet | + | The public Internet |
- | If not set, the hostname | + | If not set, the host name configured in '' |
+ | |||
+ | **Note**: | ||
+ | The '' | ||
=== Interface === | === Interface === | ||
- | Default: | + | Default: |
+ | |||
+ | The IPv4 and/or IPv6 addresses of the network interfaces to listen on for incoming TCP/IP connections. | ||
+ | |||
+ | If multiple addresses are specified, they are to be separated by commas (this is true of all the '' | ||
+ | |||
+ | The address value '' | ||
+ | |||
+ | If this value is not set, any and all IPv4 and IPv6 network interfaces available will be listened to for incoming connections. | ||
+ | |||
+ | **Note**: | ||
+ | Although TCP port numbers may be specified (with ''//< | ||
+ | |||
+ | === OutboundInterface === | ||
- | The IP address of the network interface to listen for incoming TCP/IP connections on. | + | Default: '' |
- | If not set, any and all network | + | The IPv4 address of the network |
=== CtrlDirectory === | === CtrlDirectory === | ||
Line 58: | Line 101: | ||
If you do override this, do NOT use the system-wide temp dir (e.g.: ''/ | If you do override this, do NOT use the system-wide temp dir (e.g.: ''/ | ||
+ | **Note**: | ||
+ | The '' | ||
=== SemFileCheckFrequency === | === SemFileCheckFrequency === | ||
Default: '' | Default: '' | ||
+ | Minimum: '' | ||
- | 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. | + | 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). |
+ | |||
+ | **Note**: | ||
+ | The '' | ||
=== BindRetryCount === | === BindRetryCount === | ||
Line 72: | Line 121: | ||
Increase this value if you get errors binding to ports on reloads (especially on *nix). | Increase this value if you get errors binding to ports on reloads (especially on *nix). | ||
+ | |||
+ | **Note**: | ||
+ | This setting may be overridden by a '' | ||
=== BindRetryDelay === | === BindRetryDelay === | ||
Line 78: | Line 130: | ||
Delay (in seconds) between bind retries. | Delay (in seconds) between bind retries. | ||
+ | |||
+ | **Note**: | ||
+ | This setting may be overridden by a '' | ||
=== LogLevel === | === LogLevel === | ||
- | Default: '' | + | Default: '' |
Highest log level to actually log/print (ignore all higher/ | Highest log level to actually log/print (ignore all higher/ | ||
Supported log levels in decreasing severity (ala [[: | Supported log levels in decreasing severity (ala [[: | ||
Emergency, Alert, Critical, Error, Warning, Notice, Informational, | Emergency, Alert, Critical, Error, Warning, Notice, Informational, | ||
+ | | ||
+ | **Note**: | ||
+ | This setting may be overridden by a '' | ||
- | === JavaScriptMaxBytes | + | === JavaScript* |
- | Default: '' | + | See [[JavaScript]] for details. |
- | Maximum allocation of memory per JavaScript run-time. | + | **Note**: |
- | + | Each '' | |
- | === JavaScriptContextStack === | + | |
- | Default: | + | |
- | + | ||
- | Maximum stack size per JavaScript | + | |
- | + | ||
- | === JavaScriptTimeLimit === | + | |
- | Default: | + | |
- | + | ||
- | Maximum number of ticks (100ms) before auto-termination of a JavaScript script (i.e. //infinite loop detection// | + | |
- | + | ||
- | Set to '' | + | |
- | + | ||
- | Note: This key replaces the old '' | + | |
- | + | ||
- | === JavaScriptGcInterval === | + | |
- | Default: '' | + | |
- | + | ||
- | JavaScript | + | |
- | + | ||
- | Set to '' | + | |
- | + | ||
- | === JavaScriptYieldInterval === | + | |
- | + | ||
- | Default: '' | + | |
- | + | ||
- | Time-slice yield interval (in ticks). | + | |
- | + | ||
- | Set to '' | + | |
- | + | ||
- | === JavaScriptLoadPath === | + | |
- | Default: '' | + | |
- | + | ||
- | Comma-separated list of load paths (relative to '' | + | |
- | + | ||
- | These are the directories/ | + | |
=== LoginAttemptDelay === | === LoginAttemptDelay === | ||
Line 133: | Line 156: | ||
The number of milliseconds to pause after a failed login attempt. | The number of milliseconds to pause after a failed login attempt. | ||
+ | |||
+ | **Note**: | ||
+ | Each '' | ||
=== LoginAttemptThrottle === | === LoginAttemptThrottle === | ||
Line 145: | Line 171: | ||
Set to '' | Set to '' | ||
+ | |||
+ | === LoginAttemptTempBanThreshold === | ||
+ | Default: '' | ||
+ | |||
+ | 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 '' | ||
+ | |||
+ | **Note**: Failed logins using any of the filtered user IDs (from '' | ||
+ | |||
+ | === LoginAttemptTempBanDuration === | ||
+ | Default: '' | ||
+ | |||
+ | 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 '' | ||
=== LoginAttemptFilterThreshold === | === LoginAttemptFilterThreshold === | ||
Line 150: | Line 190: | ||
The number of consecutive unique failed login attempts from the same host before auto-filtering the host's IP address in the '' | The number of consecutive unique failed login attempts from the same host before auto-filtering the host's IP address in the '' | ||
+ | |||
+ | For this auto-filtering feature to work with the Synchronet v3.16c Terminal Server (Telnet, RLogin, and SSH login attempts), the sysop must set '' | ||
Set to '' | Set to '' | ||
+ | |||
+ | === LoginAttemptFilterDuration === | ||
+ | Default: '' | ||
+ | |||
+ | The length (in seconds) of a persistent IP ban. | ||
+ | |||
==== [BBS] ==== | ==== [BBS] ==== | ||
Line 157: | Line 205: | ||
In addition to the keys listed in the '' | In addition to the keys listed in the '' | ||
+ | |||
+ | === AutoStart === | ||
+ | |||
+ | Default: '' | ||
+ | |||
+ | Automatically startup the [[server: | ||
=== TelnetInterface === | === TelnetInterface === | ||
- | Default: [Global] Interface | + | Default: |
- | The IP address | + | The IPv4 and/or IPv6 addresses |
=== TelnetPort === | === TelnetPort === | ||
- | Default: 23 | + | Default: |
The TCP port number on which to listen for incoming Telnet connections. | The TCP port number on which to listen for incoming Telnet connections. | ||
Line 172: | Line 226: | ||
=== RLoginInterface === | === RLoginInterface === | ||
- | Default: [Global] Interface | + | Default: |
- | The IP address | + | The IPv4 and/or IPv6 addresses |
=== RLoginPort === | === RLoginPort === | ||
- | Default: 513 | + | Default: |
The TCP port number on which to listen for incoming RLogin connections. | The TCP port number on which to listen for incoming RLogin connections. | ||
Line 184: | Line 238: | ||
=== SSHInterface === | === SSHInterface === | ||
- | Default: [Global] Interface | + | Default: |
- | The IP address of the network | + | The IPv4 and/or IPv6 address of the network |
=== SSHPort === | === SSHPort === | ||
- | Default: 22 | + | Default: |
The TCP port number on which to listen for incoming Secure Shell (SSH) connections. | The TCP port number on which to listen for incoming Secure Shell (SSH) connections. | ||
+ | |||
+ | === SSHConnectTimeout === | ||
+ | |||
+ | Default: '' | ||
+ | |||
+ | The maximum amount of time allowed for a SecureShell (SSH) connection negotiation to complete. | ||
+ | |||
+ | === SSHErrorLevel === | ||
+ | |||
+ | Default: '' | ||
+ | |||
+ | The maximum severity of SSH-related log messages. SSH-related log messages of higher severity (i.e. lower numeric level) will be capped at this severity level. | ||
+ | |||
+ | === Pet40Port === | ||
+ | |||
+ | Default: '' | ||
+ | |||
+ | If a connection is made to the [[: | ||
+ | |||
+ | === Pet80Port === | ||
+ | |||
+ | Default: '' | ||
+ | |||
+ | If a connection is made to the [[: | ||
+ | |||
+ | === OutboundInterface === | ||
+ | |||
+ | Default: '' | ||
+ | |||
+ | The IPv4 address of the network interface to use for outgoing TCP/IP connections (i.e. for Telnet and RLogin gateway connections). | ||
=== FirstNode === | === FirstNode === | ||
- | Default: 1 | + | Default: |
- | The number of the first terminal server node serviced by this instance of Synchronet. | + | The number of the first terminal server node serviced by this instance of Synchronet. The minimum value for this settings is '' |
+ | |||
+ | Normally, this value should be left at '' | ||
=== LastNode === | === LastNode === | ||
- | Default: 4 | + | Default: |
- | The number of the last terminal server node serviced by this instance of Synchronet. | + | The number of the last terminal server node serviced by this instance of Synchronet. |
+ | Specified last_node (x) > sys_nodes (y), auto-corrected | ||
- | === OutbufHighwaterMark | + | === MaxConcurrentConnections |
- | Default: 0 or 1024 | + | Default: |
+ | If set to a non-zero number, this will limit the number of concurrent connections to the [[server: | ||
+ | |||
+ | === OutbufHighwaterMark === | ||
+ | |||
+ | Default: '' | ||
=== OutbufDrainTimeout === | === OutbufDrainTimeout === | ||
- | Default: 10 | + | Default: |
+ | |||
+ | === SemFileCheckFrequency === | ||
+ | |||
+ | Default: value of '' | ||
+ | |||
+ | === TempDirectory === | ||
+ | |||
+ | Default: value of '' | ||
+ | |||
+ | === HostName === | ||
+ | |||
+ | Default: value of '' | ||
=== ExternalTermANSI === | === ExternalTermANSI === | ||
- | Default: pc3 (Linux) or cons25 (FreeBSD) | + | Default: |
+ | |||
+ | When the BBS is running on a *nix-like OS, this value determines the value of the '' | ||
=== ExternalTermDumb === | === ExternalTermDumb === | ||
- | Default: dumb | + | Default: |
+ | |||
+ | When the BBS is running on a *nix-like OS, this value determines the value of the '' | ||
+ | |||
+ | === UseDOSemu === | ||
+ | |||
+ | Default: '' | ||
+ | |||
+ | This will enable [[howto: | ||
=== DOSemuPath === | === DOSemuPath === | ||
Default: ''/ | Default: ''/ | ||
+ | |||
+ | When the BBS is running on a *nix-like OS, this value determines the default path of the DOS emulator to be executed when a non-native program (e.g. 16-bit MS-DOS door game) will be invoked by the BBS. | ||
+ | |||
+ | === DOSemuConfPath === | ||
+ | |||
+ | Default: '' | ||
+ | |||
+ | This specifies where DOSEmu should look for the conf file. If you only specify a filename, it will look in the '' | ||
+ | |||
+ | The order of using conf file locations is: | ||
+ | |||
+ | - It will look in the startup dir of the external program | ||
+ | - It will use this path from sbbs.ini (if configured) | ||
+ | - It use / | ||
+ | - It will use / | ||
=== AnswerSound === | === AnswerSound === | ||
- | Default: none | + | Default: |
- | Path to a WAVE file to played (locally) when accepting incoming connections. | + | Path to a WAVE file to played (locally) when accepting incoming connections. Only supported on Windows. |
=== HangupSound === | === HangupSound === | ||
- | Default: none | + | Default: |
- | Path to a WAVE file to be played (locally) when terminating connections. | + | Path to a WAVE file to be played (locally) when terminating connections. Only supported on Windows. |
=== Options === | === Options === | ||
- | Default: XTRN_MINIMIZED | + | Default: |
- | Supported options: | + | Recommended: |
+ | |||
+ | Supported options, separated by the pipe ('' | ||
^ Option | ^ Option | ||
- | |XTRN_MINIMIZED | + | |XTRN_MINIMIZED |
- | |AUTO_LOGON | Enable automatic login based on IP address | | + | |AUTO_LOGON | Enable automatic login based on IP address |
- | |DEBUG_TELNET | + | |DEBUG_TELNET |
- | |SYSOP_AVAILABLE | + | |ALLOW_SSH |
+ | |ALLOW_SFTP | Enable SSH File Transfers (SFTP) | ||
|ALLOW_RLOGIN | Enable the RLogin protocol for incoming connections | | |ALLOW_RLOGIN | Enable the RLogin protocol for incoming connections | | ||
- | |USE_2ND_RLOGIN | ||
|NO_QWK_EVENTS | |NO_QWK_EVENTS | ||
- | |NO_TELNET_GA | + | |NO_NEWDAY_EVENTS| Disable |
|NO_EVENTS | Disable the Events thread (all timed events) | | |NO_EVENTS | Disable the Events thread (all timed events) | | ||
- | |NO_HOST_LOOKUP | + | |NO_TELNET |
+ | |NO_TELNET_GA | ||
+ | |NO_HOST_LOOKUP | ||
|NO_SPY_SOCKETS | |NO_SPY_SOCKETS | ||
- | |ALLOW_SSH | + | |NO_DOS |
|NO_RECYCLE | |NO_RECYCLE | ||
|GET_IDENT | Use the IDENT protocol on incoming connections | | |GET_IDENT | Use the IDENT protocol on incoming connections | | ||
- | |NO_JAVASCRIPT | + | |
- | |MUTE | Mute all sound output | | + | |
==== [FTP] ==== | ==== [FTP] ==== | ||
Line 276: | Line 408: | ||
==== [Services] ==== | ==== [Services] ==== | ||
+ | |||
+ | ^ Key ^ Default | ||
+ | | iniFileName | ||
+ | | Interfaces | ||
+ | | JavaScript* | ||
+ | | LoginAttempt* | // | ||
+ | | HostName | ||
+ | | TempDirectory | // | ||
+ | | SemFileCheckFrequency | //Global// | Frequency (interval) in seconds between semaphore file checks | | ||
+ | | AnswerSound | ||
+ | | HangupSound | ||
+ | | BindRetryCount | // | ||
+ | | BindRetryDelay | // | ||
+ | | LogLevel | ||
+ | | Options | ||
See [[: | See [[: | ||
Line 288: | Line 435: | ||
- | + | {{tag> | |
- | + | ||