fluidd-core / fluidd

Fluidd, the klipper UI.
https://docs.fluidd.xyz
GNU General Public License v3.0
1.33k stars 398 forks source link

How to add Authenticator for fuidd. #1419

Closed SlimRG closed 2 months ago

SlimRG commented 2 months ago

Is your feature request related to a problem? Please describe

I have static ip (https://slimhome.tech/#/login) and fluiid. So, my pass was brootforced by me by 45 days. It's a secure problem, so I want to fix it.

Describe the solution you'd like

After entering login/pass show page to write google auth pin or with QR code to create it if no key inserted before.

Describe alternatives you've considered

No response

Additional information

https://www.rfc-editor.org/rfc/rfc6238 https://github.com/googleapis/google-auth-library-nodejs

pedrolamas commented 2 months ago

Fluidd runs on the browser, so there is no way to ensure authorization (that would always have to be performed server side).

Such a feature would first need to be implemented as part of Moonraker which provides all the server side APIs to Fluidd.


On a side note, you should NOT expose a printer to the internet!

If someone somehow bypasses the Moonraker Authentication, they will have full access to your printer, to the point that they could turn the heater on until it melts the whole thing and causes a fire!

Use a VPN instead to ensure secure access to your resources or something like Cloudflare Tunnels.

SlimRG commented 2 months ago

https://github.com/Arksine/moonraker/issues/842

SlimRG commented 2 months ago

If someone somehow bypasses the Moonraker Authentication, they will have full access to your printer, to the point that they could turn the heater on until it melts the whole thing and causes a fire!

Use a VPN instead to ensure secure access to your resources or something like Cloudflare Tunnels.

If someone bypasses my home assistant - he could open terrariums, so.... But I uses secure two factor system and so...

VPN is under law in Russian federation! I don't want in prison

SlimRG commented 2 months ago

Add pull request with support for moonraker: https://github.com/Arksine/moonraker/pull/844