SSH hatası: İzin reddedildi, lütfen tekrar deneyin


23

Amazon ec2 örneği kullanarak bir Ubuntu sunucu kurulumu var. Masaüstümü (aynı zamanda bir ubuntu makinesi) SSH kullanarak ubuntu sunucusuna bağlamam gerekiyor.

Ubuntu sunucusuna open-ssh'yi kurdum. Ubuntu sunucusunu SSH kullanarak bağlamak için ağımın tüm sistemlerine ihtiyacım var (pem veya pub anahtarlarıyla bağlanmaya gerek yok).

Bu nedenle, güvenlik gruplarındaki (AWS) statik IP'm için SSH portu 22'yi açtı.

SSHD-CONFIG dosyam şudur:

# Package generated configuration file
# See the sshd_config(5) manpage for details

# What ports, IPs and protocols we listen for
Port 22
# Use these options to restrict which interfaces/protocols sshd will bind to
#ListenAddress ::
#ListenAddress 0.0.0.0
Protocol 2
# HostKeys for protocol version 2
HostKey /etc/ssh/ssh_host_rsa_key
HostKey /etc/ssh/ssh_host_dsa_key
HostKey /etc/ssh/ssh_host_ecdsa_key
#Privilege Separation is turned on for security
UsePrivilegeSeparation yes

# Lifetime and size of ephemeral version 1 server key
KeyRegenerationInterval 3600
ServerKeyBits 768

# Logging
SyslogFacility AUTH
LogLevel INFO

# Authentication:
LoginGraceTime 120
PermitRootLogin yes
StrictModes yes

RSAAuthentication yes
PubkeyAuthentication yes
#AuthorizedKeysFile %h/.ssh/authorized_keys

# Don't read the user's ~/.rhosts and ~/.shosts files
IgnoreRhosts yes
# For this to work you will also need host keys in /etc/ssh_known_hosts
RhostsRSAAuthentication no
# similar for protocol version 2
HostbasedAuthentication no
# Uncomment if you don't trust ~/.ssh/known_hosts for RhostsRSAAuthentication
#IgnoreUserKnownHosts yes

# To enable empty passwords, change to yes (NOT RECOMMENDED)
PermitEmptyPasswords no

# Change to yes to enable challenge-response passwords (beware issues with
# some PAM modules and threads)
ChallengeResponseAuthentication no

# Change to no to disable tunnelled clear text passwords
#PasswordAuthentication yes

# Kerberos options
#KerberosAuthentication no
#KerberosGetAFSToken no
#KerberosOrLocalPasswd yes
#KerberosTicketCleanup yes

# GSSAPI options
#GSSAPIAuthentication no
#GSSAPICleanupCredentials yes

X11Forwarding yes
X11DisplayOffset 10
PrintMotd no
PrintLastLog yes
TCPKeepAlive yes
#UseLogin no

#MaxStartups 10:30:60
#Banner /etc/issue.net

# Allow client to pass locale environment variables
AcceptEnv LANG LC_*

Subsystem sftp /usr/lib/openssh/sftp-server

# Set this to 'yes' to enable PAM authentication, account processing,
# and session processing. If this is enabled, PAM authentication will
# be allowed through the ChallengeResponseAuthentication and
# PasswordAuthentication.  Depending on your PAM configuration,
# PAM authentication via ChallengeResponseAuthentication may bypass
# the setting of "PermitRootLogin without-password".
# If you just want the PAM account and session checks to run without
# PAM authentication, then enable this but set PasswordAuthentication
# and ChallengeResponseAuthentication to 'no'.
UsePAM yes

Webmin (Command shell) aracılığıyla 'senthil' adında yeni bir kullanıcı oluşturdum ve bu yeni kullanıcıyı 'sudo' grubuna ekledim.

sudo adduser -y senthil
sudo adduser senthil sudo

Bu web kullanıcısını 'webmin'de' senthil'i kullanarak giriş yapmaya çalıştım. Başarıyla giriş yapabildim.

Ubuntu sunucusunu SSH üzerinden terminalimden bağlamaya çalıştığımda,

ssh senthil@SERVER_IP

Benden şifre girmemi istedi. Şifre girişinden sonra, şunu gösterdi:

Permission denied, please try again.

Bazı araştırmalarda bunun için sunucumun auth log'unu izlemem gerektiğini anladım. Auth log'umda aşağıdaki hatayı aldım (/var/log/auth.log)

Jul  2 09:38:07 ip-192-xx-xx-xxx sshd[3037]: pam_unix(sshd:auth): authentication failure; logname= uid=0 euid=0 tty=ssh ruser= rhost=MY_CLIENT_IP  user=senthil
Jul  2 09:38:09 ip-192-xx-xx-xxx sshd[3037]: Failed password for senthil from MY_CLIENT_IP port 39116 ssh2

