ChanServ
ChanServ allows you to register and control various aspects of channels. ChanServ can often prevent malicious users from "taking over" channels by limiting who is allowed channel operator privileges.
Note that any channel which is not used for 14 days (i.e. which no user on the channel's access list enters for that period of time) will be automatically dropped.
To use a ChanServ command, type /cs command.
Contents
Commands by Access Level
Founder (~) Level Commands
Note If your access level is above a SOP (100+) but you are not a founder, you may still have access to some of these commands
IDENTIFY
- Syntax /cs identify #channel <password>
Authenticates you as the founder of the channel. If you wish for several users to obtain an automatic +oq when they enter the channel, you may share the password you used to create the channel with them (please share smartly and with caution).
DROP
- Syntax /cs DROP #channel
Deregisters a channel. You have to identify to the channel before using this command.
UNSET
- Syntax /cs UNSET #channel {SUCCESSOR | URL | EMAIL | ENTRYMSG}
Clears the given setting for a channel.
SET
Allows the channel founder to set various channel options (registered channels).
SET | Command | Description |
FOUNDER | /cs SET #channel founder <nick> | Sets <nick> as founder for the channel |
PASSWORD | /cs SET #channel password <newpass> | Changes the existing FOUNDER password to the channel |
DESC | /cs SET #channel desc <description> | Changes the Channel Description in /cs info #channel |
TOPICLOCK | /cs SET #channel topiclock on/off | Enables the topic to be changed (or not) |
MLOCK | /cs SET #channel mlock <mode> | Ensures a channel mode is locked, so if no user is present the mode is retained |
PRIVATE | /cs SET #channel private on/off | Hides a channel from the /list command |
RESTRICTED | /cs SET #channel restricted on/off | Makes it so that only identified people on the access list are able to gain entry into the channel |
SECURE | /cs SET #channel secure on/off | Makes it so that only identified users will be given privileges on the channel as controlled by the access list (opping, etc). |
SECUREOPS | /cs SET #channel secureops on/off | When secure ops is set, users who are not on the access list will not be allowed chanop status. |
LEAVEOPS | /cs SET #channel leaveops on/off | When leave ops is set, CS will leave server ops (+o for the first person in the channel) in place even if the user would not normally get auto-opped. |
OPNOTICE | /cs SET #channel opnotice on/off | When op-notice is set, CS will send a notice to the channel whenever the OP, VOICE, or related commands are used for a user in the channel. |
ENFORCE | /cs SET #channel enforce on/off | If enforce is on, CS will not allow an AOP user to be de-opped etc. |
URL | /cs SET #channel url <url> | Sets the URL for a channel. |
/cs SET #channel email <email> | Sets an email for a channel. | |
ENTRYMSG | /cs SET #channel entrymsg <msg> | Sets the entry message for a channel. |
SOP (&) Level Commands
STATUS
- Syntax /cs STATUS #channel <nickname>
Returns the current access level of the given nickname on the given channel.
AKICK COMMANDS
AKICK | Command | Description |
ADD | /cs akick #channel add mask [reason] | The AKICK ADD command adds the given user@host or nick!user@host mask to the autokick list. If a reason is given with the command, that reason will be used when the user is kicked; if not, the default reason is "You have been banned from the channel". |
DEL | /cs AKICK #channel del <mask> | The AKICK DEL command removes the given mask from the autokick list. It does not, however, remove any bans placed by an autokick; those must be removed manually. |
LIST/VIEW | /cs AKICK #channel list/view <mask/list> | AKICK LIST command displays the autokick list, or optionally only those autokick entries which match the given. AKICK VIEW is similar, but shows more details. |
ENFORCE | /cs AKICK #channel enforce | ChanServ will enforce the current autokick list by removing those users who match an autokick mask. |
COUNT | /cs AKICK #channel count | The AKICK COUNT command returns how many entries there are on the autokick list. |
CLEAR COMMANDS
CLEAR | Command | Description |
MODES | /cs CLEAR #channel modes | Clears all modes on the channel except those set in the channel's mlock. |
BANS | /cs CLEAR #channel bans | Clears all bans on a channel. |
EXCEPTIONS | /cs CLEAR #channel exceptions | Clears all exceptions on a channel. |
INVITES | /cs CLEAR #channel invites | Clears all invite masks on a channel. |
OPS/HALFOPS/VOICES | /cs CLEAR #channel ops/halfops/voices | Removes mode +o/+h/+v from all users. |
USERS | /cs CLEAR #channel users | Kicks all users from the channel. |
AOP (@) Level Commands
TOPIC
- Syntax /cs TOPIC #channel <topic>
Causes ChanServ to set the channel topic to the one specified. This command is most useful in conjunction with SET TOPICLOCK.
UNBAN
- Syntax /cs UNBAN #channel
Tells ChanServ to remove all bans preventing you from entering the given channel.
INVITE
- Syntax /cs UNBAN #channel
Tells ChanServ to invite you into the given channel. If you get a message saying that the channel is not in use, it means that the channel is empty, and you can join it freely without needing to use this command.
KICK
- Syntax /cs UNBAN #channel
Tells ChanServ to kick the given nickname from the given channel. The message included in the kick will show who used the KICK command, as well as the reason given with the command, if any. Note that protected (+a) users cannot be kicked with this command, even by the channel founder.
HOPs(%), VOPs(+) & Everyone Else
INFO
- Syntax /cs INFO channel [ALL]
Lists information about the named registered channel, including its founder, time of registration, last time used, description, and mode lock, if any. If you are identified as the founder of the channel you're getting information for and ALL is specified, the entry message and successor will also be displayed.
Changing a Channel's Access List
Customized Access
The access list specifies which users are allowed Chan Op status or access to ChanServ commands on the channel. Different user levels allow for access to different subsets of privileges; /msg ChanServ HELP ACCESS LEVELS for more specific information. Any nickname not on the access list has a user level of 0.
The ACCESS ADD command adds the given nickname to the access list with the given user level; if the nick is already present on the list, its access level is changed to the level specified in the command. The level specified must be less than that of the user giving the command.
Syntax: ACCESS #channel ADD nickname level ACCESS #channel DEL {nickname | entry-num | list} ACCESS #channel LIST [mask | list] ACCESS #channel COUNT
Defaults
ACCESS TYPE | Command | Description | Privileges |
SOP |
SOP #channel ADD/DEL nickname SOP #channel LIST [mask | list]
|
Adds/Deletes a nickname from the SOPlist Displays the SOPlist for a channel. If a wildcard mask is given, only those entries matching the mask are displayed. If a list of entry numbers is given, only those entries are shown. Displays the number of SOPs on the access list for a channel. |
Users with SOP status are automatically +oa when they join the channel if identified. A SOP can modify the AOP, HOP and VOP lists. Only a channel's founder can modify the SOP list. |
AOP |
AOP #channel ADD/DEL nickname AOP #channel LIST [mask | list]
|
Adds/Deletes a nickname from the AOP list Displays the AOP list for a channel. If a wildcard mask is given, only those entries matching the mask are displayed. If a list of entry numbers is given, only those entries are shown. Displays the number of AOPs on the access list for a channel. |
Users with AOP status are automatically given a +o when they join the channel if identified. AOP may be conferred by SOPS and owners. AOPs may add to the HOP and VOP list. |
HOP |
HOP #channel ADD/DEL nickname HOP #channel LIST [mask | list]
|
Adds/Deletes a nickname from the HOP list Displays the HOP list for a channel. If a wildcard mask is given, only those entries matching the mask are displayed. If a list of entry numbers is given, only those entries are shown. Displays the number of HOPs on the access list for a channel. |
Users with HOP status are automatically given a +h when they join the channel if identified. HOP may be conferred by AOPs, SOPs and owners. AOPs may add to the HOP and VOP list. HOPs are unable to edit the access list. |
VOP |
VOP #channel ADD/DEL nickname VOP #channel LIST [mask | list]
|
Adds/Deletes a nickname from the VOP list Displays the VOP list for a channel. If a wildcard mask is given, only those entries matching the mask are displayed. If a list of entry numbers is given, only those entries are shown. Displays the number of VOPs on the access list for a channel. |
Users with VOP status are automatically given a +v when they join the channel if identified. HOP may be conferred by AOPs, SOPs and owners. |
CHANGING A CHANNEL OP LIST (TEMPORARY)
Used to confer or take away ops from a user in the channel. However, this does not affect the access list.
COMMAND | SYNTAX | DESCRIPTION |
PROTECT | /cs protect #channel <nick> | Gives channel protection to a selected nickname. |
DEPROTECT | /cs deprotect #channel <nick> | Removes channel protection from a selected nickname. |
OP | /cs op #channel <nick< | Ops a selected nickname on a channel. |
DEOP | /cs deop #channel <nick> | De Ops a selected nickname on a channel. |
HALFOP | /cs halfop #channel <nick> | Gives a halfop to a nickname on the channel. |
DEHALFOP | /cs dehalfop #channel <nick> | Removes halfop status from a nickname on the channel. |
VOICE | /cs voice #channel <nick> | Voices a selected nickname on a channel. |
DEVOICE | /cs devoice #channel <nick> | Devoices a selected nickname on a channel using ChanServ. |
LEVELS/PERMISSIONS
Lets you define the access level required for most of ChanServ's functions. You would say this is akin to editing Permissions on a forum.
- Syntax
- /cs levels #channel set <type> <level>
- /cs levels #channel disable type
- /cs levels #channel list
- /cs levels #channel reset
Basically, the Levels command allow you to define how much access is required by a user before they can use a certain ChanServ command. Unless you know what you are doing it is suggested you do not play around with these commands, and leave them as the default.
LEVELS SET allows the access level for a function or group of functions to be changed. LEVELS DISABLE disables an automatic feature or disallows access to a function by anyone other than the channel founder. LEVELS LIST shows the current levels for each function or group of functions. LEVELS RESET resets the levels to the default levels of a newly-created channel (see Default Channel Access Levels).
TYPE | DEFAULT LEVEL | DESCRIPTION |
AUTOPROTECT | 100 | Auto +a status on joining |
AUTO OP | 50 | Auto +o status on joining |
AUTO HALFOP | 40 | Auto +h status on joining |
AUTO VOICE | 30 | Auto +v status on joining |
INVITE | 50 | Allowed to use /cs invite. If this is a kingdom private channel and you wish to give some ex members %, you may have to switch this access level so that people with access level of 40 are able to invite themselves. |
AKICK | 100 | Allowed to edit the Autokick list |
SET | - | Founder only |
CLEAR | 100 | Allowed to use CLEAR commands |
UNBAN | 50 | Allowed to use UNBAN command |
ACC-LIST | 1 | Allowed to view the access list |
ACC-CHANGE | 30 | Auto +v status on joining |
MEMO | 100 | Allowed to read memos |
OP-DEOP | 50 | Allowed to use OP/DEOP |
VOICE | 30 | Allowed to use VOICE/DEVOICE |
HALFOP | 40 | Allowed to use HALFOP/DEHALFOP |
PROTECT | 100 | Allowed to use PROTECT/DEPROTECT |
KICK | 50 | Allowed to use KICK |
TOPIC | 50 | Allowed to use TOPIC |
STATUS | 100 | Allowed to use STATUS |
Registering A Channel
In order to register a channel, use the following command.
- /msg chanserv register #channel password description
Replace #channel with the channel you are trying to register. Replace password with a password that will only be used for channel administration (not one that is required for users to know to join the channel). Replace description with a description of your channel, this will be publicly visible.
Securing a Kingdom Channel
When creating a private channel for a kingdom, it is important that only authorized members are able to get in. These modes may be used in combination to help secure a private kingdom channel.
/cs set mlock #channel +s
- This makes a channel secret and not show up when users are /whois 'd. It will also not show up on the channels list. Therefore, only people that know of the channel’s existence will be able to join the channel. This is a basic step in ensuring that your channel is secure – however once someone knows what your channel is called there is nothing to stop them from joining anyway.
- This is a CRUCIAL step. If netsplits happen, channels which have not had the secret mode modelocked to the channel will show up in /list as well as their topics, which is a severe security breach if you have wave info etc. on the channel topic.
/cs set mlock #channel +k <key>
- This applies a key/password to the channel. Note that this is NOT the same as the password you used to create the channel. In order to join the channel, people then need to type /join #channel <key>. However, there are several key breakers in irc and if this lock is applied by itself it does not ensure security as your channel is still not-secreted and anyone with the key will be able to join.
/cs set mlock #channel +i
- Using mode +i makes your channel invite-only - that is, only someone who has been invited to the channel first may join the channel. The advantage with mode +i is that if you need someone in your channel once, they can come in for just that occasion, and they will not be able to return.
- If you have access to the channel and/or are a kingdom member, just use /cs invite #channel for an invite from ChanServ, and add it to your autojoin list - /ns ajoin add #channel and this will bypass the need to use the ChanServ invite everytime you connect onto IRC.
/cs set #channel Restricted on
ChanServ has an option, called "restricted", which will prevent anyone not on the ChanServ access list from remaining in the channel. Beware, however, as people can still join, however they will then be immediately kicked and banned. This will allow them to see your topic, any channel modes, how many users are in your channel, and who is in your channel. This option is best used in combination with other options. To apply restricted mode, you must use the "set" command, which is usually restricted to the founder (owner) of the channel.
- For ease of use, the best combination is mode +s and the use of the Restricted Method.
- For the highest security, the best combination is mode +s, mode +i, and the use of the Restricted Method.
Also Read
- Services Offered by UtoNet
- NickServ Commands
- MemoServ Commands
- User Commands
- User Modes
- Channel Modes
External Links
- ChanServ Commands http://www.utonet.org/help.php?hid=2
- Setting Up a Kingdom Channel http://www.utonet.org/articles.php?a=10