erebe / wstunnel

Tunnel all your traffic over Websocket or HTTP2 - Bypass firewalls/DPI - Static binary available
Other
3.22k stars 290 forks source link

Install on ARM71 32 Bit #64

Closed nashford77 closed 1 year ago

nashford77 commented 3 years ago

Why does it not support this ? Also, is there a UDP based python port of this ? That would be far more versatile than this language in my opinion ?

erebe commented 3 years ago

Hello,

Why does it not support this ?

Because I don't have the hardware to build a binary for it. If you have a Raspberry Pi this release wstunnel-armv7l-raspbian-buster.tar.gz should work. Or you can use this script https://github.com/erebe/wstunnel/blob/master/build_raspbian.sh to build it yourself. Let me know if you encounter issue with it

Also, is there a UDP based python port of this ? That would be far more versatile than this language in my opinion ?

Feel free to code it :)

nashford77 commented 3 years ago

there are script errors for devices that don't have HTTS for git in that build as well as running as root and there being no SUDO (am on OPENWRT)

nashford77 commented 3 years ago

stack-2.1.3-linux-arm/doc/maintainers/team_process.md build_raspbian.sh: line 10: sudo: not found Cloning into 'wstunnel'... fatal: unable to find remote helper for 'https' build_raspbian.sh: cd: line 12: can't cd to wstunnel: No such file or directory build_raspbian.sh: line 14: stack: not found build_raspbian.sh: line 18: stack: not found

nashford77 commented 3 years ago

sudo apt-get install git llvm-6.0-tools zlib1g-dev ghc

This will also fail... they do not exist in OPKG, is there a way to install ARM suitable equivalents via git ?

nashford77 commented 3 years ago

llvm-6.0-tools zlib1g-dev ghc & stack wont work on:

Linux 4.9.242 #836 SMP Fri Nov 20 20:41:15 +07 2020 armv7l DD-WRT

erebe commented 3 years ago

We can close the issue so, as there is no way to build a binary for this Arch without llvm :x

arinc9 commented 3 years ago

@nashford77 u/angerman on Reddit cross-compiled this project to armv7 by my request. Let me know if you're still in need of it.

nashford77 commented 3 years ago

Yes, I would still be interested. Can you please point me to the link ?

On Sun, Dec 6, 2020, 7:53 AM Arınç notifications@github.com wrote:

@nashford77 https://github.com/nashford77 u/angerman on Reddit cross-compiled this project to armv7 by my request. Let me know if you're still in need of it.

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub https://github.com/erebe/wstunnel/issues/64#issuecomment-739498763, or unsubscribe https://github.com/notifications/unsubscribe-auth/AFSSJUZJFS4EAI332OEINEDSTN5GLANCNFSM4ULSS6WA .

arinc9 commented 3 years ago

Get it from here for now. Until we sort things out with @erebe. https://www.dropbox.com/s/tqcrzyok9d92g3h/armv7l-unknown-linux-musleabihf-wstunnel-62db8504f77891de1e886e7d2e23fa0ca524099f.zip?dl=0

nashford77 commented 3 years ago

Thank you so much, it works !!!!! I wish this was natively supported as this is a a semi common item needed for routers ;)

On Sun, Dec 6, 2020, 4:00 PM Arınç notifications@github.com wrote:

Get it from here for now. Until we sort things out with @erebe https://github.com/erebe.

https://www.dropbox.com/s/tqcrzyok9d92g3h/armv7l-unknown-linux-musleabihf-wstunnel-62db8504f77891de1e886e7d2e23fa0ca524099f.zip?dl=0

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub https://github.com/erebe/wstunnel/issues/64#issuecomment-739563063, or unsubscribe https://github.com/notifications/unsubscribe-auth/AFSSJU6LPEWW5AVQCSHX4KTSTPWHPANCNFSM4ULSS6WA .

nashford77 commented 3 years ago

Would you happen to have the same for MIPS and MIPSEL as those are also common architectures for routers.

On Sun, Dec 6, 2020, 4:00 PM Arınç notifications@github.com wrote:

Get it from here for now. Until we sort things out with @erebe https://github.com/erebe.

https://www.dropbox.com/s/tqcrzyok9d92g3h/armv7l-unknown-linux-musleabihf-wstunnel-62db8504f77891de1e886e7d2e23fa0ca524099f.zip?dl=0

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub https://github.com/erebe/wstunnel/issues/64#issuecomment-739563063, or unsubscribe https://github.com/notifications/unsubscribe-auth/AFSSJU6LPEWW5AVQCSHX4KTSTPWHPANCNFSM4ULSS6WA .

arinc9 commented 3 years ago

Paging @angerman for MIPS(EL) binaries

Update: There's a $10 bounty for it https://github.com/erebe/wstunnel/issues/21#issuecomment-495964923

erebe commented 3 years ago

Hello, Thanks for the grunt work regarding creating a binary. Can you point me toward the reddit thread ? If possible I would like to understand how @angerman manage to cross compile wstunnel.

Edit: Found it https://gist.github.com/angerman/0ba92cba59fa590f233bdcdb5d6eb2ee

arinc9 commented 3 years ago

@erebe Here's the Reddit thread: https://www.reddit.com/r/haskell/comments/k1xxku/im_giving_away_50_worth_of_bitcoineth_to_anyone/

angerman commented 3 years ago

MISP might be a bit harder, there is no pre-existing infra for this. I'm also not sure how good our mips codegen is. Sadly mips is being beaten by arm and likely riscv in the future.

nashford77 commented 3 years ago

@erebe Now that you figured out how to cross compile ARMV71, will you provide this as a binary going forward?

angerman commented 3 years ago

@nashford77 find the armv7l and aarch64 (linux) binaries below. I'm still trying to build an aarch64 (macOS/iOS) one for @arinc9, however it's a very slow process, hampered by the holiday season as well 😬

armv7l-unknown-linux-musleabihf-wstunnel-62db8504f77891de1e886e7d2e23fa0ca524099f.zip aarch64-unknown-linux-musl-wstunnel-62db8504f77891de1e886e7d2e23fa0ca524099f.zip

erebe commented 3 years ago

@nashford77 sadly no, @angerman have done an awesome job compiling wstunnel for those archs but the build is too custom/complex for me in regard of what I want to support in the long run for the project.

I am going to keep note of the steps for future reference, but it will be up to people who need it, to bear the cost of providing/building those binaries in the first run.

P.S: @angerman I have added your binaries in the pre-release, thank you !

TPXP commented 1 year ago

Hello,

I've setup one proxy on my armv7 server and compiled the project at commit a0ecc64e5f5b38bc7bb62ecab5ca1bd1724553ef (the bundled version of ghc is too old for the latest network patch). In case it helps anyone, here's my binary compiled on Debian Bullseye (the current stable) wstunnel-armv7hf-bullseye.zip. I've tested it on an up-to-date ArchLinuxARM setup as well and it works well there too. :smile:

The two first commands of build_raspbian.sh are slightly changed since ghc on bullseye comes with llvm tools v11

sudo apt-get install git zlib1g-dev ghc
export PATH="/usr/lib/llvm-11/bin/:$PATH"

Also, the resolver must be updated for GHC 8.8.4, which comes with bullseye:

# GHC 8.8.4 <-> lts 16.31 - https://www.stackage.org/
sed -i "s/resolver:.*/resolver: lts-16.31/g" stack.yaml

Thanks for this awesome project! :heart: