Code Monkey home page Code Monkey logo

universalproxy's Introduction

UniversalProxy

A fork Waterfall and BungeeCord

Description

This is a BungeeCord/Waterfall fork for a universal revers proxy for the game Minecraft. BungeeCord requires the backend server to be in offline mode. This is a requirement because BungeeCord intercepts the packets and the Minecraft client encrypt the connection after a successful authentication with Mojang.

But this project can make connections to backend online mode servers too. By making an authentication on the proxy instead of on the client side, we can connect to online mode servers too. This allows us to make a connection to all available Minecraft servers on the globe. (^^)

So we can easily switch between servers with just an additional command.

This project is similar to mcleaks.net.

Features

  • All the features BungeeCord and Waterfall also has
  • Connection to a online mode backend server (can be BungeeCord too)
  • Cracked and Paid Minecraft users can connect to this proxy (configurable)
  • You can give your cracked users paid user accounts without giving them the credentials.

Use cases

  1. Make connections to all servers on the globe
    • Even online mode servers works
    • Even additional BungeeCord servers works
  2. Give cracked users Paid user accounts without giving them the credentials. So you can cracked players can player on Minecraft servers where paid authentication is required.

=> Cracked player can players can play on servers like mineplex, gomme , cubecraft 3. Make shareable accounts

How to setup

  1. Build the project using the build.sh file (./build.sh)
  2. Go into "UniversalProxy/Waterfall-Proxy/bootstrap/" and copy the waterfall.jar file
  3. Start a new server using this file
  4. Now go into "UniversalProxy/Waterfall-Proxy//module/" copy the files from "/cmd-auth/target/cmd_auth.jar" and "/cmd-server/target/cmd_server.jar" into the "/modules/" folder of the server. (Or symlink it)
  5. Now restart the server
  6. You can now test it ingame using the following commands /auth clientToken accessToken email example: /auth 2345678-1234-1234-1234-123456789012 1234567893143124515151 [email protected]

and then /server IP/Domain

If you see the message "server is online mode", you are not authenticated

Client token, accessToken and the email can be extracted from the launcher_profiles.json file (in your .minecraft folder)

Warning: The server will invalidate the current accesToken and will receive a new one. Then you cannot auto login in your launcher after you restarted it.

You could work-around this by backing up your launcher profile file and generate a new clientToken with accessToken (delete the file and login once). Then you can still can auto login.

Modify the code

If you want to modify the project, follow these steps:

  1. Build the project to generate the base structure
  2. Go into the UniversalProxy/Waterfall-Proxy folder
  3. Modify the things you want to change
  4. Create a PATCH file by commiting the changes inside the UniversalProxy/Waterfall-Proxy folder
  5. Move the folder up and run the ./rebuildPatches.sh file
  6. Do 5 again on the root project path
  7. Now it generates another patch file which can be now commited to and uploaded to this project

Limitation

IP-Bans

The connection is established through this proxy. This lets the backend server only see the proxy IP. So the backend server could make a ip-ban and all connections through this proxy will drop.

Authentication

The minecraft authentication is made by this proxy. Therefore the server has to know the account credentials.

Why fork Waterfall?

This project goes out of scope of BungeeCord or Waterfall, so it will be never merged into the orginal projects.

UniversalProxy will still track upstream BungeeCord and Waterfall and merge changes as needed.

Join us

  • Feel free to open a PR! We accept contributions.

universalproxy's People

Contributors

56738 avatar aikar avatar black-hole avatar clankstar avatar daboross avatar derflash avatar drakiaxyz avatar dualspiral avatar games647 avatar ichbinjoe avatar janmm14 avatar kamcio96 avatar kanefreeman avatar kashike avatar keir-nellyer avatar kosgan10 avatar literalplus avatar mbax avatar md-5 avatar minecrafter avatar roblabla avatar stephan-gh avatar steveanton avatar techcable avatar thinkofname avatar tonybruess avatar weaondara avatar yawkat avatar zartec avatar zh32 avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar

universalproxy's Issues

How to Op someone

I've built and run the server but when I join and do /auth I cant because I don't have permission.
Also through the console I cant run the command "op" it says command not found.
How do I give myself perms? Please help.

Maven building

I was building it and it couldent build the waterfall

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.