Inloggning till panelen: ett lösenord ensamt är inget försvar
Ett lösenords styrka betyder något först när gissning är dyrt. Och det antagande som kostar mest är detta: "jag är på det lokala nätet, jag är trygg".
AtlasPVE ·
Den här artikeln svarar på
- proxmox inloggningssäkerhet
- proxmox skydd mot lösenordsgissning
- proxmox tvåstegsverifiering
- proxmox byta root-lösenord
- är proxmox panel säker
Man sätter ett lösenord på panelen och tror att saken är avklarad. Men ett lösenord är en enda försvarslinje, och dess styrka går inte att kontrollera: den kan bara antas.
Tre saker förändrar verkligen utgången.
Ett: en försöksgräns
Ett lösenords styrka betyder något först när gissning är dyrt. Med obegränsade försök blir varje lösenord en tidsfråga; den enda skillnaden är hur lång tid det tar.
En försöksgräns gör inte lösenordet starkare. Den gör gissandet dyrt. Det är två olika saker, och den andra ligger i din hand.
Två: var sessionen bor
Efter inloggningen bär dig inte lösenordet utan sessionen. Den verkliga frågan är alltså: var bor den sessionen och vem kan nå den?
Sessionen bör ligga i webbläsaren på en plats som skript inte kan läsa, och vara märkt så att en sida på en annan webbplats inte kan skicka förfrågningar i ditt namn. Annars kan en flik du lämnat öppen handla med din befogenhet.
Tre: ett andra steg
Detta är den enda åtgärden som inte låter ett läckt lösenord överleva. Ett lösenord kan stjälas, gissas eller komma från en läcka på en annan webbplats. Ett andra steg hindrar inget av det, det ser bara till att lösenordet ensamt inte räcker.
Slå på det för konton som kan ändra saker. För konton som bara tittar är det en smaksak.
Antagandet som kostar mest: "jag är på det lokala nätet"
Den meningen är på säkerhetssidan den mest upprepade och den mest felaktiga.
Räkna vad som finns på ditt lokala nät: den trådlösa anslutningen du gav dina gäster, en smart apparat som inte uppdaterats på åratal, barnens dator, och varje virtuell maskin du kör på din egen tjänare.
Den sista förbises oftast. När du kör programvara du hämtat från internet inuti en virtuell maskin ligger den maskinen på ditt lokala nät och kan nå panelens inloggningssida.
"Jag har inte öppnat utåt" betyder alltså inte "ingen kan försöka". Det betyder bara "inte alla på internet kan försöka". Skillnaden ligger i vem som är nära nog för att försöka.
Vad man gör, i tur och ordning
Öppna inte panelen direkt mot internet. Behöver du fjärråtkomst, lägg ett lager emellan.
Se till att det finns en försöksgräns. Utan den är lösenordsgissning från det lokala nätet gratis.
Sätt ett andra steg på konton som kan ändra saker.
Sluta göra det dagliga arbetet med det mäktigaste kontot. Det har en egen artikel i den här wikin och räknas som fortsättningen på denna: även med skyddad inloggning är hur mycket den inloggade kan ändra en separat fråga.
Vad Atlas gör
Atlas inloggningsport har en försöksräknare, och räknaren förs per källadress. Blir det tio felaktiga försök inom ett fönster på fem minuter spärras den adressen i femton minuter.
Varför det finns står i kodens egen kommentar och är precis den här artikelns ämne: Proxmox har redan sin egen fördröjning, men det måste stoppas även vid agentens port, annars är lösenordsgissning från det lokala nätet gratis.
På sessionssidan används två märkningar tillsammans. Sessionsbeteckningen hålls i webbläsaren i en form som skript inte kan läsa, och den är märkt så att den inte skickas med förfrågningar som kommer från en annan webbplats. En sida i en annan öppen flik kan alltså inte få din webbläsare att använda din session.
En ärlig gräns: inget av detta gör ditt lösenord starkare. Det gör gissandet dyrt och lyfter sessionen ur kategorin stöldbar. Lösenordet självt är fortfarande ditt val, och om du slår på det andra steget likaså.
Källor
Proxmox egen dokumentation. På engelska, och den har sista ordet i den här frågan.