Mot de passe aléatoire
$c = [char[]]'abcdefghijkmnpqrstuvwxyzABCDEFGHJKLMNPQRSTUVWXYZ23456789!#$%&*+-=?@'
-join (1..20 | ForEach-Object { $c[[Security.Cryptography.RandomNumberGenerator]::GetInt32($c.Length)] }) | Set-ClipboardGetInt32 existe en PowerShell 7 (.NET 6+). Get-Random n'est pas destiné à la sécurité.
Phrase de passe
5 à 6 mots tirés dans une grande liste (méthode Diceware) : longue, mémorisable, très solide.
Ensuite
Un mot de passe différent par site, rangé dans un gestionnaire de mots de passe, avec la double authentification. Le gestionnaire sait aussi générer des mots de passe.