Помилка SSH: у дозволі відхилено. Повторіть спробу


23

У мене налаштування сервера Ubuntu за допомогою екземпляра amazon ec2. Мені потрібно підключити свій робочий стіл (який також є машиною ubuntu) до сервера ubuntu за допомогою SSH.

Я встановив open-ssh на сервері ubuntu. Мені потрібні всі системи моєї мережі для підключення сервера ubuntu за допомогою SSH (не потрібно підключатися через pem або pub ключі).

Отже, відкрито порт SSH 22 для мого статичного IP в групах безпеки (AWS).

Мій файл SSHD-CONFIG:

# 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 (командна оболонка) я створив нового користувача під назвою 'senthil' і додав цього нового користувача до групи 'sudo'.

sudo adduser -y senthil
sudo adduser senthil sudo

Я спробував увійти за допомогою цього нового користувача "senthil" у "webmin". Я зміг успішно увійти.

Коли я намагався підключити сервер ubuntu зі свого терміналу через SSH,

ssh senthil@SERVER_IP

Він попросив мене ввести пароль. Після введення пароля на екрані відображається:

Permission denied, please try again.

У ході деяких досліджень я зрозумів, що для цього мені потрібно відстежувати авторський журнал мого сервера. Я отримав таку помилку в моєму авторському журналі (/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

Коли я намагався налагоджувати за допомогою:

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: 

Для пароля я ввів те саме значення, яке я зазвичай використовую для користувача 'ubuntu'.

Чи хтось, будь ласка, підкаже мене, де це питання, і запропонувати якесь рішення для цього питання?


Ви встановили пароль для ubuntuкористувача? І ви впевнені, що правильно його набрали? Також id ubuntuу запитання включіть результат запуску з вашого сервера. Ви заблокували рахунок, можливо? Розглянемо можливість включення виводу grep ^ubuntu /etc/passwd /etc/shadow(і змінити зашифрований пароль лише посередині рядка).
gertvdijk

Насправді я не створив жодного окремого користувача для SSH. Я використовував користувача, якого я зазвичай використовую для входу в сервер. Вихід grep ^ ubuntu / etc / passwd / etc / shadow є: / 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

Ще раз дякую за вашу чітку відповідь. Якщо мені потрібно створити окремого користувача для SSH та додати його до якоїсь конфігурації SSH, можете, будь ласка, дати мені кілька кроків для цього.
Сентитіл Кумаран

Відповіді:


11

Ви заблокували обліковий запис.

Зі сторінки вручну usermod(8):

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

А тепер подивіться на свій shadowрядок:

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

Розблокуйте його:

usermod -U ubuntu

Важлива примітка! Якщо цей користувач попередньо встановлений у системі, він може бути заблокований з причини (причини безпеки), але я не можу вирішити це для вас, оскільки, мабуть, це не звичайна установка Ubuntu.


Якщо вищезгадане відчуває вам незручність, ви можете створити окремого користувача:

sudo adduser username

і відповісти на запитання. Ви повинні мати можливість увійти в систему просто чудово. Також зробіть його можливим стати root (використовувати sudo), додавши його до sudoгрупи:

sudo adduser username sudo

Якщо вам потрібно перейти до ubuntuкористувача в командному рядку, вам доведеться використовувати свої підвищені привілеї, оскільки ви не можете надати облікові дані з тієї ж причини, що і ви не можете увійти за допомогою SSH. Тепер увійдіть, використовуючи SSH як username, та запустіть це, щоб стати ubuntu:

sudo su -l ubuntu

З міркувань безпеки я б не радив використовувати rootдля входу безпосередньо.


Я відчуваю, що користувач "ubuntu" заблокований з міркувань безпеки. Або щоб уникнути цієї плутанини, я також намагався увійти, використовуючи свій обліковий запис кореневого користувача. Я все одно отримую ту саму помилку в терміналі та файлі auth.log.
Сентитіл Кумаран

Ви маєте на увазі rootрахунок? У цьому обліковому записі немає пароля і заблоковано за замовчуванням. Ви це ввімкнули?
Алаа Алі

@Kamal Я оновив свою відповідь, щоб вказати, як це зробити.
gertvdijk

Спасибі gertvdijk. Я зараз спробую це. Я також відредагував своє запитання та оновив вихід ssh -v ubuntu @ SERVER_IP
Senthil Kumaran

@Alaa: Ні. Я цього не ввімкнув. Просто спробував увійти в систему за допомогою root .. Зараз я використовую користувача: 'ubuntu' для входу (у webmin)
Senthil Kumaran

7

У мене така ж проблема, і це займає у мене багато годин.

Однак зауважу, що це неправильний пароль через різницю між розкладкою клавіатури клієнтського сервера snd:

У сервер я подумав, що я встановив пароль: WEwd@ds І, зауважу, @це "в макеті клавіатури сервера.

Тож правильний пароль: WEwd"ds


Таким чином, вам потрібно перевірити:

Розкладка клавіатури сервера [проти] Розкладка клавіатури робочої станції


1
Це було все. Моя система Raspbian повертається до клавіатури GB при кожному перезавантаженні, і мені потрібно перейти в «Налаштування» -> «Клавіатура» та «Миша», щоб повернути її до США. Дякую за те, що я відповів на це, чекаючи, коли мені знадобиться січень 2018 року.
SDsolar

У мене була протилежна проблема - Windows чомусь змінив розкладку клавіатури, і тому я давав неправильний пароль через мій клієнт SSH.
mwfearnley

5

Це не точна відповідь на це питання. Але в моєму випадку були зайві лінії. (двічі були однакові лінії)

PermitRootLogin yes

і також

AllowUsers otheruser

Ви повинні додати "root" користувача до цього рядка або прокоментувати цей рядок.

І перезапустити ssh service sshd restart


це працює для мене
VJ Ranga

2

Я знайшов, де проблема і виправлений.

Я створив нового користувача (на ім’я: senthil) і просто використав його для SSH. В Ubuntu я вважаю, що коли ми створюємо нового користувача, за замовчуванням пароль нового користувача буде призначений новому користувачеві. Вже тоді скиньте та призначте новий пароль новоствореним користувачам.

Після скидання пароля користувача та внесення наступних змін у sshd_config, тепер я можу підключити всі мої системи (з моєї мережі) до віддаленого сервера.

Зверніть увагу: я вимкнув усі аутентифікації SSH (наприклад, RSAAuthentication, PubkeyAuthentication та KerberosAuthentication). Увімкнув лише пароль.

Дякую тобі.


"Я вважаю, що коли ми створюємо нового користувача, за замовчуванням пароль нового користувача буде призначений новому користувачеві." <- Ні, вас просять встановити пароль, використовуючи adduser. Ви використовували useraddзамість цього?
gertvdijk

Я використав наступні дві команди: "sudo adduser -y senthil" і "sudo adduser senthil sudo". Можливо, так як я створив користувачів за допомогою командної лінії webmin, він не просив мене вводити пароль під час створення користувача
Senthil Kumaran

gertvdijk, вважай, що у мене є доступ лише до веб-сервера для сервера. У командному рядку webmin, підказки GUI або покрокова установка неможлива. Тому я відчуваю, що в командному рядку webmin він не просить мене вводити пароль. Що я можу зробити в таких випадках? Чи є якась інша команда, окрім "sudo adduser -y senthil", така що в ЄДНІЙ КОМАНДІ я буду створювати та призначати паролі користувачам? вибачте за тривале запитання.
Шентіл Кумаран

Але у вас є консольний доступ на EC2, правда? Звичайно, запуск цих команд через Webmin дуже обмежений. Вибачте, що я не працював явно за допомогою цього консолі, а не Webmin (це дійсно обмежує ваші параметри / можливості).
gertvdijk

Ви це мали на увазі, ви просто змінили пароль цього користувача і все гаразд? У мене така ж проблема. У моєму випадку всі користувачі включають root отримати цю помилку ?!
shgnInc

2

У мене є рішення для вас. У вашому файлі sshd_config ви додаєте наступний рядок у кінці файлу:

AllowUsers senthil

Цей рядок дозволить вашому серверу підключитися до імені користувача: senthil. Іншому користувачеві буде відмовлено. Після цього перейдіть до свого терміналу на вашій строці наберіть цю команду:

ssh senthil@yourhostname

Готово! Удачі вам Більше інформації ви можете завітати сюди і подивитися. http://www.htpcbeginner.com/install-ssh-server-on-ubuntu-1204/


1

У моєму випадку це вирішило проблему: На сервері, на якому працює opensh-сервер, я змінив пароль користувача (myserverusername) та root (root) на той, який я раніше використовував:

sudo passwd myserverusername

і

sudo passwd root

Потім перезавантажте демона сервера ssh:

sudo service ssh restart

Це дивно, тому що я не згадую зміни паролів


0

Для відчайдуху двічі перевірте свій /etc/hostsфайл, щоб переконатися, що ви не обманюєте комп'ютер думати, що певне ім’я хоста має інший IP, ніж це насправді. >. <


0

Перевірте sshdсписок доступу для дозволених користувачів (конфігураційний файл)

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

не слід встановлювати, це слід коментувати, #як показано в прикладі нижче.

# 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

Я побачив багато відповідей на це питання. Я теж зіткнувся з проблемою. У моєму випадку моє ssh-з'єднання працювало до цього часу, я перейшов на оновлення Windows 10 автоматично. Не працював над Ubuntu на моєму робочому столі довго.

Не впевнений, у чому проблема. Я перевірив \ etc \ hosts файл, у файлі sshd_config все виглядало добре. Тоді я вирішив перевірити свої антивірусні налаштування - бінго, в чому проблема!

Заявка на шпаклівку була у списку відхилених. Так увімкнено це… потім успішно увійдіть у систему. Великий крик!


0

перевірте #cat / etc / ssh / sshd_config, якщо ви знайшли рядок, починаючи з "AllowUsers додайте в неї свого користувача, як: AllowUsers scom omar ahmed root

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.