Kullanarak hata ayıklamaya çalıştığımda:

ssh -v senthil@SERVER_IP


    OpenSSH_5.9p1 Debian-5ubuntu1, OpenSSL 1.0.1 14 Mar 2012
debug1: Reading configuration data /etc/ssh/ssh_config
debug1: /etc/ssh/ssh_config line 19: Applying options for *
debug1: Connecting to SERVER_IP [SERVER_IP] port 22.
debug1: Connection established.
debug1: identity file {MY-WORKSPACE}/.ssh/id_rsa type 1
debug1: Checking blacklist file /usr/share/ssh/blacklist.RSA-2048
debug1: Checking blacklist file /etc/ssh/blacklist.RSA-2048
debug1: identity file {MY-WORKSPACE}/.ssh/id_rsa-cert type -1
debug1: identity file {MY-WORKSPACE}/.ssh/id_dsa type -1
debug1: identity file {MY-WORKSPACE}/.ssh/id_dsa-cert type -1
debug1: identity file {MY-WORKSPACE}/.ssh/id_ecdsa type -1
debug1: identity file {MY-WORKSPACE}/.ssh/id_ecdsa-cert type -1
debug1: Remote protocol version 2.0, remote software version OpenSSH_5.8p1 Debian-7ubuntu1
debug1: match: OpenSSH_5.8p1 Debian-7ubuntu1 pat OpenSSH*
debug1: Enabling compatibility mode for protocol 2.0
debug1: Local version string SSH-2.0-OpenSSH_5.9p1 Debian-5ubuntu1
debug1: SSH2_MSG_KEXINIT sent
debug1: SSH2_MSG_KEXINIT received
debug1: kex: server->client aes128-ctr hmac-md5 none
debug1: kex: client->server aes128-ctr hmac-md5 none
debug1: sending SSH2_MSG_KEX_ECDH_INIT
debug1: expecting SSH2_MSG_KEX_ECDH_REPLY
debug1: Server host key: ECDSA {SERVER_HOST_KEY}
debug1: Host 'SERVER_IP' is known and matches the ECDSA host key.
debug1: Found key in {MY-WORKSPACE}/.ssh/known_hosts:1
debug1: ssh_ecdsa_verify: signature correct
debug1: SSH2_MSG_NEWKEYS sent
debug1: expecting SSH2_MSG_NEWKEYS
debug1: SSH2_MSG_NEWKEYS received
debug1: Roaming not allowed by server
debug1: SSH2_MSG_SERVICE_REQUEST sent
debug1: SSH2_MSG_SERVICE_ACCEPT received
debug1: Authentications that can continue: password
debug1: Next authentication method: password
senthil@SERVER_IP's password: 
debug1: Authentications that can continue: password
Permission denied, please try again.
senthil@SERVER_IP's password: 

Şifre için normalde 'ubuntu' kullanıcısı için kullandığım aynı değeri girdim.

Birisi lütfen bana sorunun nerede olduğunu sorabilir ve bu sorun için bir çözüm önerebilir mi?


ubuntuKullanıcı için şifre belirlediniz mi? Doğru yazdığına emin misin? Ayrıca id ubuntusorunuza sunucunuzdan çalıştırma çıktısını da ekleyin. Belki de hesabı kilitledin mi? Çıktısını eklemeyi düşünün grep ^ubuntu /etc/passwd /etc/shadow(ve yalnızca dizenin ortasında şifreli parolayı değiştirin).
gertvdijk

Aslında SSH için ayrı bir kullanıcı oluşturmadım. Sunucu girişi için normalde kullandığım kullanıcıyı kullandım. Grep ^ ubuntu / etc / passwd / etc / shadow çıktısı: / etc / passwd: ubuntu: x: 1000: 1000: Ubuntu: / home / ubuntu: / bin / bash / etc / shadow: ubuntu:! $ 6 $ rWDSGDSGhv $ WDFDASGFDAG.Pz0ob54 / epaDSGDSGQKnKqQMFG..OieFiLUndF6KnSDGHDSGHmTMjAGHDSH214I7FHSi1: 15347: 0: 99999: 7 :::
Senthil Kumaran

Net cevabınız için tekrar teşekkürler .. SSH için ayrı bir kullanıcı oluşturmam ve bunu bir SSH yapılandırmasına eklemem gerekirse, lütfen bana bunun için bazı adımlar atabilir misiniz?
Senthil Kumaran

Yanıtlar:


11

Hesabı kilitlediniz.

Man sayfasından usermod(8):

-L, --lock
           Lock a user's password. This puts a '!' in front of the encrypted password,
           effectively disabling the password.

