Prioritize getting a panel

Please Note: The TotalFreedom Forum has now been put into a read-only mode. Total Freedom has now closed down and will not be returning in any way, shape or form. It has been a pleasure to lead this community and I wish you all the best for your futures.
  • Before I begin, here's a sort of "timeline" of events leading up to this suggestion for context.

    • In November 2020, @"Telesphoreo"#36 created a suggestion to implement a panel. After a heated showdown between Ryan and Packs, the suggestion was denied likely because there were more important matters on hand.

    • In March 2021, I created a suggestion to revisit Packs' suggestion. In my suggestion, I justified implementing it by noting that relying on a Discord bot to control everything is not only a bad idea, but also a potential security hazard. The suggestion was approved in April 2021, but it was considered a low priority.

    • In May 2021, after the Discord bot went down temporarily I asked that we prioritize getting a panel in internal development channels. It resulted in an argument in which I questioned the reliability of Discord as a service in both stability and security for the long term. Other developers assured me that Discord was a reliable service, but I stood firm. Later in the argument, I questioned why we had to wait until the worst case scenario to happen to do something. The argument went nowhere, and getting a panel remained a low priority.

    • In August 2021, the reliability of Discord as a service as a whole was put to the ultimate test when the Discord server was wiped through a security issue regarding the TotalFreedom bot and we needed to restore from a backup, which turned out to not exist. As I predicted, it failed miserably. Not only that, but for a period of time after the wipe, we had no way to stop and start the server in the event it went down or something broke that required a restart to fix, since the Discord bot was banned from the server and no alternative was provided for a while.


    The writing is on the wall. A panel would not only be a much cleaner solution than the unstable implementation (which has proven time and time again to be unreliable) we have now, but also provide multiple large benefits in terms of security, maintainability, and stability. People have been asking and patiently waiting for a panel since November of last year. Guess what? It's August 2021 now and nothing has changed. People (including myself) are growing increasingly impatient. We've been running into issue after issue regarding the Discord bot, many of which could be avoided using a simple panel.

    This suggestion is not a reiteration of the previous suggestion, but a suggestion to make getting a panel a higher priority. It's time we put this issue to rest once and for all by implementing a panel.

    image.png

  • I can agree with this, while I may not be an admin on this server, I have used a panel before and I can definitely say that it is a lot better than relying on something else that can put security at a HUGE risk.
    Panels in general keep everything in check and are a good source overall, so I am going to vouch for this.

    Hub Moderator

    Admin

    Rhythm Game Enthusiast

    Owner @ [REDACTED]

  • A panel in reality opens us up to greater security issues than the bot. While the bot has not been perfect to date, nothing is. The bot automates the management of in game admins in a way we aren't able to achieve without writing our own panel.

    As I've already said, a panel would require considerable amounts of effort from the development team and other individuals which we aren't able to spare due to the HUGE backlash we keep getting for a lack of new shiny in game functionality.

    There is currently no scope to add a panel for these reasons. To add a panel would require us to de-prioritise all development work happening on the server, and would open us up to additional risk and security issues which I don't believe people have actually thought through.

    We did look at options for adding a "Basic panel" as a custom plugin to the new forums which would have been the preference, that way we aren't managing admins identities in another place, but the new forums along with any new things have since been de-scoped due to the community backlash.

    Wild1145

    Network Owner at TotalFreedom

    Managing Director at ATLAS Media Group Ltd.

    Founder & Owner at MastodonApp.UK

  • Quote

      videogamesm12 no alternative was provided for a while.

    I think in reality the bot was unavailable for around 2 days... Which causes minimal issues.

    Quote

      videogamesm12 It's time we put this issue to rest once and for all by implementing a panel.

    The community has put me in a position where we don't have that time, and the panel cannot be a higher priority because it's been de-scoped from all current future work. There is no current desire / plan to get a panel installed.

    Wild1145

    Network Owner at TotalFreedom

    Managing Director at ATLAS Media Group Ltd.

    Founder & Owner at MastodonApp.UK

  • Quote

      videogamesm12 In August 2021, the reliability of Discord as a service as a whole was put to the ultimate test when the Discord server was wiped through a security issue regarding the TotalFreedom bot

    wouldnt that be the same problem if someone had access to the panel?

  •   Miasmus Given the bot is now hosted on the same physical server as TF's VPS's are, as would any panel, right now there are no resiliency benefits. But yes, there is the same risk if an individual had panel access that shouldn't (Which is a more likely risk due to the lack of ability to properly sync the panel to the forums)

    Wild1145

    Network Owner at TotalFreedom

    Managing Director at ATLAS Media Group Ltd.

    Founder & Owner at MastodonApp.UK

  • Quote

      Alco_Rs11 giving admin perms to a bot with such sensitive functions is quite dangerous.

    Has absolutely 0 to do with the bots management of the server... The admin access for the bot was for some of the moderation functionality it has (Things like blocking people posting discord links in the discord).

    Wild1145

    Network Owner at TotalFreedom

    Managing Director at ATLAS Media Group Ltd.

    Founder & Owner at MastodonApp.UK

  • @'Ryan' Alco used the term "sensitive functions" to describe more than just Discord administration. The TotalFreedom bot has Senior Admin-level access to the server, with the only line of defense being a simple role check which could be easily defeated by simply giving yourself the Senior Admin role. If the person who compromised the Discord bot knew of this, they could have granted themselves the Senior Admin role to add themselves in-game, extending the breach to the server as well, with far more catastrophic potential.

    image.png

  •   videogamesm12 It has no different access to a senior logging into Telnet, given there are only 3 people on Discord that can give roles that don't mirror in game the risk is very low of that ever actually happening, and at this point the bot being hosted on ATLAS Infra (The same as the server) means if you're capable of hacking into the VPS the bot runs on or getting the token in any way, you've already got full server file access and can do what you want, meaning the bot is the least of my worries.

    A panel on the other hand has no such sync ability. I'd take the risk of a suspended senior admin going AWOL to be far more likely than a repeat of a very rare issue which will not be able to repeat itself for one thing due to mitigations already in place, combined with the level of technical complexity that would now be required.

    The security argument is really nothing more than an exaggerated position right now, nobody has been able to provide a credible reason why a custom panel we're going to have to write and host and grant even more access to the server than the bot already has gives us somehow more security, when everything I've stated confirmed the exact opposite.

    Wild1145

    Network Owner at TotalFreedom

    Managing Director at ATLAS Media Group Ltd.

    Founder & Owner at MastodonApp.UK

  • It was made very apparant that we should not be spending our development time adding new gimmicks, and rather spend it improving the user experience and backend issues on the Freedom-01 server.

    I am also not convinced that the Discord bot hijack is even remotely related to a panel. The discord bot not only managed server startup and kill functions, but also managed several roles, mutes and reports. You cannot substitute a panel with the Discord bot.

    I personally would love a panel, but I understand why its not an option based on other incidents....

  • Quote

    @'Ryan' A panel on the other hand has no such sync ability. I'd take the risk of a suspended senior admin going AWOL to be far more likely than a repeat of a very rare issue which will not be able to repeat itself for one thing due to mitigations already in place, combined with the level of technical complexity that would now be required.

    Isn't the simple solution to this to just... remove them from the panel before suspending them? I have had to deal with morons who shouldn't have had access to a panel before, and it is a non-issue if handled correctly. The simple perks of being able to manage the server competently and efficiently is a quality control issue that is way more important than the chance a senior would try to tamper with server data before they were suspended.

  • Quote

    @'Ryan' It has no different access to a senior logging into Telnet, given there are only 3 people on Discord that can give roles that don't mirror in game the risk is very low of that ever actually happening, and at this point the bot being hosted on ATLAS Infra (The same as the server) means if you're capable of hacking into the VPS the bot runs on or getting the token in any way, you've already got full server file access and can do what you want, meaning the bot is the least of my worries.

    The TotalFreedom bot doesn't have to be the one to be compromised. Any bot that has the "Manage Roles" permission or any user account with that permission can also be compromised. The security flaw is that the only thing stopping someone from using tf!console is through a simple role check. Also, token grabbing exists.

    image.png

  • i just read through the thread about this from november and i saw that packs made a point i made two weeks ago, that introducing docker into the mix would make the server a lot easier to manage at the root access level. but it was also mentioned that the server hardware won't support docker. is that related to the TF infrastructure being located in multiple countries?

    also, i sent a few security suggestions to ryan.wild@[atlas website] 20 days ago because that was listed as a security contact in a forum thread. should i use os-security-reports instead?

    with the panel, the server, and the website in the same docker network, they could seamlessly interact, allowing for a schematic system and anything else you would want to add. the panel could be behind an IP whitelist and have its own auth just to be safe. the only thing is to do that we might need to abandon one or more of our providers, like OVH or Hetzner.

    as an op, this is beneficial because the server would be able to restart itself unless manually stopped, and when bugs are reported, devs could more easily debug them in the panel.

    feel free to discuss anything in the email publicly. packs already mentioned a lot of it back in that november thread, which i wasn't aware of until a few moments ago.

  •   FromTimeToTime Docker doesn't work with OpenVZ. If you go to the Superior Networks website you'll see that the vps's use OpenVZ. That's why I theorized it because I have no idea if wild is using OpenVZ or not for TF or just the Superior Networks servers.

    The reason it doesn't affect other companies like OVH VPSs is because they use KVM. The difference is that instead of a shared kernel, each instance can have their own kernel (I think?). Generally speaking KVM is the best way to go and docker supports KVM so that's why you can use it on OVH or Hetzner Cloud

  •   Panther That would then require all suspensions to only be managed by me, something which is not sustainable nor desirable from my perspective.

    Wild1145

    Network Owner at TotalFreedom

    Managing Director at ATLAS Media Group Ltd.

    Founder & Owner at MastodonApp.UK

  •   videogamesm12 And as part of the re build of the discord. There is only a single bot other than the total freedom one that has that access, along with the 3 people that currently are discord admins. It's a low risk as I've already said, and the panel would introduce greater risks.

    Wild1145

    Network Owner at TotalFreedom

    Managing Director at ATLAS Media Group Ltd.

    Founder & Owner at MastodonApp.UK