NyaMisty / AltServer-Linux

AltServer for AltStore, but on-device

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Customizable anisette URL

blunderbusq opened this issue · comments

The endpoint for obtaining anisette data is currently hardwired to use armconverter.com (i.e., sideloadly.io):

auto client = web::http::client::http_client(U("https://armconverter.com"));

This single point of failure could become invalid in a variety of ways without any advance warning or recourse.

I've created an aniserve.swift microservice that serves anisette data via HTTP from a mac that is running the AltServer mail plug-in, using the same JSON structure as that returned from armconverter.

Adding a flag to AltServer-Linux that enables a customizable URL (or, ideally, multiple customizable URLs that would be attempted round-robin-style) would enable people to run anisette servers, either on their local network or publicly, that would more reliably return valid and up-to-date anisette data for AltServer to use.

I envision using it something like this, where each server specified with multiple -q flags would be attempted until one of them returns a valid payload:

./AltServer -u [UDID] -a [AppleID account] -p [AppleID password] \
    -q http://192.168.200.1:6969/anisette \
    -q http://somehelpfuldude.net:6969/anisette \
    -q http://anotherhelpfuldude.org:6969/anisette \
    -q https://armconverter.com/anisette/irGb3Quww8zrhgqnzmrx \
    -q https://sideloadly.io/anisette/irGb3Quww8zrhgqnzmrx

Good finding! Would you prefer to make this a PR instead?

[root@vmBuild AltServer]# curl https://armconverter.com/anisette/irGb3Quww8zrhgqnzmrx
{"X-Apple-I-Client-Time":"2022-04-15T08:56:10Z","X-Apple-I-MD":"AAAABQAAABC657L5NnI5CnCioOZpAbypAAAAAQ==","X-Apple-I-MD-LU":"CE99147F8610526892ED1AC53931EF38552A2CB64C2DC433D242FDAE789A7F80","X-Apple-I-MD-M":"wbxShQ1m2WmGT+Sf496k3tYfwQhrzQ+79dQKNUVBzpz/rO+4faO/k3ZjePXDCXk1jMefsXn7NllulZOH","X-Apple-I-MD-RINFO":"17106176","X-Apple-I-SRL-NO":"0","X-Apple-I-TimeZone":"GMT+0","X-Apple-Locale":"en_GB","X-MMe-Client-Info":"<iMac11,3> <Mac OS X;10.15.6;19G2021> <com.apple.AuthKit/1 (com.apple.dt.Xcode/3594.4.19)>","X-Mme-Device-Id":"F6C158F4-BD50-4EDD-B897-9BE4349EEED5"}

[root@vmBuild AltServer]# curl http://172.16.1.155:6969/anisette/
{"X-Apple-I-Client-Time":"2022-04-15T08:56:14Z","X-Apple-I-MD":"AAAABQAAABDdMehZjYZhlC1veJd/M9qsAAAAAQ==","X-Apple-I-MD-LU":"F75BE0C8E11C2A7EB6778CCAAE6D1D2B03873D9ACA72CEB6E777C7C91F23666B","X-Apple-I-MD-M":"UJq+0UoQxPeXUeVTMfrHe2Ato5s9gdRxS15z92OuC3nVvp6GVNkCmDDE4VIDtnb0nHz/87SUD7c4XEN/","X-Apple-I-MD-RINFO":50660608,"X-Apple-I-SRL-NO":"VMn7uCD8TIv6","X-Apple-I-TimeZone":"GMT-7","X-Apple-Locale":"zh_CN","X-MMe-Client-Info":"<VMware7,1> <Mac OS X;10.15.7;19H15> <com.apple.AuthKit/1 (com.apple.mail/3608.120.23.2.4)>","X-Mme-Device-Id":"564D9FBB-820F-C4C8-BFA7-DFA13A59FA26"}

Is the <com.apple.AuthKit/1 (com.apple.mail/3608.120.23.2.4)> been block by the apple? first url, I can login, but later, I crashed.

@zenochen pls also try my hub.docker.com/r/nyamisty/alt_anisette_server, which is based on AltServer-Windows and wine

hub.docker.com/r/nyamisty/alt_anisette_server

didn't work, responsed with empty page.

I use your code to compile for testing.

@zenochen pls also try my hub.docker.com/r/nyamisty/alt_anisette_server, which is based on AltServer-Windows and wine

I used your AltWindowsAnisette.exe in windows, It works, Thanks.

I mean to use my docker lol, if it returns empty, pls try re-run the docker.
I've tested it on Github Actions. Feel free to share your terminal output in case it still fails

Also @zenochen pls add my discord, the altserver discord seems kicked you :(

I mean to use my docker lol, if it returns empty, pls try re-run the docker. I've tested it on Github Actions. Feel free to share your terminal output in case it still fails

I haven't used a docker before, and I pull it into my qnap nas, failed to run. So I given up. I wrote another wrap in springboot, which is only one jar to run, but the core is your AltWindowsAnisette.exe. It works fine, I used in my project for one day, and have processed about 300 times Authentication.

I will share it, If someone like it
runs
create

Good, but that would require a Windows serverto run right? The docker can be run in a pure Linux environment.

Also, AltServer-Linux supports specifying anisette server via environment variable now ;)

I mean to use my docker lol, if it returns empty, pls try re-run the docker. I've tested it on Github Actions. Feel free to share your terminal output in case it still fails

I haven't used a docker before, and I pull it into my qnap nas, failed to run. So I given up. I wrote another wrap in springboot, which is only one jar to run, but the core is your AltWindowsAnisette.exe. It works fine, I used in my project for one day, and have processed about 300 times Authentication.

I will share it, If someone like it runs create

Could you please share this with me?

You don't need that.
Simply download the exe files in the alt-anisette-server repo, and run them would be sufficient ;)