Şimdi shadowçizginize bakın:

ubuntu:!$6$rWDSG...HSi1:15347:0:99999:7:::

Kilidi Aç:

usermod -U ubuntu

Önemli Not! Bu kullanıcı sisteme önceden yüklenmişse, bir nedenden dolayı kilitlenebilir (güvenlik nedenleriyle), ancak bunun sizin için normal bir Ubuntu kurulumu olmadığı için sizin için karar veremiyorum.


Yukarıdakiler sizi rahatsız ediyorsa, ayrı bir kullanıcı oluşturabilirsiniz:

sudo adduser username

ve soruları cevaplayın. Güzelce giriş yapabilmelisin. Ayrıca gruba sudoekleyerek root (use ) yapmasını sağlayın sudo:

sudo adduser username sudo

Eğer geçiş için gereken durumda ubuntukomut satırında kullanıcı, sen SSH kullanarak giriş yapamıyorum neden aynı nedenden dolayı kimlik bilgilerini sağlayamaz, çünkü yükseltilmiş ayrıcalık kullanmak gerekecek. Şimdi, SSH olarak kullanarak giriş yapın usernameve şöyle olmak için şunu çalıştırın ubuntu:

sudo su -l ubuntu

Güvenlik nedeniyle rootdoğrudan giriş yapmak için kullanmamanı tavsiye etmem .


'Ubuntu' kullanıcısının güvenlik nedeniyle kilitli olduğunu hissediyorum. Ya da bu karışıklığı önlemek için, root kullanıcı hesabımı kullanarak da giriş yapmaya çalıştım. Terminal ve auth.log dosyasında hala aynı hatayı alıyorum.
Senthil Kumaran

rootHesabı mı kastediyorsun ? Bu hesabın şifresi yok ve varsayılan olarak kilitlenmiş. Etkinleştirdin mi?
Alaa Ali,

@Kamal Bunu nasıl yapacağımı içerecek şekilde cevabımı güncelledim.
gertvdijk

Teşekkürler gertvdijk. Bunu şimdi deneyeceğim. Ayrıca sorumu düzelttim ve ssh -v ubuntu @ SERVER_IP
Senthil Kumaran'ın

@ Alala: Hayır .. Etkinleştirmedim. Sadece root kullanarak giriş yapmayı denedim .. Şu anda kullanıcı kullanıyorum: giriş için 'ubuntu' (webmin içinde)
Senthil Kumaran

7

Aynı problemim var ve bu benim için saatlerce sürüyor.

Ancak, sunucu snd istemcisinin klavye düzeni arasındaki fark nedeniyle yanlış bir parola olduğunu unutmayın :

: Server, ben şifre koymak düşündüm WEwd@ds ben dikkat, Ve @bir "sunucu klavye düzeninde.

Yani doğru şifre: WEwd"ds


Bu nedenle, kontrol etmeniz gerekir:

Sunucu klavye düzeni [vs] İş İstasyonu klavye düzeni


1
Bu oydu. Raspbian sistemim her açılışta GB klavyeye geri döner ve ABD'ye sıfırlamak için Tercihler-> Klavye ve Fare'ye gitmem gerekir. Bu cevabı Ocak 2018'e ihtiyacım olmasını beklediğiniz için teşekkür ederim.
SDsolar

Ters problemim vardı - Windows klavye düzenimi bir nedenden dolayı değiştirdi ve bu yüzden SSH istemcisi aracılığıyla yanlış şifre veriyordum.
mwfearnley

5

Bu, bu sorunun tam cevabı değil. Ama benim durumumda fazlalık çizgiler vardı. (iki kez aynı satır vardı)

PermitRootLogin yes

ve ayrıca

AllowUsers otheruser

'Kök' kullanıcısını bu satıra eklemeniz veya bu satıra yorum yapmanız gerekir.

Ve ssh'yi yeniden başlat service sshd restart


benim için çalıştı
VJ Ranga

2

Sorunun nerede olduğunu ve çözüldüğünü gördüm.

Yeni bir kullanıcı oluşturdum (adlandırılmış: senthil) ve sadece SSH için kullandım. Ubuntu'da, yeni bir kullanıcı oluşturduğumuzda, varsayılan olarak kök kullanıcının şifresinin yeni kullanıcıya atanacağını hissediyorum. O zaman bile sıfırlayın ve yeni oluşturulan kullanıcılara yeni bir şifre atayın.

Kullanıcı şifresi sıfırlandıktan ve sshd_config dosyasında aşağıdaki değişiklikleri yaptıktan sonra, şimdi tüm sistemleri (ağımdan) uzak sunucuya bağlayabiliyorum.

