Autenticação multifatorial
Todos nós sabemos que, antes de começar a configurar o Zabbix via WebUI, é necessário fazer o login. O Zabbix tem várias opções para fornecer melhor segurança para as senhas dos usuários, configurando a política de senha:
- Requisito para o tamanho mínimo da senha
- Requisitos para que a senha contenha uma letra latina maiúscula e uma minúscula, um dígito e um caractere especial
- Requisito para evitar senhas fáceis de adivinhar
Para proteger ainda mais o processo de login, você pode configurar a autenticação multifator (MFA). A MFA protege o Zabbix usando uma segunda fonte de validação antes de conceder acesso à sua WebUI depois que um usuário digita sua senha corretamente. O Zabbix oferece dois tipos de MFA - Time-based one-time password (TOTP) e Duo MFA provider.
Senha de uso único baseada em tempo
No menu, selecione Users section e, em seguida, Authentication

2.20 Configurações iniciais do MFA
Agora, na guia MFA settings, marque a caixa de seleção Enable multi-factor
authentication e, em seguida, selecione TOTP na lista suspensa Type.

2.21 Novo método MFA
Na lista suspensa Hash function, você pode escolher SHA-1, SHA-256 ou SHA-512;
quanto maior o número, maior a segurança.
Em Code lentgh, você pode selecionar quantos dígitos serão gerados para você
pelo aplicativo Authenticator no seu telefone.
Clique em Add e depois em Update. Agora você tem o TOTP MFA configurado e
ele é o método padrão de MFA.

2.22 Novo método MFA adicionado
Agora você precisa informar ao Zabbix para qual grupo de usuários (ou grupos) usar a MFA. Vamos criar um grupo de usuários que exigiria a MFA.
No menu, selecione a seção Users e, em seguida, User groups, depois clique
no botão Create user group
{
width=90% }
2.23 Criar grupo de usuários
Em Group name, coloque "test". Observe que o campo Multi-factor
authentication é "Default" (Padrão), pois como atualmente temos apenas um
método MFA configurado, não importa se selecionamos "Default" (Padrão) ou
"TOTP1" que criamos acima. Você também pode desativar a MFA para todos os
usuários pertencentes a esse grupo de usuários. Clique no botão Add para criar
o grupo de usuários "test".

2.24 Nova configuração de grupo de usuários
Nota
MFA method is defined on per User group basis, i.e. MFA method configured for a User group will be applied to all users belonging to this group.
Vamos adicionar um usuário a esse grupo de usuários. No menu, selecione a seção
Users e, em seguida, Users, depois clique no botão Create user

2.25 Criar usuário
Preencha os campos Nome de usuário, Senha e Senha (mais uma vez).
Certifique-se de selecionar o grupo de usuários test no campo Groups.

2.26 Nova configuração de usuário
Em seguida, acesse a guia Permissions e selecione qualquer função.
{
width=90% }
2.27 Novas permissões de usuário
Clique no botão Add para adicionar o usuário.
Agora podemos testar como o TOTP MFA funciona. Saia e tente entrar como um
usuário de teste que você acabou de criar. Será apresentado a você um código QR.
Isso significa que o usuário test ainda não foi registrado no TOTP MFA.

2.28 Código QR TOTP
Em seu telefone, é necessário instalar o aplicativo "Microsoft authenticator" ou
"Google authenticator". O procedimento para adicionar um novo código QR é
bastante semelhante; veja como fica no "Google authenticator". Toque em Add a
code e, em seguida, em Scan a QR code. Você verá imediatamente um código de 6
dígitos (lembra-se de que selecionamos 6 em Comprimento do código quando
configuramos o TOTP MFA?)

2.29 Aplicativo Authenticator, etapa 1

2.30 Aplicativo Authenticator, etapa 2

2.31 Aplicativo Authenticator, etapa 3
Digite este código no campo Verification code da sua tela de login e clique em
Sign in, se você fez tudo certo, você está logado no Zabbix neste momento.
Nesse momento, o usuário "teste" é considerado inscrito no TOTP MFA e o Zabbix
armazena em seu banco de dados um código especial utilizado para outras
autenticações. Na próxima vez que o usuário "teste" tentar fazer o login no
Zabbix, haverá apenas um campo para inserir o código de verificação

2.32 Solicitação de código de verificação
Aviso
For TOTP MFA to work your Zabbix server must have correct time. Sometimes it's not the case especially if you are working with containers so pay attention to this.
Se um usuário mudar (ou perder) seu telefone, então o administrador do Zabbix
deve redefinir sua inscrição. Para isso, no menu, selecione Users e marque a
caixa de seleção à esquerda do usuário "teste" e clique no botão "Reset TOTP
secret".

2.33 Redefinir o segredo TOTP
Depois de redefinir o segredo TOTP, o usuário de "teste" terá de passar novamente pelo procedimento de registro.
Provedor Duo MFA
A Duo é uma plataforma de segurança muito famosa que oferece muitos recursos/produtos relacionados à segurança. Para saber mais, visite Duo. Aqui falaremos sobre a Duo apenas com relação ao Zabbix MFA.
Aviso
For Duo MFA to work your Zabbix WebUI must be configured to work with HTTPS (valid certificate is not required, self-signed certificate will work).
Em primeiro lugar, você precisa criar uma conta no Duo (é gratuito para
gerenciar até 10 usuários) e, em seguida, fazer login no Duo, pois você é um
administrador aqui. No menu à esquerda, selecione Applications (Aplicativos) e
clique no botão Protect an Application (Proteger um aplicativo).

