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

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

  1. Offline

    mixxit

    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. Offline

    Zaros

    I'll help in any way possible, just pm me. I can't code, but I can milk a concept.
     
  3. Offline

    blinghung

    KK :D
     
  4. Offline

    mixxit

    All of your requests are being considered for the next update - i'll keep you posted
    [MERGETIME="1299842278"][/MERGETIME]
    DHCP could never be supported for a plugin like this as it would contradict the purpose of it - i'm sorry but I want to know where my users are coming from, how many times they are connected and exactly who they are :) I've played many harsh pvp games and strangely i'm sad to say that minecraft is far worse and riddled with griefers, exploiters and wannabe 'hackers' - I have a right to refuse them access and block their machines any time I see fit for the benefit of the real players who do deserve to play and make up for the majority of <blank>ers in the community.

    I didn't just pluck this system out of the ether. When I was a developer for a very popular project - with 900+ bandwidth hogging active players online at once, this system was in place and worked very well. Sure we had a number of griefers that would login to vpns to bypass their ip ban but it sure as hell made the game slow and painful for them. Where there a few people that wanted exceptions for family and friends? Sure! Did they get allowed? Absolutely but only after verification that they were who they said they were. A little admin overhead was well worth the effort in the long run.

    So, to summarise, there's no way i'm going to cancel this plugin - go peddle your argument elsewhere.
     
  5. Offline

    XeonDead

    No, i wanted to see the command to lock an user on server for his ip. So then only he can join on his account, another players would get kicked.
     
  6. Offline

    Petomatick

    Or how about making a option how long the IP and the username should be connected. For example you could add keepIP=0 to make it hold the ip for zero seconds making it just so that other cant join with your username while you play thus making you not getting kicked.
     
  7. Offline

    Zaros

    Or just use an override password system. If it was for a set period of time, the user would be locked out until either an admin reset it or the time ran out. A password would allow a player to override a locked IP address if they are indeed the owner, while locking people with a different IP address out. See, if they got the password wrong, they could be locked out for....say... half an hour(or a configurable time).

    The password system override system would work for friends and family, as the user would be able to share the password with trusted people.
     
  8. Offline

    mixxit

    Alright, i'll be making changes to this and i'll post back to you guys when it's done - need to run some testing my end first though and see how it runs for a little while

    Thanks for the feedback
     
  9. Offline

    plutgamer

    wut if u hav 2 gaming pc's on one LAN???[​IMG]
     
  10. Offline

    Beaverbeliever

    2 Requests:

    1) MySQL Support - This would be extremely useful for being able to update IP's for users. I can make a web interface to work with certain forums to update their IP address.

    2) Specified Users Support - This would be nice if there was a list to require certain users to adhere to the IP lock (admins and other people with Authority). This would help tremendously so I don't have to update it so often for "un-important" users.

    If these could be added, that would be great!
     
  11. Offline

    mixxit

    Noted, will get these added - will find both of the above extremely useful
    [MERGETIME="1300048627"][/MERGETIME]
    *NOTE*
    Please update if you haven't, there's a fix that will help with file/read writing performance

    The other changes are not finished yet, will get back to you on them
     
  12. Offline

    blinghung

    Hmm I may make a similar plugin like this PM me suggestions
     
  13. Offline

    mixxit

    guys if you want 'iplockx' you can find it at www.gamerservices.net/gs/iplock.jar

    This version allows players to login from different ip's on the same subnet (class b) it also checks various thigns like special characters and max character length for plugins by name protection

    If not stick to the normal version

    added source code to iplockx
    https://github.com/mixxit/iplock

    i need to work on adding configuration files to enable/disable the settings

    allowsamesubnet=true (default on atm in iplockx)
    allowchars=false (default on atm in iplockx)
    allowlongnames=false (default on atm in iplockx)

    then i can merge both versions into one, will get back to you on this and the other requests

    enjoy!

    EDIT by Moderator: merged posts, please use the edit button instead of double posting.
     
    Last edited by a moderator: May 11, 2016
  14. Offline

    agzt01

    It just spams me with this:
    Code:
    12:17:14 [INFO] iplock : saving
    12:17:15 [INFO] iplock : saving
    12:17:56 [INFO] iplock : saving
    12:18:14 [INFO] iplock : saving
    12:18:15 [INFO] iplock : saving
    12:18:56 [INFO] iplock : saving
    12:19:14 [INFO] iplock : saving
    12:19:15 [INFO] iplock : saving
    12:19:56 [INFO] iplock : saving
    12:20:14 [INFO] iplock : saving...
     
  15. Offline

    mixxit

    Before it used to save whenever someone joined

    Instead now it will use a cache and dump this cache to file every 60 seconds. That's what you are seeing. It offers a massive performance boost.

    Eventually those messages will be debug and suppressed :)
     
  16. Offline

    Triton74

    Nice plugin!
    Realy usefull.

    Please make a log file to log all unsucsessfuly access to the server.
    In this way we can see who try to use others name. :)
     
  17. Offline

    mixxit

    Version 0.3
    • added the ability to refresh the user list so you can change it while the server is running - /iplock refresh
    • properties file now allows you to disable subnet, special character checks or adjust max char (plugins/iplock/iplock.properties)
     
  18. Offline

    Zaros

    So is it list instead of exceptions now? From the log, it looks almost exactly the same.
     
  19. Offline

    mixxit

    by default it just checks the iplock.users file for their ip that they are logging in as

    if subnet checking is on it will let them on if their ip is similar XXX.XXX.*.* (but only if subnet is on)
     
  20. Offline

    Zaros

    The subnet checking works pretty nicely, but could you add that password reset system I suggested. In the case that their IP isn't similar, I dont wanna have to change the file data manually. For large servers that want to use something like this, that could be quite a nuisance.
    Especially from people that might want to play from a friends house, or are on vacation.
     
  21. Offline

    blinghung

    Mixxit I have forked your plugin and gonna add mysql support ;P
     
  22. Offline

    mixxit

    wrongthread
     
  23. Offline

    [Kor]Deer

    one ip..... T_T
    allow multiple IP and none ip plz...
     
  24. Offline

    [Kor]Deer

    iplock - limit 1 ip address per player !!!! nooooooo~! T^T

    limit * ip address per player plz.....T^T

    * config
    limit-ip = *

    !!!
     
  25. Offline

    heroanth2345

    jar link = broken link
     
  26. Offline

    mixxit

    fixing
     
  27. Offline

    mixxit

    added 602
     
  28. Offline

    jascotty2

    i forked this a while ago..
    added MySQL support, all data is read on check (todo: optionally cache db?)
    password system, can make new players/players from a diff. ip enter a password before they can join
    (todo: individually-configurable passwords?)
    check list: list of players that will only be checked/ignored
    https://github.com/downloads/jascotty2/iplock/IPLock.jar (612 compatible)
    (this is the one that blinghung stole the source from when he 'added mysql support')
     
  29. Offline

    XMkidX

    Can I have it so a user can have two or more ips they can have access to the user name from? Because I live in two houses with different ips I was wondering if its possibe with this plugin. If not please add this feature in
     
  30. Offline

    jascotty2

    try my version, with the password setting.
    then the ip can be updated without admin intervention
     
  31. Offline

    GregRUS

    You dont have protection against multi nicks with same IP... :(
     

Share This Page