Synology MFA Fails if Internet is down
community.synology.com
community.synology.com
I understand why you'd want it if trying to access your NAS from the internet, while traveling. (And in which case, if the internet is down, you can't access it anyways.)
But I'm struggling to understand why you'd ever want to enable MFA for signing into a device on your LAN. If it's on your LAN, you probably have physical access to it, and that's basically a factor in itself. Not "something you have", but "where you are" (or I guess it is "something you have" -- the device itself).
I've only encountered MFA before as something to protect remote account access. None of my other local devices support MFA -- I don't use it to unlock my phone, or my encrypted hard drive. So supporting it for local NAS access seems a bit unexpected.
But it's becoming more and more popular, and in many cases necessary, to adopt a "zero-trust" approach to all devices no matter where they are located.
That login attempt coming from your office LAN — how do you know it isn't an automated request from a compromised device? If you are enough of a high-value target, do you think it's inconceivable that someone might try and hop on your wifi network from the parking lot?
Just a little 7-segment LCD on the front of the cabinet. Those are what a buck or two, and my 8-bay cost about $1000... it's not a big additional cost.
If you can input the number on that, you're provably local. I don't know if that truly solves the problem, a high-value target might have someone posing as an outside contractor to get an eyeball on it, I guess. But for me at home, it'd be sufficient protection.
MFA is basically protecting the system when one of the factors (e.g. password) is compromised. It's not about how many network hops there are between you and the system.
A lot of folks think the house and LAN are private, but that's not always true. Your Wi-Fi signal can be picked up from outside the house, someone can unplug your outdoor camera and plug the ethernet cable into something else. When you have a guest, they may need to connect to your Wi-Fi with some random smartphone loaded with 200 random apps.
If you care about security, then you know you can't have it with network segments. Zero trust model is getting more popular in enterprise world. Maybe it still sounds like too much work for a homelab today, but technologies are getting more and more approachable every single day. Comparing to 20 years ago, now I have VM and containers to isolate processes, letsencrypt to encrypt HTTP, my NAS encrypt the whole RAID with a single click... and of course, a software that does MFA effortlessly.
Having a secure authentication system helps me sleep better at night, because I don't worry about something bad may happen just because I can't ensure my home network to be 100% free of malicious human/devices/processes...
I concur wholeheartedly. I had it enabled on my Synology NAS and the damn thing required me to use MFA every time I logged in - zero memory of the device! Drove me crazy and my only option was to turn off MFA altogether.
Just because it's a LAN doesn't mean you have to be physically present to access the device. Another device on your network could be compromised, giving an attacker access to anything that the device can access. For example, say you get tricked into downloading something nasty on your laptop. Now they have remote access to your laptop, giving them access to your NAS. Ultimately it comes down to your threat model. For an average home user, it's probably not very likely that not having 2fa on LAN-only devices would be a huge risk. But for a business with thousands of employees that could plug who-knows-what into your network? Much higher risk.
Add thats before accounting for "defense in depth" approaches.
In order to propey secure, say, a Tor hidden services sshd, you can't use fail2ban. You must use 2fa. Fail2ban would just nearly immediately ban you from ever logging in.
I also turn down the login delay to a few seconds, just to make bruting harder.
Otherwise how could anyone even have a printer connected to their network without people constantly printing junk pages as a prank?
If you've got a setup where Tor traffic can send a packet to your NAS in the first place, you're a far braver soul than I... I trust a firewall far more than I'll trust 2FA.
When you make a HS, it is announced in the Tor's dHT. Now, it is true that the scope of the v3 dHT is limited, it is not 0.
(And more specifically, Tor is a 6-4 mixing network overlay with dHT DNS.)
This is the information I have. It's not possible for a relay to know an .onion address like it was with v2. Could you please link to something that proofs the contrary?
I had to reset the administrative UI and lose my user settings/admin preferences, but it did hang on to the data on the drives, luckily.
If somebody steals your password protected private key file, having the password protection there means they have to bruteforce the password. It does not 'do nothing'. Its an extra layer. If your password is secure enough, it can protect you from having the ssh private key decrypted.
I apologize for my ignorance in advance: having a private key file password-protected does nothing?
I guess I'm not understanding what you mean by "compromised"?
I'm not saying the password protection does nothing, it makes the key harder to crack but it's not another factor. It's simply an extension of the existing key. In other words, it's just a longer password.
You're entirely right -- the "proper" way is to login with MFA, enable SSH, do your thing, and then re-disable SSH.
They're more than MFA codes though: they're actually performing cryptographic challenge/response.
I mean: the RSA tokens just generate a MFA code. But the bank "card readers", whether they actually read a card or not, do perform challenge/response.
I've got several banks using the same type of card reader: I put my bank card in and respond to a challenge: I enter the digits that the card reader shows me and I can log in.
I've got another bank which provided me a reader: it's not a card reader as its standalone (I don't need any bank card to use it) but it still perform challenge/response.
For example for any wire tx to a new recipient or above a certain amount, I need to enter the amount and part of the recipient's bank account number and sign the transaction.
It's more than just authentication.
In between there was a special key-generator given to each customer, that was abandoned about 10 years ago. (edit: it was the RSA SecurID's mentioned in this thread)
Since then we've got apps that need to be activated using a letter with a special qr-code, as well as the bank account-number (username) & password another qr-code from the website. I assume it generates a private key in the app which will not be transferred to a new device (but maybe somehow is). You need to login using your account-number (username) and password, after that you have to open the app (login with face-scan) scan a qr-code and enter the generated code.
Getting a printed out card or page with something on it to verify your identity seems like 20 years tech to me.
Defeats the purpose? Only kind of.
Other ones:
* Depending on your settings they broadcast an IPv6 DNS when they shouldn't. I told them about the bug and they scoffed.
* Wrong setting when you DO broadcast an IPv6 DNS with just SLAAC. They send it via DHCPv6 without setting the right bits.
* Setting up 2 networks with 2 domains, like iot.wirelessgigabit.com & home.wirelessgigabit.com does not work. They don't attach the domain to the the network. Last one wins.
* No way of redirecting traffic, like all outgoing :53 to a port. All you can do is block which breaks things like a Google Mini.
* No WireGuard VPN
* No OIDC authentication. (DSM has it but for some arcane reason you need to join the domain before OIDC works...)
Basically (if I've understood it correctly), You get an random seed that you initiate the authenticator with, then for (each minute?) it combines the unix timestamp, the seed and calculate the time-based-one-time-password.
So combining a user-specific password, the TOTP (whose seed is on an initiated device for the user) you have 2 factors that can be hard for an attacker to retrieve both of.
https://datatracker.ietf.org/doc/html/rfc6238
(Kludgy? Maybe a bit but feels fairly secure in practice)
https://www.rfc-editor.org/rfc/rfc4226
FIDO2 with a hardware key source provides a much stronger and more secure guarantee than a 6 digit hash and an unencrypted symmetric secret stored in an app.
https://fidoalliance.org/fido2/
Any and all 2FA approaches demand backup codes (and backup code management with confidentiality and durability) to protect against 2FA loss or inability of the 2FA to function. For example, there are some apps that insist on performing FIDO2 on a non-NFC platform. While I can use a Lightning to USB-C adapter to workaround this limitation, it's possible that I might not have it and would need some other 2FA "sufficient" mechanism.
By the way, there is "HSM"-like passkey functionality embedded in most modern Apple and Samsung devices that doesn't require a USB token. This has the downside of not being a dedicated hardware token, so it cannot be physically isolated offline and requires an additional piece of software to act as a FIDO2 authenticator.
If you took WebAuthn and, instead of the private key, used one password, it’d be nearly as strong. Assuming that one password is sufficiently strong, and the password input could not be intercepted, and no one ever looked over your shoulder, or used a camera, and you never wrote it down somewhere others can find it, and you never typed it where someone had installed a key logger…
Actually, let’s bring on the passkeys.
Passwords are so terrible with the way they're typically used and deployed (and now there is enough widespread value in compromising accounts at scale), that MFA went from a niche 'high security' edge case to, well, our current UX disaster.
For high security needs, you'd still want MFA + passkey.
That pin or whatever is not part of the actual authentication.
Someone could have an auth flow with a password + passkey + say SMS mfa if they wanted to be a jerk. Or just use a passkey.
Looks like multi-factor to me.
We are now literally arguing semantics.
Technically correct is the best kind of correct, no?
As I noted, if someone wanted to build a more complex flow they can - but it would be more of a jerk move than anything probably.
So, if I am a site that needs additional verification (previously used MFA), I use “User Verification” == “required”. Then I know two factors “something the user has” and “something the user knows/is” has been used.
https://fidoalliance.org/passkeys/
But whatever.
So no. But you’ve been very verbose in looking like an idiot though. So have fun with that?
I had (2 PCs)<->DumbSwitch<->rt2600ac<->(3rd PC)
The PCs connected to the dumb switch could communicate at gigabit but anything that went through the rt2600ac was limited, very frustrating. Running a long cable from 3rd PC to the $20 dumb switch fixed it. Eventually just gave up and use google fibers stupid dot router/WAP which I hate but at least it works.
The dual WAN on the synology was nice though.
If you only need the dual WAN for a lowish-bandwidth backup connection, Eero’s implementation works well enough, though does have some limitations. (Requires a subscription, only does backup over wi-fi.)
https://kb.synology.com/en-ca/DSM/help/DSM/SecureSignIn/2fac...
They support a backup e-mail address that it will send a verification code to if you lose your 2FA device. But, whoops -- that's not gonna work if it can't connect to the internet.