DiffuseHyperion / InertiaAntiCheat

Stop people from using unwanted mods on your server!
Other
14 stars 6 forks source link

BUG: Cannot Join Server Behind Velocity Proxy #36

Closed lightumcc closed 3 months ago

lightumcc commented 3 months ago

Describe the bug If I install this AntiCheat on a fabric server which is behind a velocity proxy, server will kick me out with mod not installed which is shown as the screenshot below. I've already test that this mod works fine if i directly connected to server

Server Log

[09:31:47] [Server thread/INFO]: [InertiaAntiCheat] --------------------
[09:31:47] [Server thread/INFO]: [InertiaAntiCheat] Checking if lightum_cc has bypass permissions
[09:31:47] [Server thread/INFO]: [InertiaAntiCheat] Not allowed to bypass, sending request to address /xxxx:33872
[09:31:48] [Server thread/INFO]: [InertiaAntiCheat] --------------------
[09:31:48] [Netty Epoll Login IO Thread #0/INFO]: [InertiaAntiCheat] Received response from address /xxxx:33872
[09:31:48] [Netty Epoll Login IO Thread #0/INFO]: Disconnecting lightum_cc (/xxxx:33872): You were kicked for not sending a response to the anti-cheat!
This is probably due to missing the anti-cheat client mod.
Install it here: https://modrinth.com/mod/inertiaanticheat
[09:31:48] [Server thread/INFO]: lightum_cc (/114.85.99.197:33872) lost connection: You were kicked for not sending a response to the anti-cheat!
This is probably due to missing the anti-cheat client mod.
Install it here: https://modrinth.com/mod/inertiaanticheat

To Reproduce Steps to reproduce the problem:

  1. Create a server which is behind velocity
  2. Join Server
  3. See error

Expected behavior Join Server with no error.

Screenshots

image

Server information (please complete the following information):

Mod config

Mod Config ```toml # IMPORTANT! # Please check https://github.com/DiffuseHyperion/InertiaAntiCheat/wiki/Modern-(Version-1.0.0-and-above) on how to configure this mod. # You will likely need https://iac.diffusehyperion.com/ in the process of configuring this mod. [mods] # The method to check client's mod list. # If you prefer blacklisting/whitelisting certain mods from being used, use "individual". # If you prefer ensuring client's have a modpack installed, use "group". # Accepted types: "individual", "group" method = "individual" # The hashing algorithm for the mod to use. # MD5 is the fastest but most insecure. # SHA256 is the slowest but most secure. # Accepted algorithms: "MD5", "SHA1", "SHA256" algorithm = "SHA256" # The kick message to show to clients when they try to connect without InertiaAntiCheat installed. vanillaKickMessage = "You were kicked for not sending a response to the anti-cheat!\nThis is probably due to missing the anti-cheat client mod.\nInstall it here: https://modrinth.com/mod/inertiaanticheat" # The kick message to show to clients when they fail the modlist check. deniedKickMessage = "You were kicked by the anti-cheat!\nThis is due to having illegal mods.\nPlease contact your server administrator for more details." [mods.individual] # Immediately kick players who have these mods in their modlist. # The mod checks (and kicks) for blacklisted mods first. blacklist = ["fcc2c9e076d6c1002a0de62352c0cccf51f6a5853f777e2f25ee7305e48ae443"] # Immediately kick players who do not have these mods in their modlist. whitelist = [] [mods.group] # The hash for the server to check against. # You can add multiple hashes into the list, and the server will check against all of them. hash = [] # Allow certain mods to be used by players, in addition to your modpack. # This allows players to make use of optional client mods if you allow it. softWhitelist = [] [motd] # Whether to show an icon on client's server list indicating that InertiaAntiCheat is installed. showInstalled = false # The names of blacklisted mods to report to clients. # Clients will be able to see these mod names in their server browser. # You may choose to put arbituary names, extra names, fake names or no names at all here. # Setting this to be an empty list will cause the icon to not show up. blacklist = ["Banned mods: ", "Wrust"] # The names of whitelisted mods to report to clients. # Clients will be able to see these mod names in their server browser. # You may choose to put arbituary names, fake names or no names at all here. # Setting this to be an empty list will cause the icon to not show up. whitelist = ["Whitelisted mods: ", "None"] # The name of the modpack to report to clients. # Clients will be able to see the modpack name in their server browser. # Setting this to be an empty list will cause the icon to not show up. hash = ["Requires modpack: ", "Modpack Name"] [debug] # Show additional information in server logs. debug = true # do not touch pls :) version = 7 ```

Additional context

Fabric Mod list
  afkplus-1.20.4-1.4.4.jar
  AllStackable-v2.0.0-1.20.4.jar
  anti-xray-1.3.1-Fabric-1.20.2.jar
  architectury-11.0.11-fabric.jar
  armor-stand-editor-2.3.0+1.20.3-rc1.jar
  badpackets-fabric-0.6.0.jar
  balm-fabric-1.20.4-9.0.5.jar
  Carpet-AMS-Addition-mc1.20.4-v2.29.0.jar
  carpet-tis-addition-mc1.20.4-v1.55.0.jar
  Chunky-1.3.92.jar
  ChunkyBorder-1.1.54.jar
  ClientCrasher-Fabric-1.0-1.20.3.jar
  cloth-config-13.0.121-fabric.jar
  collective-1.20.4-7.30.jar
  compacthelpcommand-1.20.4-2.5.jar
  cristellib-1.2.2-fabric.jar
  CustomSkinLoader_Fabric-14.19.1.jar
  deathlog-0.3.2+1.20.3.jar
  easywhitelist-mc1.20-rc1-1.0.1.jar
  fabric-api-0.95.4+1.20.4.jar
  fabric-carpet-1.20.3-1.4.128+v231205.jar
  fabric-language-kotlin-1.10.17+kotlin.1.9.22.jar
  FabricProxy-Lite-2.7.0.jar
  fastrandom-1.6.0.jar
  ferritecore-6.0.3-fabric.jar
  ForgeConfigAPIPort-v20.4.3-1.20.4-Fabric.jar
  gugle-carpet-addition-2.7.0-1.20.4.jar
  hero-proof-5.1.1.jar
  Incendium_1.20.4_v5.3.4.jar
  InertiaAntiCheat-1.0.2.1.jar
  inventorytotem-1.20.4-3.2.jar
  InvView-1.4.14-1.20.4+.jar
  Jade-1.20.4-fabric-13.2.1.jar
  jamlib-fabric-1.20.4-1.0.3+1.20.4.jar
  kleeslabs-fabric-1.20.4-16.0.1.jar
  Ksyxis-1.2.2.jar
  lazydfu-0.1.3.jar
  LeavesBeGone-v20.4.0-1.20.4-Fabric.jar
  ledger-1.2.10.jar
  ledger-databases-1.1.1.jar
  lithium-fabric-mc1.20.4-0.12.1.jar
  luckperms
  LuckPerms-Fabric-5.4.113.jar
  malilib-fabric-1.20.4-0.18.0.jar
  memoryleakfix-fabric-1.17+-1.1.5.jar
  modernfix-fabric-5.12.1+mc1.20.4.jar
  mysql-jdbc-8.0.33+20230506-all.jar
  netherportalfix-fabric-1.20.4-15.0.1.jar
  NoChatReports-FABRIC-1.20.4-v2.5.0.jar
  Nullscape_1.20.4_v1.2.4.jar
  owo-lib-0.12.0+1.20.3.jar
  placeholder-api-2.3.0+1.20.3.jar
  Player-Extend-Carpet-Addition-0.1.0+1.20.x.jar
  portable-crafting-2.1.3+1.19.3.jar
  PuzzlesLib-v20.4.16-1.20.4-Fabric.jar
  rightclickharvest-fabric-4.1.3+1.20.4.jar
  servercore-fabric-1.4.0+1.20.3.jar
  servux-fabric-1.20.2-0.1.0.jar
  shulkerbox-fabric-1.20.4-2.0.2.jar
  shulkerboxtooltip-fabric-4.0.8+1.20.4.jar
  slime-1.8.jar
  spark-1.10.58-fabric.jar
  starlight-1.1.3+fabric.f5dcd1a.jar
  styled-chat-2.4.0+1.20.3.jar
  styledplayerlist-3.3.0+1.20.3.jar.d
  tectonic-fabric-1.20-v2.2.jar
  Terralith_1.20.4_v2.4.11_FABRIC.jar
  threadtweak-fabric-1.20.4-0.1.2.jar
  tweakeroo-fabric-1.20.4-0.19.1.jar
  viewdistancefix-fabric-1.20.4-1.0.2.jar
  vmp-fabric-mc1.20.4-0.2.0+beta.7.136-all.jar
  worldedit-mod-7.2.18-dist.jar
  XaerosWorldMap_1.37.6_Fabric_1.20.4.jar
  
Velocity Plugins
  Ambassador-Velocity-1.5.2-beta-all.jar
  ClientCatcher-3.2.2.jar
  FastMOTD-1.0.6.jar
  HuskChat-Plugin-3.0.4.jar
  KickRedirect-2.0.10.jar
  LibreLogin.jar
  LuckPerms-Velocity-5.4.126.jar
  MapModCompanion.jar
  MCKotlinVelocity-1.4.0-k1.9.21.jar
  protocolize-velocity.jar
  Sonar-Velocity.jar
  Velocitab-1.6.5.jar
  velocity-tools-1.2.2.jar
  
DiffuseHyperion commented 3 months ago

Sorry for the super late response, just had exams lol. I didn't really had proxies in mind when developing the mod, and I definitely need alot of time to make the mod compatible. I try to see if this is possible in the future.