Lütfen Dikkat: Tüm SSH kimlik doğrulamalarını (RSAAuthentication, PubkeyAuthentication ve KerberosAuthentication gibi) kapattım .. Yalnızca PasswordAuthentication'ı açtım.

Teşekkür ederim.


"Yeni bir kullanıcı oluşturduğumuzda, varsayılan olarak kök kullanıcının şifresinin yeni kullanıcıya atanacağını hissediyorum." <- Hayır, kullanarak bir şifre belirlemeniz istenir adduser. Onun useraddyerine kullandın mı?
gertvdijk

Aşağıdaki iki komutu kullandım: "sudo adduser -y senthil" ve "sudo adduser senthil sudo". Webmin komut satırını kullanarak kullanıcılar oluşturduğum için, kullanıcı oluşturma sırasında şifreyi
girmemi

gertvdijk, bir sunucu için sadece webmin erişimine sahip olduğumu düşünün. Webmin komut satırında, GUI istemi veya adım adım kurulum mümkün değildir. Bu yüzden webmin komut satırında benden şifre girmemi istemediğimi hissediyorum. Bu gibi durumlarda ne yapabilirim? ONE COMMAND'da kullanıcılara parolalar oluşturup atayacağım şekilde "sudo adduser -y senthil" dışında başka bir komut var mı? uzun soru için özür dilerim.
Senthil Kumaran

Ancak bir EC2'de konsol erişiminiz var, değil mi? Tabii ki, bu komutları Webmin üzerinden çalıştırmak ÇOK sınırlıdır. Maalesef bunu Webmin yerine konsolda çalıştırmada açık olmadığım için (seçeneklerinizi / yeteneklerinizi gerçekten kısıtlıyor).
gertvdijk

Yani, sadece o kullanıcının şifresini değiştirdin ve her şey yolunda mı? Bende de aynı problem var. Benim durumumda tüm kullanıcılar root içeriyor mu?
shgnInc

2

Senin için bir çözümüm var sshd_config dosyanızda, aşağıdaki satırları dosyanın sonuna eklersiniz:

AllowUsers senthil

Bu hat, sunucunuzun kullanıcının adına bağlanmasına izin verecektir: senthil. Başka bir kullanıcı reddedilecek. Bundan sonra cihazınızdaki terminalinize şu komutu yazın:

ssh senthil@yourhostname

Bitti! Size iyi şanslar Buraya gelip görebilirsiniz daha fazla bilgi. http://www.htpcbeginner.com/install-ssh-server-on-ubuntu-1204/


1

Benim durumumda bu sorunu çözdü: openssh-server çalıştıran sunucuda kullanıcı (myserverusername) ve root (root) şifresini daha önce kullandığım şifreyle değiştirdim:

sudo passwd myserverusername

ve

sudo passwd root

Sonra ssh sunucusu arka planını yeniden başlatın:

sudo service ssh restart

Garip çünkü değişen şifreleri hatırlamıyorum


0

Çaresizlik için, /etc/hostsbilgisayarınızı belirli bir ana bilgisayar adının gerçekten ondan farklı bir IP'ye sahip olduğunu düşünmeye kandırmadığınızdan emin olmak için dosyanızı iki kez kontrol edin . >. <


0

sshdİzin Verilen Kullanıcılar İçin Erişim Listesini Kontrol Edin (config dosyası)

  1. cat /etc/ssh/sshd_config
  2. AllowUsers

ayarlanmamalı, #aşağıdaki örnekte gösterildiği gibi yorumlanmalıdır .

# Example of overriding settings on a per-user basis
#Match User anoncvs
#       X11Forwarding no
#       AllowTcpForwarding no
#       ForceCommand cvs server
Ciphers aes128-ctr,aes192-ctr,aes256-ctr
ClientAliveInterval 432000
ClientAliveCountMax 0
#AllowUsers TestUser

0

Bu sorulara birçok cevap gördüm. Ben de sorunla karşılaştım. Benim durumum ssh bağlantım daha önce çalışıyordu, Windows 10 otomatik yükseltildi olarak değiştirdim. Masaüstümde Ubuntu üzerinde uzun süre çalışmadı.

Sorunun ne olduğundan emin değilim. \ Etc \ hosts dosyasını, sshd_config dosyasını kontrol ettim, her şey yolunda görünüyordu. Sonra antivirüs ayarlarımı kontrol etmeye karar verdim - sorun bu!

Macun başvurusu reddedilenler listesindeydi. Böylece etkinleştirildi ... sonra başarıyla giriş yapın. Büyük bir çığlık!


0

"AllowUsers kullanıcı olarak bu şekilde ekleyin: AllowUsers scom omar ahmed root" ile başlayan bir satır bulduysanız #cat / etc / ssh / sshd_config komutunu kontrol edin.

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.