Products Downloads Prices Support Company

Domain specific settings

Note: Most 'matching' settings take wild card lists as parameters, for example "fred*" will match "freddy" and "Fred@bob". And "1.2.*,2.3.*" will match 1.2.4.4 and 2.3.99.100. 

Domain Name

This is the name of this virtual domain of the news server. The news server supports any number of virtual domains. See this page for a discussion on different types of virtual domains. 

Virtual Domain IP

This is the IP number of this virtual domain. You will also need to configure your operating system and network to respond to this IP address. Doing this for specific operating systems is described on this page in more detail. 

access_groups - Groups visible to this domain

A list of news groups that will be visible to users of this domain, typically leave this blank so users can see all groups.

Example: access_groups "netwin.*,*mp3*,!*naughty*"

Syntax: access_groups string

area - Limits for areas (ip ranges)

Area limits are for applying a limit to a group of ip addresses

area name=string ip=string speed=int daily=int monthly=int break=bool

Value Description
name This is the 'name' of this usergroup, it will be shown when limits are reached
ip List of ip addresses that these limits apply to, Example: x.x.x.x,y.y.y.*
con Number of connections for this area in total
speed Limits the speed to send to this user in bytes per second, e.g. speed=20k
daily This defines a daily download limit, again this stops a single customer abusing the system over a short time period. Or you may sell the service you provide as a 'daily' limit.
monthly This defines a montly limit, e.g. monthly="300mb", or monthly="2gb"
break If set to "true" then if this rule matches then no further rules are processed

Syntax: area name=string ip=string groups=string con=int speed=int daily=int monthly=int break=bool

create_block - Block new users from this ip

Block users at these ip addresses from creating accounts

Syntax: create_block string

create_max - Maximum signups from one IP in a day

This setting stops spammers registering hundreds of accounts on your system before sending out a lot of spam. A setting of 2-3 is probably a good idea. 

Syntax: create_max int

create_reqd - Required fields for new users

A comma separated list of field names. Allowable field names are the "field" value(s) of the g_authent_info setting.

For example, if your setting is:
       name,phone

then when a new user is created they will be forced to fill in the name and phone fields in the registration form.

Syntax: create_reqd string

create_user - Method for adding new users

Can be one of:

Value Description
open Anyone can create an account immediately providing name and password.
email Anyone can create an account providing existing email address.
manager Manager approves account, user provides existing email address.
manager_new Manager activates account, user proves name and password.

In 'open' mode users account are created instantly. In 'email' mode they recieve an email and use a link to create their account. In 'manager' mode the manager recieves an email, and via a link sends the user an email, which they use to create their account. In 'manager_new' mode the account is created disable and the manager receives an email, with a link to activate the account.

Syntax: create_user string

manager_email - Managers Email

This is the manager's Email address for this domain.  When users register themselves, if you have set create_user to the 'manager' method, an Email will be sent to this Email address to await confirmation of the user creation.

Syntax: manager_email string

manager_username - Managers user name

Specifies the local user who has manager rights for this domain, this user can add/remove users, etc, and do general administration tasks within this virtual domain using the web admin tool http://your.server:8119 

Syntax: manager_username string

pophost - If user doesn't exist then try to login to pop server, if successful then create user locally

For auto creating users based on the mail server.

Syntax: pophost string

See also: g_authent_cachelife, g_authent_process, g_authent_domain, g_authent_number, g_authent_info, g_authent_setused, g_authent_setdelay, g_authent_setauto, g_authent_ip, g_rss_auth

pophost_nodomain - Strip domain name when doing POP login

This is usually a good idea if the destination server is NOT surgemail.

Syntax: pophost_nodomain bool

See also: g_authent_cachelife, g_authent_process, g_authent_domain, g_authent_number, g_authent_info, g_authent_setused, g_authent_setdelay, g_authent_setauto, g_authent_ip, g_rss_auth

post_add - Path to file to add to posts

Adds the text file to the end of each local post.

Syntax: post_add string

See also: g_crosspost_max, g_filter_post, g_postlimit, g_postlimit_silent, g_post_rec_days, g_post_rec_disabled, g_post_rec_nosubject, g_post_replace_date, g_replicate_post

prefix - Prefix for usernames in database

This prefix is used in the userdatabase to distinguish these virtual domain users. This setting is for backward compatibility and not generally recommended. It is better to store user@domain.name in the userdatabase rather than just 'username'. 

 

 

Syntax: prefix string

usergroup - Limits for users (defined by usergroups)

Usergroup lets you define a bunch of limits that will apply to all 'users' who are members of the specified usergroup, you can use the special names 'loggedin', 'notloggedin' to apply to all users logged in, or all users who are not logged in.

When users are created they can also be placed in a 'usergroup'. An authent module should return something like this to indicate a user is in a particular news group "staff" say:

+ok fred@widget.com 0 config groups="staff,adults" 

This user is also in the 'adults' usergroup.

"usergroup name=string ip=string groups=string post=string con=int speed=int daily=int monthly=int break=bool byip=bool

Value Description
name This is the 'name' of this usergroup and must match the group defined in the authent module or one of the special names (loggedin or notloggedin or webnews), it will be shown when limits are exceeded. The special names 'notloggedin' and 'webnews' apply to only those things respectively
ip This list of ip addresses and wild cards makes this usergroup rule apply only to matching ip addresses. For example you might set different limits for users connecting from known trusted addresses.
groups This defines the groups that this user can 'read'. These are 'added' together so if multiple 'usergroup' rules apply to a single user then the list of groups they can read gets longer.
post If present this defines which groups the user can 'post' to, by default the user can post to all the groups in the 'groups' list above. So only defined this when you 'don't' want the read and post groups to be the 'same'.
con Limits the number of simultaneious connections from users in this usergroup. This is not a limit per ip, but a limit for the entire usergroup. To give a limit 'per ip' set 'byip=true'
speed Limits the speed to send to this user in bytes per second, e.g. speed=20k, this is a good way to stop your server being 'overwhelmed' by a small group of high speed customers.
daily This defines a daily download limit, again this stops a single user abusing the system over a short time period. Or you may sell the service you provide as a 'daily' limit.
byip true/false, If true then the connection limit applies to the ip addresses individually rather than as a group.
monthly This defines a montly limit, e.g. monthly="300mb", or monthly="2gb"

Example:

+ok fred@widget.com 0 config groups="bigusers"
+ok bob@widget.com 0 config groups="smallusers"

usergroup name="bigusers" groups="*" con="10" daily="3gb"
usergroup name="smallusers" groups="*" con="10" daily="100mb"

Syntax: usergroup name=string ip=string groups=string post=string con=int speed=int daily=int monthly=int break=bool byip=bool force=bool

welcome - NNTP welcome message

This will be shown when a user connects to your system.

e.g. welcome "Fancy pants news service, signup on http://fancy-pants.com"

Syntax: welcome string