Ne yaparsanız yapın, hesabınızı passwd -u
boş bir şifre alanıyla bırakılan bir durumda bırakmayın : bu şifre girmeden oturum açmanıza izin verir (SSH dışında, çünkü SSH bunu reddeder).
Şifreye sahip olmamak için hesabınızı değiştirin, ancak kilidi açın. Şifre veritabanındaki şifre karma herhangi bir dizenin karma değilse, bir hesabın şifresi yoktur. Geleneksel olarak, bunun için *
veya gibi bir karakterlik bir dize !
kullanılır.
Kilitli hesaplar ayrıca şifre alanında, herhangi bir dizenin karması olmamasına neden olan özel bir işaretleyici kullanır. İşaretçi sisteme bağlıdır. Linux'ta passwd
komut !
, başında bir işaret koyarak kilitli şifreleri işaretler ve OpenSSH, alana başlarsa hesabı kilitli olarak değerlendirir !
. Diğer Unix varyantları benzer fakat aynı mekanizmaları kullanma eğilimindedir, bu nedenle parola veritabanınızın heterojen bir ağ arasında paylaşılıp paylaşılmadığına dikkat edin.
Linux'ta, SSH erişimine izin verirken bir hesaba parola tabanlı erişimi devre dışı bırakabilirsiniz (diğer bazı kimlik doğrulama yöntemleriyle, genellikle bir anahtar çifti ile).
usermod -p '*' username
Kullanıcı, şifreyi tekrar şifreyle değiştiremez, çünkü geçerli bir şifre girmelerini gerektirir.
İsterseniz, hesabın parolası olup olmadığına bakılmaksızın SSH'yi parola doğrulamasını reddedecek şekilde yapılandırabilirsiniz. Yine de SSH'nin hesabın kilitlenmesini göz önünde bulundurmaması için düzenleme yapmanız gerekir; bu nedenle, örneğin Linux'ta !
parola alanından kaldırmanız gerekir (ancak alanı boş bırakmayın - *
yukarıda açıklandığı gibi ayarlayın ). SSH için parola doğrulamayı devre dışı bırakmak için, veya PasswordAuthentication
yönergelerini (sisteminizde hangisi varsa) ekleyin. Bu yönergenin yalnızca belirli bir kullanıcı için geçerli olmasını sağlamak için bir blok kullanın ; bloklar görünmelidir/etc/sshd_config
/etc/ssh/sshd_config
Match
Match
…
Match User username
PasswordAuthentication no