Difference between revisions of "ChannelSecurity"
m (→=Unregistered channels) |
(→Invite-only: Added contents) |
||
Line 41: | Line 41: | ||
==Invite-only== | ==Invite-only== | ||
+ | ===Set channelmode=== | ||
+ | You can restrict access to your channel by only allowing people who are invited. | ||
+ | Making the channel invite-only is done by using the channel mode +i | ||
+ | /MODE #channel +i | ||
+ | For instance to make our channel #ourStaffChannel invite-only, use: | ||
+ | /MODE #ourStaffChannel +i | ||
+ | |||
+ | ===Invite user=== | ||
+ | To invite a user to the channel you can use: | ||
+ | /INVITE nickname #channel | ||
+ | For instance, to invite the user ''JackDaniels'' to #ourStaffChannel, issue: | ||
+ | /INVITE JackDaniels #ourStaffChannel | ||
+ | |||
+ | The invite command is restricted to operators (@/+o) and above when the channel is invite-only. Please also note that inviting random people can be seen as a form of advertising though and could be a breach of the IRC network's terms of use/rules. | ||
+ | |||
+ | ===Knock=== | ||
+ | A user can also request to be invited into the channel with the /KNOCK command: | ||
+ | /KNOCK #channel message goes here | ||
+ | For instance, if I want to be invited to #ourStaffChannel, I can use: | ||
+ | /KNOCK #ourStaffChannel Hei guys, please let me in. Itsa me! Mario! | ||
+ | |||
+ | The operators in the channel will then get an opnotice with your nickname, ident@hostmask and the message you supplied: | ||
+ | NoticeOp(eu.chat4all.org): [Knock] by JackDaniels!Jack@the.liquor.cabinet (I want in..) | ||
+ | Upon which they can decide whether or not to invite you (or ban you in case they get tired of your knocks) | ||
+ | |||
+ | You can't knock if: | ||
+ | * you are banned | ||
+ | * you are already on the channel | ||
+ | * the channel is not invite-only | ||
+ | |||
===Unregistered channels=== | ===Unregistered channels=== | ||
− | ===Using xOP system=== | + | Unregistered channels only have access to the above commands. They'll also lose the +i mode when the channel is destroyed (for instance if the last user of the channel has left). |
− | ===Using ACCESS system=== | + | |
+ | ===Registered channels=== | ||
+ | Registered channels can add the +i channel-mode to the ChanServ MLOCK, so it will automatically be set (and not allowed to be unset) upon channel creation (when the first user enters the room). | ||
+ | However, since no channel-modes are in effect when a channel has no users, the first user to enter the channel will be able to enter without being invited (since +i will be set ''after'' the first user has entered). | ||
+ | This can be circumvented by requesting the ChannelKeeper to be added to your room to always keep it open. | ||
+ | |||
+ | Users with the appropriate rights can also use the '''''/CHANSERV INVITE #channel''''' command to invite themselves into the channel. See the following sections for details on what the appropriate rights are. For instance, to invite yourself to #ourStaffChannel, you can use: | ||
+ | /CHANSERV INVITE #ourStaffChannel | ||
+ | This can ''only'' be used to invite yourself and not others. | ||
+ | |||
+ | ====Using xOP system==== | ||
+ | If you are using the xOP ChanServ user-management system (which is being used by default on newly registered channels), you can add people to the AOP list to allow them to invite themselves into the channel through ChanServ: | ||
+ | /CHANSERV AOP #channel ADD nickname | ||
+ | For instance, to add JackDaniels to the AOP list of #ourStaffChannel, issue the command: | ||
+ | /CHANSERV AOP #ourStaffChannel ADD JackDaniels | ||
+ | |||
+ | After which JackDaniels can issue: | ||
+ | /CHANSERV INVITE #ourStaffChannel | ||
+ | to have himself invite into the channel by ChanServ (or it will appear to come from the channel's BotServ bot if BOTSERV SET SYMBIOSIS is set to ON and a BotServ bot has been assigned to the channel). | ||
+ | |||
+ | ====Using ACCESS system==== | ||
+ | If you are using the [[Levels|ACCESS LEVELS]] system instead of the xOP system, you have a bit more control over who you'll allow access to the ChanServ INVITE command to invite themselves into the channel. | ||
+ | For information on how/when to enable the [[Levels||ACCESS LEVELS]] system by disabling the xOP system, please read the [[Levels||main article on access levels]]. | ||
+ | |||
+ | Using the default access levels, you can add a user with the minimum of level 5 to your channel's ChanServ Access list: | ||
+ | /CHANSERV ACCESS #channel ADD nickname level | ||
+ | For instance to add JackDaniels to the access list of channel #liquorStore with level 5, issue: | ||
+ | /CHANSERV ACCESS #liquorStore ADD JackDaniels 5 | ||
+ | |||
+ | You can also chose to lower/raise the required level for the Chanserv INVITE command by changing the minimum required level with: | ||
+ | /CHANSERV LEVELS #channel SET INVITE minLevel | ||
+ | For instance to lower the minimum required access level for INVITE on #liquoreStore to 1, you can use: | ||
+ | /CHANSERV LEVELS #liquoreStore SET INVITE 1 | ||
+ | |||
+ | Now everyone with access level 1 or higher can use the INVITE command. | ||
+ | |||
+ | For instance: | ||
+ | /CHANSERV ACCESS #liquorStore ADD JackDaniels 1 | ||
+ | will allow JackDaniels to use ''/CHANSERV INVITE #liquorStore'' without giving him KICK/OP/etc rights (at least with the default chanserv levels settings) | ||
==ChanServ Restricted== | ==ChanServ Restricted== | ||
===using xOP system=== | ===using xOP system=== | ||
===using ACCESS system=== | ===using ACCESS system=== |
Revision as of 13:24, 26 September 2010
Contents
Channel Security
There are several ways on locking down your channel to restrict access.
Secret channel
The simplest (and perhaps least effective) way to prevent any random user to enter your channel, is to make your channel secret:
/MODE #channel +s
For instance if you want to make your channel #ourSecretHideout secret, you issue:
/MODE #ourSecretHideout +s
This will hide the channel from the channel /LIST and from the /WHO and /WHOIS outputs on users (unless you share that channel with them)
Pros
- Can be used on unregistered channels
- Very simple to set
- Prevents random users from knowing about your channel through the channel /LIST, /WHO or /WHOIS commands.
Cons
- If someone mentions your channelname in a different channel, malicious users might find out about the channel as well.
- You won't as easily get new users perhaps, since people with similar interests can't discover the channel through /LIST
- Mode will be lost when channel is destroyed (for instance when no-one is in the channel anymore). This can be circumvented though for registered channels by adding the +s mode to the channel's ChanServ MLOCK setting.
Channel Key
One of the more naive ways to do this on a public channel is by setting a channel key:
/MODE #channel +k key
For instance, to require people to enter the channel key 'mySecretKey' on the channel #ourStaffChannel, you'd have to use this command:
/MODE #ourStaffChannel +k mySecretKey
If people want to join the channel then, they'd have to specify the key in the join command:
/JOIN #channel key
For instance, to join our example room:
/JOIN #ourStaffChannel mySecretKey
Pros
- Can be used on unregistered channels
- Very simple to set
- Prevents random users from entering your channel when they see it in the channel /LIST.
Cons
- Mode will be lost when channel is destroyed (for instance when no-one is in the channel anymore). This can be circumvented though for registered channels by adding the key mode to the channel's ChanServ MLOCK setting.
- First user to enter will not need the channel key to enter, since the channel effectively doesn't exist at that point and thus has no key mode set. This can be worked around by requesting the ChannelKeeper bot to be added to your channel to keep the channel open.
- It is harder for people to join the channel if they are using an applet.
- Keys can easily be made useless if a bad user gets ahold of the key (either by someone else on the channel giving it to them, or by reading it on your website for instance). Also note that anyone in the channel can see what the channel's key is, because it is part of the channel modes and all modes are visible. So if someone gets invited to the channel, they can find out about the key as well.
Invite-only
Set channelmode
You can restrict access to your channel by only allowing people who are invited. Making the channel invite-only is done by using the channel mode +i
/MODE #channel +i
For instance to make our channel #ourStaffChannel invite-only, use:
/MODE #ourStaffChannel +i
Invite user
To invite a user to the channel you can use:
/INVITE nickname #channel
For instance, to invite the user JackDaniels to #ourStaffChannel, issue:
/INVITE JackDaniels #ourStaffChannel
The invite command is restricted to operators (@/+o) and above when the channel is invite-only. Please also note that inviting random people can be seen as a form of advertising though and could be a breach of the IRC network's terms of use/rules.
Knock
A user can also request to be invited into the channel with the /KNOCK command:
/KNOCK #channel message goes here
For instance, if I want to be invited to #ourStaffChannel, I can use:
/KNOCK #ourStaffChannel Hei guys, please let me in. Itsa me! Mario!
The operators in the channel will then get an opnotice with your nickname, ident@hostmask and the message you supplied:
NoticeOp(eu.chat4all.org): [Knock] by JackDaniels!Jack@the.liquor.cabinet (I want in..)
Upon which they can decide whether or not to invite you (or ban you in case they get tired of your knocks)
You can't knock if:
- you are banned
- you are already on the channel
- the channel is not invite-only
Unregistered channels
Unregistered channels only have access to the above commands. They'll also lose the +i mode when the channel is destroyed (for instance if the last user of the channel has left).
Registered channels
Registered channels can add the +i channel-mode to the ChanServ MLOCK, so it will automatically be set (and not allowed to be unset) upon channel creation (when the first user enters the room). However, since no channel-modes are in effect when a channel has no users, the first user to enter the channel will be able to enter without being invited (since +i will be set after the first user has entered). This can be circumvented by requesting the ChannelKeeper to be added to your room to always keep it open.
Users with the appropriate rights can also use the /CHANSERV INVITE #channel command to invite themselves into the channel. See the following sections for details on what the appropriate rights are. For instance, to invite yourself to #ourStaffChannel, you can use:
/CHANSERV INVITE #ourStaffChannel
This can only be used to invite yourself and not others.
Using xOP system
If you are using the xOP ChanServ user-management system (which is being used by default on newly registered channels), you can add people to the AOP list to allow them to invite themselves into the channel through ChanServ:
/CHANSERV AOP #channel ADD nickname
For instance, to add JackDaniels to the AOP list of #ourStaffChannel, issue the command:
/CHANSERV AOP #ourStaffChannel ADD JackDaniels
After which JackDaniels can issue:
/CHANSERV INVITE #ourStaffChannel
to have himself invite into the channel by ChanServ (or it will appear to come from the channel's BotServ bot if BOTSERV SET SYMBIOSIS is set to ON and a BotServ bot has been assigned to the channel).
Using ACCESS system
If you are using the ACCESS LEVELS system instead of the xOP system, you have a bit more control over who you'll allow access to the ChanServ INVITE command to invite themselves into the channel. For information on how/when to enable the |ACCESS LEVELS system by disabling the xOP system, please read the |main article on access levels.
Using the default access levels, you can add a user with the minimum of level 5 to your channel's ChanServ Access list:
/CHANSERV ACCESS #channel ADD nickname level
For instance to add JackDaniels to the access list of channel #liquorStore with level 5, issue:
/CHANSERV ACCESS #liquorStore ADD JackDaniels 5
You can also chose to lower/raise the required level for the Chanserv INVITE command by changing the minimum required level with:
/CHANSERV LEVELS #channel SET INVITE minLevel
For instance to lower the minimum required access level for INVITE on #liquoreStore to 1, you can use:
/CHANSERV LEVELS #liquoreStore SET INVITE 1
Now everyone with access level 1 or higher can use the INVITE command.
For instance:
/CHANSERV ACCESS #liquorStore ADD JackDaniels 1
will allow JackDaniels to use /CHANSERV INVITE #liquorStore without giving him KICK/OP/etc rights (at least with the default chanserv levels settings)