[INACTIVE][SEC/GEN] iplock - One ip per user [#670]

Discussion in 'Inactive/Unsupported Plugins' started by mixxit, Mar 6, 2011.

     
  1. Offline

    mixxit

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    Minecraft account:
    MCUSERNAME
    iplock - limit 1 ip address per player

    Version: See Git
    This plugin locks your users to 1 ip and one player name. Many thanks to whitelist plugin file reading/writing which i based this around!

    If a player tries to login from a different IP address than they (automatically) registered on their first connect, then they will be kicked with the message 'Your IP is not associated with this account'

    If a player tries to login from a different character than the one associated with their IP address then they will be kicked with the message 'Your IP is not associated with this account'.

    Features:
    • Prevents players from hogging resources two/multi-boxing
    • Prevents players from account sharing
    • Forces players to use a static ip instead of dhcp to access their characters
    • Provides an additional layer of security to prevent users breaking into admin accounts
    Downloads:

    (Normal version)
    https://github.com/mixxit/iplock/raw/master/iplock.jar

    Source - https://github.com/mixxit/iplock

    Installation:
    Simply drop the iplock.jar into your plugins folder. There are no configuration settings required nor commands. As soon as your server next boots it will begin noting player account names to ip addresses.

    Player data is stored in plugins/iplock should you wish to edit it be sure to reload the plugin

    Commands:
    iplock refresh - refreshes iplock.users file

    Files:
    plugins/iplock/iplock.users contains a list of all the ip addresses and the associated IGNs. Note, editting this file will not be detected by the server and would require a reboot. Perhaps a future feature to edit these entries from in game and detect changes will be added at some point.

    Config file
    plugins/iplock.properties
    max-char = 0 - allows unlimited character names
    spe-char = false - allows special characters and spaces
    subnet = false - disallows players from connecting from anywhere except their IP (true allows them to login from anywhere in their class C subnet)

    Potential future features (no promises):
    Edit IP accounts from 'slash' commands
    Allow exceptions for particular accounts (not recommended)

    Changelog:
    https://github.com/mixxit/iplock/commits/master
    dark_hunter likes this.
  2.  
  3. Offline

    Richard Robertson

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    Minecraft account:
    MCUSERNAME
    Shouldn't you give a description of the commands and configuration files?

    Does this mean that a user can only log in from a certain IP address? That won't work very well for people whose addresses change every day.
  4. Offline

    Wulfspider

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    Minecraft account:
    MCUSERNAME
    Yeah... this plugin sounds like a headache for server admin. I can imagine most of the people who play Minecraft from home will be on a dynamic IP, so some may change daily, weekly, monthly, etc. I can see the logic though if someone is playing multiple characters at the same time therefore consuming resources that may make another player unable to play, but for everyone else... a headache. Especially if people want to LAN together and play this on an internet server who has this.
  5. Offline

    mixxit

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    Minecraft account:
    MCUSERNAME
    yes this is definitely not what you would want to use in those scenarios
  6. Offline

    Racha

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    Minecraft account:
    MCUSERNAME
    Well, there are users, who has dynamic IP, it could be cool, if someone makes a plugin, with what people can register 1 account from 1 IP, like offline mode register plugin :)
    Sorry for my bad english ^^
  7. Offline

    mixxit

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    Minecraft account:
    MCUSERNAME
    updated some more fixes for loading
  8. Offline

    EvilSeph Retired Staff

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    Minecraft account:
    MCUSERNAME
  9. Offline

    mixxit

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    Minecraft account:
    MCUSERNAME
  10. Offline

    blinghung

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    Minecraft account:
    MCUSERNAME
    Press Edit Thread
  11. Offline

    mixxit

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    Minecraft account:
    MCUSERNAME
    The guide is wrong, its actually in the 'Thread Tools V'
  12. Offline

    Lucy

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    Minecraft account:
    MCUSERNAME
    The description needs work. Too many unanswered questions.

    One of which comes to mind is: Does it store the IP address for later? Basically, suppose I log into your server. Suppose that tomorrow my ISP decides to change my IP on me. Will I be able to log in?

    Does this stop multiple people from using the same IP or the same person from using multiple IPs?

    If the latter, why? My roommate and I tried to both log onto my server with the same account to find out what would happen and it wouldn't let us because the account was already in use. So it seems that the plugin, as I understand the description would be a little redundant.
  13. Offline

    mixxit

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    Minecraft account:
    MCUSERNAME
    Q) One of which comes to mind is: Does it store the IP address for later? Basically, suppose I log into your server. Suppose that tomorrow my ISP decides to change my IP on me. Will I be able to log in?
    A) Yes, see the OP. One IP per user, so no a second ip won't work
    ------------
    Q) Does this stop multiple people from using the same IP or the same person from using multiple IPs?
    A) Both, one ip = 1 user!
    ------------
    Q) If the latter, why? My roommate and I tried to both log onto my server with the same account to find out what would happen and it wouldn't let us because the account was already in use.
    A) Because this plugin locks it to one ip per user - nothing more nothing less, whoever logged in the very first time is given the account and this is stored in the file mentioned in the description
    ------------
    Q) So it seems that the plugin, as I understand the description would be a little redundant
    A) The whole point of this plugin is to stop players from 'two boxing' and to lock an ip to a user.
  14. Offline

    XeonDead

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    Minecraft account:
    MCUSERNAME
    Please, add the function to lock ip for user forever. For those users who do not want to go to the server and discover that their account was stolen.
  15. Offline

    Lucy

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    Minecraft account:
    MCUSERNAME
    The responses for questions 2 and 4 do not seem even remotely desirable to me. The answer to question 4 seems to be also be the answer for question 3 in the manner that I meant question 3. I honestly don't see why two boxing is important enough to prevent that disallowing families, roommates, spouses, etc from playing together on the same server is considered an acceptable loss. My server's already being used by a number of people who share the same internet connection. I'm sure many other servers are as well.
  16. Offline

    mixxit

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    Minecraft account:
    MCUSERNAME
    lucy why are you in this thread? lol

    seems to me that you dont need to lock an ip to a user and are coming in here to inform me of this and how it won't be of use to you

    *boggles at the reason*
  17. Offline

    Richard Robertson

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    Minecraft account:
    MCUSERNAME
    I quite agree with Lucy actually. I was pretty confused on why you would ever want to inhibit your players in this fashion.
  18. Offline

    mixxit

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    Minecraft account:
    MCUSERNAME
    To prevent users from logging in from multiple ip addresses...

    It's like me going into the nocreeper thread when i want creepers and saying this mod is no use to me
  19. Offline

    Richard Robertson

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    Minecraft account:
    MCUSERNAME
    But your plugin would cause problems for probably 95% of the Minecraft playing world.
  20. Offline

    mixxit

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    Minecraft account:
    MCUSERNAME
    Yes - if you installed this mod on a server where you wanted the exact opposite of it's functionality...

    *Boggles at the madness*
  21. Offline

    davr

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    Minecraft account:
    MCUSERNAME
    Yeah guys calm down. That's why it's a plugin. If you don't need it, don't install it. You say it causes problems for 95%...well then I bet the remaining 5% is really happy someone made a plugin for them.
    ichingpow likes this.
  22. Offline

    Bilkokuya

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    Minecraft account:
    MCUSERNAME
    While I understand the logic of "don't use it if it's not what you want" - my opinion on this, is that it's a terrible development. I say that only on the basis that it is designed to restrict something in a way similar to the more hellish DRM that other games have - seeing people wanting to develop this for a generally open game just goes against me.

    Anyway, more importantly, I feel this could be useful if it was configurable; turning it into more of a feature than a restriction. Possible adding commands, for example:
    • /iplock - allowing people to lock their account
    • /ipunlock - allowing people to unlock it; for example if they know their IP will change
    • /iplockall - admin commands for locking everybody
    • /ipunlockall - admin commands for unlocking everybody

    As well as config options to make it lock by default or not.
  23. Offline

    mixxit

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    Minecraft account:
    MCUSERNAME
    It's nothing to do with DRM and is not even remotely related
    [MERGETIME="1299711981"][/MERGETIME]
    Updated to the required namespace convention
    [MERGETIME="1299713359"][/MERGETIME]
    hi xeon, that is the default functionality - did you mean something different?
  24. Offline

    Bilkokuya

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    Minecraft account:
    MCUSERNAME
    I said it restricts functionality in a similar way to some of the worse DRM - I didn't say this was DRM. The way that this prevents access in a non-customisable way; where users can end up locked out of a game due to having a dynamic IP; or wanting to play it on multiple computers is very similar to a lot of the worse DRM which restricts users to installing a game on a single computer. I was simply saying I believe it's wrong for things like that to be developed for a game that is relatively open to play; even if this is the choice of a server-admin.
  25. Offline

    Boon Pek

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    Minecraft account:
    MCUSERNAME
    I'd like to see this developed. It helps prevent those with online=false to ensure that players will not impersonate someone else! :p
  26. Offline

    Zaros

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    Minecraft account:
    MCUSERNAME
    How about this. Add a area in a config file which allows an affected user list. That way, its more of a high level security measure for people with high permissions instead of a burdon to all players(DHCPs are quite the rage with ISPs). Another idea would be to make each player set a /password on join, and make the IP disconnect time 10 seconds. This way if the player does have a dynamic IP that switches, they can reset the IP by confirming their password. 10 seconds would be plenty IMO, and it would make this one hell of an amazing plugin.
  27. Offline

    Bilkokuya

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    Minecraft account:
    MCUSERNAME
    This.
  28. Offline

    Zaros

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    Minecraft account:
    MCUSERNAME
    I'll reorganize it for the OP though, as my ideas tend to get a bit sloppy.

    Suggested features
    -Area in config file for IPlocked users to be specified (an Userlist=true).
    -This allows it to be used on specified-only players.
    -Possibly add an /ipadd and /ipremove ingame to add players to the list.

    -Add a password system.
    -(Most players have dynamic IPs, not because of their own computer or router, but because its what ISPs provide).
    -This password allows players to bypass the IP block and reset the locked IP.
    -The user is prompted to set a password when first joining the server.

    -When a player logs in from a IP different from the locked one, the player is given a 10 second auto-logout notice.
    -This gives the player time to enter /pass ______ before getting disconnected.
    -This also allows a minimization of most possible damage, as 10 seconds is not alot of time to grief and destroy.

    Possible features
    -Add a seperate class for people with the 10 second auto-logout, and change them back to their previous class upon password confirmation.

    I really would have loved to code this, but I'm very busy with other things and have no idea how to code Bukkit plugins.

    I do not wish to infringe on any plans you have for the plugin, only trying to help your success. This plugin is one-0f-a-kind already and its all uphill from here if the OP considers my post.
    ppingos likes this.
  29. Offline

    blinghung

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    Minecraft account:
    MCUSERNAME
    I Can make the password system and give it to mixxit
  30. Offline

    Zaros

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    Minecraft account:
    MCUSERNAME
    That would be great, but its not my plugin to direct. If mixxit will allow us to give him plugin-altering suggestions, then I'm sure he'll be glad to take it.
  31. Offline

    blinghung

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    Minecraft account:
    MCUSERNAME
    Hmm I will ask him or make a plugin similar to this

Share This Page