2.34 Menu Aplicativos DUO
Em seguida, você verá o WebSDK na lista de aplicativos, clique nele

2.35 DUO Applications list
Here you'll see all the data needed for Zabbix.

2.36 Configurações do aplicativo DUO WebSDK
Agora vamos para o Zabbix. Primeiro, precisamos configurar o método Duo MFA. No
menu, selecione Users e clique em Authentication. Em seguida, na guia MFA
settings, clique em Add na seção Methods.

2.37 Adicionar método MFA
Fill in all the fields with data from Duo Dashboard -> Applications -> Web SDK
page (see screenshot above) and click Add, then click Update to update
Authentication settings.

2.38 DUO method settings
After the MFA method is configured let's switch the "Test" group to use Duo MFA.
In the menu select Users and click User groups, then click "test" group. In
the field Multi-factor authentication select "DUO1" and click Update.

2.39 DUO MFA authentication method for user group
Everything is ready. Let's test it. Sign out of Zabbix and sign back in with
"test" user. You should see a welcome screen from Duo. Click several Next
buttons.

2.40 Enrolling into DUO, step1

2.41 Enrolling into DUO, step2

2.42 Enrolling into DUO, step3
Then you need to select the method of authentication.

2.43 Enrolling into DUO, step4
It is up to you what to select you can experiment with all these methods. Let's
select "Duo Mobile" (you need to install "Duo mobile" application on your
device). Click I have a tablet (it's just easier to activate your device this
way) and confirm that you installed "Duo mobile" on your phone. At this point
you should see a QR code that you need to scan in "Duo mobile" application.

2.44 Enrolling into DUO, step5

2.45 Enrolling into DUO, step6

2.46 Enrolling into DUO, step7
Open "Duo mobile" on your phone. If you did not have this application previously installed (thus no accounts enrolled) you will see couple of welcome screens.

2.47 Configure DUO app, step 1

2.48 Configure DUO app, step 2
Tap on "Use a QR code" and then scan the code presented by Duo in your Zabbix login screen. After you do that you will see that the account is enrolled to your Duo MFA. Enter account name and tap "Done" and you will see the account in the list of all accounts enrolled into Duo MFA on this device. In Zabbix WebUI you will also see a confirmation, click "Continue".

2.49 Configure DUO app, step 3

2.50 Configure DUO app, step 4

2.51 Enrolment confirmation
Duo will ask you now whether you want to add another method of authentication,
click Skip for now and you'll see a confirmation that set up completed. Click
Login with Duo and a notification will be pushed to your device.

2.52 Add another way to login

2.53 MFA DUO set up completed

2.54 DUO push notification sent
Now just tap on "Approve" on your device and you will be logged in into Zabbix.

2.55 DUO push notification on the phone
Duo MFA enrolment complete. If you sign out and sign in back then immediately a push notification will be sent to your device and all you need is tap on "Approve". Also you will see the user "test" in Duo where you can delete the user, or deactivate just click on it and experiment.

2.56 New user registered in DUO
Conclusão
Implementing Multi-Factor Authentication (MFA) in Zabbix is a powerful way to significantly advance your system’s security beyond the standard password policies. This chapter outlined how Zabbix supports two robust MFA mechanisms:
-
Time Based One-Time Password (TOTP): Offers user-friendly, secure login via an authenticator app (like Google or Microsoft Authenticator). It's easy to configure and effective just ensure that your Zabbix server maintains accurate time settings to avoid authentication issues.
-
Duo MFA: Integrates a more advanced, enterprise grade solution that provides features like push notifications and customizable authentication methods. Duo offers flexible and strong security, albeit requiring a bit more setup (including HTTPS on the Zabbix WebUI).
Both MFA options elevate the login process by introducing an additional layer of validation. Administrators can apply MFA selectively by assigning it to specific user groups thus tailoring the security posture to organizational needs.
Ultimately, enabling MFA not only enhances protection against unauthorized access but also fits within a broader strategy of robust authentication. Whether through TOTP or Duo, adding MFA demonstrates a commitment to safeguarding access to your Zabbix environment and fortifying your monitoring infrastructure.n
Perguntas
-
Why is relying on a password alone not sufficient to secure access to a Zabbix instance? (Think about common attack methods like password reuse, brute force, or phishing.)
-
What are the key differences between TOTP-based MFA and Duo MFA in terms of setup, security, and user experience?
-
How does accurate system time affect the reliability of TOTP authentication, and what could go wrong if time synchronization is not maintained?
-
If you were tasked with enabling MFA for a production Zabbix system, which method (TOTP or Duo) would you choose, and why? (Consider factors such as environment size, user skill level, regulatory requirements, and available resources.)
-
What are some potential challenges when rolling out MFA in an organization, and how could an administrator mitigate user resistance or technical issues?
-
Why might it be useful to enable MFA only for certain user groups in Zabbix rather than enforcing it globally?
-
How does adding MFA to Zabbix align with a broader security strategy, and what other complementary security measures should be considered?
URLs úteis
https://www.zabbix.com/documentation/current/en/manual/web_interface/frontend_sections/users/authentication/mfa https://duo.com/docs/sso-zabbix