Oper block

In oper blocks you define all the IRC Operators accounts. Once defined you use the /OPER command on IRC to become IRCOp.

Syntax
oper { /* Required items: */ mask ; password ; class ; operclass ; /* Optional items to further limit who can /OPER */ auto-login ; require-modes maxlogins ; /* Optional items to define what will be set upon successful /OPER */ vhost ; swhois ; modes ; snomask ; server-notice-colors yes|no; server-notice-show-event yes|no; };

name
The name in the oper name { block defines which name to use in the OPER command on IRC (/OPER name password). This name is case sensitive!

Most people use their nick name here. You can use latin characters (A-Z a-z), numbers and _-[]. Do not use special characters like ö (as in Björn) or Arabic/Greek/etc. Such characters may cause you problems with /OPER'ing due to character set differences.

password
The password item defines the password to use. Passwords are case sensitive. Instead of using a plaintext password here, we highly recommend you to use Hashed passwords or SSL certificate fingerprints, see Authentication types.

In UnrealIRCd 6.0.4 and later the password item is no longer required. If you don't put a password then be sure to use a good mask (see next)!

mask
The mask defines from which host/IP this oper block may be used, this can be used for increased security. Set this to  if you want to permit any IP.

You may also use multiple masks, in which case the syntax becomes like:.

See Mask item for more options. For example, instead of an IP address or host, you can require a certain certificate fingerprint:  or a Services account:.

class
After a successful /OPER attempt the user will be put in the class you specify here. It's recommended to use a special class you created for opers (eg: class opers;) that typically has higher flood limits than ordinary users.

operclass
This defines which Operclass block to use. The operclass block configures which privileges this IRCOp will have (which IRCOp commands you may use, etc..).

See the default list of operclasses from which you can choose.

auto-login
NOTE: Requires UnrealIRCd 6.0.4 or later

If auto-login is set to yes then the user is automatically logged in if they match the mask. In this case there can be no password item.

This is generally only used for logins with certfp, see the automatic oper example at the end of this article.

require-modes
This lets one specify modes (such as 'z') that a user must have acquired before being allowed to OPER. This can be used, for example, to require opers to be on secure connections (user mode +z) before being able to become operators.

maxlogins
This allows you to restrict the number of concurrent oper logins from this host, for example if you set it to 1 then only 1 person can be oper'ed via this block at any time.

vhost
This hostname (virtual host) will be set after you successfully oper up.

swhois
Allows you to add one or more extra lines to the /WHOIS information for this oper. For example: swhois "a Network Administrator";

modes
Set these user modes after successful oper up.

snomask
By default an IRCOp gets the Snomasks from set::snomask-on-oper. You can use this oper::snomask to specify a different set of snomasks. See Snomasks for a full list.

server-notice-colors
Note: this setting only exists in UnrealIRCd 6 and later

Enable or disable colors in server notices (to snomasks). Valid options are yes and no. The default for all IRCOps is configured via set::server-notice-colors.

server-notice-show-event
Note: this setting only exists in UnrealIRCd 6.0.2 and later

Enable or disable showing of the susbystem.event (eg: ) in server notices to snomasks. Valid options are yes and no. The default for all IRCOps is configured via set::server-notice-show-event.

Simple example
oper bobsmith { class opers; mask { smithco.com; *.somedialupisp.com; }; password "f00"; operclass netadmin; swhois "a Network Administrator"; };

Automatic oper
NOTE: This requires UnrealIRCd 6.0.4 or later

This uses the certificate fingerprint. If the user connects with SSL/TLS with that client certificate fingerprint they become IRCOp automatically, they don't have to type the  command.

oper bobsmith { auto-login yes; mask { certfp "00112233etc."; } class opers; operclass netadmin; swhois "a Network Administrator"; };

Some little information about OperOverride
OperOverride are things like: joining a +ikl channel and going through bans, op'ing yourself in a channel, etc. See the OperOverride article for all information on this.