Anope IRC Services

Anope Development => Modules => Topic started by: Aragon on August 24, 2009, 01:14:01 AM

Title: ns_vhost module
Post by: Aragon on August 24, 2009, 01:14:01 AM
Hi

My module, ns_vhost, is a very simplified version of HostServ implemented mostly in NickServ.  It allows users to simply set whatever vhost they like by running:

Code: [Select]
/msg nickserv set vhost <vhost>
There is no approval process nor oper intervention (on purpose), however, opers are able to saset user vhosts and this module adds an fvhost (forbidden vhost) command to operserv for keeping a list of unwanted or offensive vhosts (* and ? wildcards supported).

This module does not set the ident part at all like HostServ does.  That is left upto the user to configure in their IRC client.  To further prevent/dissuade abuse this module throttles how often a user may change his/her vhost.

The reason I wrote this was I didn't like the oper intervention needed with HostServ, and didn't think it was necessary to have another pseudo-client just for setting vhosts.  I'd like vhost selection to be as easy and open as choosing a nick is, while hopefully not creating chaos.

Module is written for Anope 1.8 and tested on 1.8.2 and Unreal 3.2.8.

Your testing and help with improving it would be appreciated!
Title: Re: ns_vhost module
Post by: Trystan Scott Lee on August 24, 2009, 03:40:48 AM
be sure to add this to the anope module site
Title: Re: ns_vhost module
Post by: Aragon on August 28, 2009, 03:29:13 AM
Published! :)

http://modules.anope.org/viewmod.php?id=218 (http://modules.anope.org/viewmod.php?id=218)
Title: Re: ns_vhost module
Post by: mooncup on August 28, 2009, 07:55:00 PM
Doesn't this make it impossible to ban anyone?
Title: Re: ns_vhost module
Post by: Jan Milants on August 28, 2009, 10:25:48 PM
essentially, yes... at least if the user is careful enough to never use his real host..
Title: Re: ns_vhost module
Post by: Aragon on August 29, 2009, 11:00:17 PM
No, it's not as simple as that.  As already stated:

Quote
This module does not set the ident part at all like HostServ does. That is left up to the user to configure in their IRC client. To further prevent/dissuade abuse this module throttles how often a user may change his/her vhost.
Title: Re: ns_vhost module
Post by: MeiR on August 29, 2009, 11:33:22 PM
Nice idea Aragon, but it might be proven as abusive.

Think of it, users will be able to set a vHost at every given moment they desire to. Throttle protection will be meaningless if a user plans to bypass a ban once a week \ month \ whatever.

Also, bypassing the forbidden wildcards will need not more than a slight effort.

I think Anope invested a considerable time on implementing HostServ, and in my opinion, all vHost manipulating is a thing which requires *some* authorization.
Remember that there's the HostSetters feature, which is wonderful for additional manpower, without opers dependence.

Bottom line: [In my humble opinion] this module is a recipe to problems, including impersonating and fakes, spam, insults, and a larger need of oper involvement, rather than for "/hs activate".

Sorry in advance if this post seems braggart, I just felt a need to state my thought ^^
Title: Re: ns_vhost module
Post by: Jan Milants on August 30, 2009, 12:02:24 AM
If I might suggest an addition... automatically banning the new vhost in channels the old vhost was banned or something like that.. or instead of banning the vhost, ban the masked host, if available (sometimes not the case in 1.8)..
Title: Re: ns_vhost module
Post by: Aragon on August 30, 2009, 05:23:53 PM
Sure, it's not perfect, but neither is HostServ, and both are optional.  This is IRC and ultimately if you have a user who is persistent enough about causing havoc you're going to have to resort to nick suspensions, glining, and emailing ISP abuse addresses to get it resolved.  No form of IRC service is going to save you there.

The difference between ns_vhost and hostserv as far as I see it is ns_vhost still relies on human intervention to resolve abuse whereas hostserv relies on human intervention for normal functioning and resolving abuse.  It's up to you to decide which you prefer.

I'm open to suggestions on how to make abusing ns_vhost harder.  Good idea, Jan!  I'll look in to doing that.