Closed q1085909155 closed 1 year ago
I also found an issue where Fingerprint's ban time seemed to be inconsistent with sourceban's. For example: I blocked the player for 1440 minutes, but by default the TF2 server appears to block the player for 5 minutes, which would result in the "fingerprint" being recorded for only 5 minutes. I'm not sure if the "time" issue is important, because I found that the "banned_duration" field in the SQL database is 5, But the "is_banned" field remains 1 (although players have been banned for more than 5 minutes so far).
Will it make any difference? If the question I put forward is a stupid one, it means that I do not know enough about TF2server. I hope you can explain.... for me emm, also, if I change the block time on sourceban web from 1400 to 0 or -1 (permanent), will the fingerprint block time change as well? If not, then how can I change the ban time of "fingerprint"? If it is through an sql database, which table should I modify? Which field? What value to change? What are the values?
Hello!
Regarding SourceBans++:
The Web UI is very tricky to add support for; I mentioned it in the AlliedMods post - SB++ does not expose any forwards regarding web ban application/updates, so Rebanner cannot hook them to properly handle the information. Best course of action would be to implement two new forwards in SB++, something like SBPP_OnWebBanPlayer and SBPP_OnBanUpdate. I can PR that into the main SB repo once I'm done with Rebanner itself.
Now to the error log and Rebanner in general: You're getting this error most likely because the fingerprint folder does not exist on the server (I also mentioned that in the AM thread) - for example, if you set your fingerprint to be materials/models/custom/stuff/test.vmt, you need to make sure that the paths materials/models/custom/stuff and download/materials/models/custom/stuff actually exist on the server, otherwise Rebanner will fail to create the fingerprint files.
Also about Rebanner: Right now I'm in progress of getting rid of FileNet_SendFIle completely, and instead I will be manipulating the FastDL download system to force clients to download fingerprints when they're connecting to the server. The prototype already works, though needs some bugs and unpredictable behaviors ironed out. With this change, Rebanner will hopefully be less prone to ConVar manipulation (who doesn't have FastDownloads enabled...) clientside. Also this change should make it easier to maintain the plugin across CSGO/TF2 and other Source games.
How does Rebanner remove is_banned flags from it's database?
If an account that is found to have is_banned = 1 manages to get to OnClientAuthorized and OnClientPutInServer, it means that they're no longer banned (Source would've cut the connection way earlier if they were still banned). With that in mind, I can safely assume that if one gets to being processed by Rebanner, I can get rid of their is_banned flag if they have it.
"If not, then how can I change the ban time of "fingerprint"? If it is through an sql database, which table should I modify? Which field? What value to change? What are the values?"
I can probably add a few commands to change ban time by SteamID and IP until the SourceBans forwards regarding ban updates are implemented. Sure thing.
yeah, thanks for the answer Regarding the error log, I have made sure that the path and file are correct and that the "fingerprint" file is correctly generated in the player's local area. This mistake has only happened once. My first thought is to report it to you. So far, it has not happened again. You didn't seem to answer my question about the tf2server banning time of 5, which may be my misunderstanding. For the banned players, it was the anti-cheating in my server that banned them, not from sourceban web. When I checked the time on the web, the normal display was less than 1440min (1 day). However, the fingerprint log records 5 minutes. In my fragmentary memory, it seems that using sourcemod to block a player from TF2server's console only shows that the id is blocked for 5 minutes, but it's actually a temporary block that disappears if the server is restarted. In summary, every time a player is banned by the server, if the command "listid" is used to list the banned player in the TF2server console, their time is only 5 minutes
How does Rebanner remove is_banned flags from it's database?
If an account that is found to have is_banned = 1 manages to get to OnClientAuthorized and OnClientPutInServer, it means that they're no longer banned (Source would've cut the connection way earlier if they were still banned). With that in mind, I can safely assume that if one gets to being processed by Rebanner, I can get rid of their is_banned flag if they have it.
Is that why I care about time
Because I'm worried that the cheater has bypassed sourceban, steamid and IP, and is using a new account, if Fingerprint's ban has expired but sourceban's hasn't, then the cheater can re-enter the server
So I was worried if the ban on fingerprints was only five minutes, because that's what I saw in the database
5 minute bans is how SourceBans++ handles WebUI bans - it updates the database with the ban record, then runs "banid 5
"Sourcebans+ + bans applied via Web UI are not taken into account - a SourceBans design limitation that I'm unable to work around yet."
Would it be effective if administrators were blocking players in the game? Because I found that only "Processing ban event of ♂, ♂" appeared in the log instead of "Successfully flagged as banned. Duration is 5".
Hello yet again;
I pushed the new version to the main branch. It should work in CS:GO and TF2 without relying solely on sv_allowupload. Please compile and install that version.
Before use, PLEASE read the wiki page - it describes the new installation process and requirements in detail. 1.3 needs a FastDownloads server configured. https://github.com/Nolo001-Aha/SourceMod-ReBanner/wiki
Important: It is highly recommended to drop the old database and create a new one due to changes in fingerprint length.
oh hi, I have used the new version, please help me to check whether these logs are normal, or if there is any problem. The fingerprint file has correctly appeared on my computer. By the way, the reason for being kicked is not correctly displayed according to my file configuration, I'm not sure if the reason for being banned is the same.
The reason for being kicked It shows the default.
What's going on? They all share a "fingerprint". I used MySQL
I'm pretty sure they're not the same person
Sorry, my problem, after I reinstalled the fingerprint and rebooted the server, the fingerprint list seems to work.
Hello.
This is very unusual.
Question - what is your default sv_downloadurl value? The logs seem quite strange - "Diverting to new FastDownload address:" should print a full URL address, while you have just the "custom" part printed.
Something tells me that your FastDownloads address is set up incorrectly, and clients fail to query it. What could be happening is, the Source Engine is designed to attempt to download files it cannot find on the FastDL address from the game server instead. So, if your FastDl/sv_downloadurl are broken/incorrect, clients will instead attempt to download files from the game server.
To mitigate this, I strongly recommend setting sv_downloadurl to your default value (i.e. sm_cvar sv_downloadurl "http://server.fastdl.com/tf") in your server.cfg file.
oh, I immediately went to check sv_downloadurl and found that the console had printed me empty (" "), I was pretty sure sv_downloadurl was already written in my server.cfg
That's the problem then. Use server.cfg to set the cvar. Re-Banner grabs the default ConVar every map change and stores it in memory to both construct custom URLs and revert to original values.
Is that right? I'm using this.
Open this address in your browser. You should see a bunch of folders: materials, models, sound, etc (whatever your fastdl content is).
If your game is TF2, then the value should be "http://server.com/tf"
If your game is CSGO, then the value should be "http://server.com/csgo"
My access address is set private, can not be directly accessed, but TF2 can normally request files and download it, personal computer is not directly accessed. Because I set the CDN. Also, my path does not have tf folder behind it, but direct materials, models, sound, etc.
If so, then it should be fine.
Try the following address:
http://YOURSERVER.COM/serve.php?id=123456789&url=/YOURFINGERPRINTPATH
(note the forward slash before the fingerprint path, it's important).
If serve.php is functioning properly, fingerprint should start downloading and its value will be 123456789.
Also of course don't forget to modify the fingerprint path inside your serve.php file so that it matches to that of your server's.
After accessing it, he downloaded serve.php....
If the process is difficult, I would like to download it using Network alone and not through fastdl
Now the serious problem is that it has set my sv_downloadurl to empty and players cannot download any resources
Unload rebanner.smx, type "exec server.cfg" in your remote server console and load rebanner.smx back.
Does your FastDL have PHP installed and configured? It sounds like a fastdl issue, it treats serve.php as a regular file instead of a php script.
I also found this problem, FastDL I use a third party, did not see the PHP setup project, most likely did not configure PHP, so I want to use only Network, not FastDL
Do I need to go back to 1.1?
If you're not in CSGO (where FileNet_SendFile is useless with default client cvars and fastdl is basically a must), then you can probably go back to 1.1, though I won't be able to support and troubleshoot it forever...
In that case make sure to change the fingerprint path again and re-create the database.
ok, your fork of File Network Do I need to follow your latest updates every time?
When I compile, an error occurs and version 1.11 is used
Re-Banner is split into several files. rebanner.sp is the main one, and there are two more under the include folder, bans.sp and database.sp. You need to extract them to your compiler's include folder and compile rebanner.sp again.
ok, your fork of File Network Do I need to follow your latest updates every time?
Yes, it's probably the safest option.
When I compile, an error occurs and version 1.11 is used
I've put it in the Include folder
That is worrying...
Open rebanner.sp, near the top you should see this:
modify the includes to look like this:
and move bans.sp and database.sp from the include folder to the root compiler folder.
unsuccessful
Worst case you can just download the 1.1 release here: https://github.com/Nolo001-Aha/SourceMod-ReBanner/releases/tag/1.1
oh hi, I have used the new version, please help me to check whether these logs are normal, or if there is any problem. The fingerprint file has correctly appeared on my computer. By the way, the reason for being kicked is not correctly displayed according to my file configuration, I'm not sure if the reason for being banned is the same.
Well, I just want to do the translation work for the plugin so that it can display my language in the log. By the way, what do you think about this problem? Cause The default value is displayed
That is also unusual - the config should get parsed properly.
By "default value", do you mean "File tampering detected! Please download server files from scratch", or do you mean "Kicked from server"?
yes,I'm not sure if banning substitute accounts would be the same, as I've only been kicked so far
So it just doesn't read the config value, interesting.
Give me 10 minutes, I'll check locally.
Haha, I should feel shame now as the issue is stupid simple.
Open rebanner.sp, find "KickClient" and replace ANTITAMPER_ACTION_REASON with antitamperKickReason.
I'll push the fix to master asap.
But I can't compile it, please update and compile version 1.1
Compiled 1.1 with the fix. ZIP-compressed, as GitHub doesn't accept .smx.
Thank you for your patience to answer my questions
I found this error when I looked through my error log today. What happened to this error?