* පරිශීලක නාමය * සඳහා සත්‍යාපන අසමත්වීම් වැඩිය


265

මට ssh ප්‍රවේශය සක්‍රීය කර ඇති සත්කාරක ගිණුමක් ඇත. මෙම විධානය සමඟ ජනනය කළ .pub යතුරු ගොනුව උඩුගත කිරීමට උත්සාහ කරන විට:

rsync -av -e "ssh -p2222" /home/user/.ssh/key.pub username@111.222.33.44:.ssh/authorized_keys

මම දිගටම ලබා ගන්නවා:

111.222.33.44: 2 වෙතින් විසන්ධි විය: පරිශීලක නාමය සඳහා සත්‍යාපන අසමත්වීම් වැඩිය
rsync: සම්බන්ධතාවය අනපේක්ෂිත ලෙස වසා ඇත (මෙතෙක් ලැබී ඇති බයිට් 0) [යවන්නා]
rsync දෝෂය: io.c (601) හි පැහැදිලි කළ නොහැකි දෝෂය (කේතය 255) [යවන්නා = 3.0.7]

සත්‍යාපනය අසමත් වන තුරු මම මීට පෙර ssh සමඟ සෙල්ලම් කළෙමි. නමුත් දැන් පෙනෙන්නට තිබෙන්නේ සත්‍යාපන අසාර්ථක කවුන්ටරය නැවත සකසන්නේ නැති බවයි (දැන් පැය 12 කට වඩා බලා සිටින අතර, තාක්ෂණික සහාය මිනිත්තු 30 සිට පැය 1 කට පසුව එය නැවත සකසනු ඇතැයි සිතමු, තවත් පිරිමි ළමයෙක් මට කීවේ “ඔබ පිවිසීමට උත්සාහ කරන සෑම අවස්ථාවකම එය නැවත සකසයි පරිශීලක නාමය ", ජීෂ්).

මේක මට ගෙඩි ගහනවා. මම මෙය ස්ලයිස්හෝස්ට් අභිරුචි සේවාදායකයක පවා පිහිටුවා ඇති අතර මේ අයට වඩා අඩු ගැටළු ඇත.

ඉඟි තිබේද? සමහර විට එය සේවාදායකයාගේ පැත්තක් මිස සේවාදායක පාර්ශවයක් නොවේ.


මගේ නඩුවේ යතුර උත්පාදනය කිරීමේදී වැරැද්දක් තිබේ. මම යතුරක් ජනනය කළ අතර මූලාශ්‍ර ලිපිනය සඳහන් කිරීමට මට නොහැකි වූ අතර යතුර අවසානයේ පරිශීලක නාමය භාවිතා කළෙමි.
වාර්තාකරු

Answers:


426

මෙය සාමාන්‍යයෙන් සිදුවන්නේ නොදැනුවත්වම සේවාදායකයට බහු ssh යතුරු ලබා දීමෙනි . යතුරු විශාල ප්‍රමාණයක් ලබා දීමෙන් පසුව සේවාදායකයා ඕනෑම යතුරක් ප්‍රතික්ෂේප කරයි.

වාචික ප්‍රතිදානය ලබා ගැනීම -vසඳහා ඔබේ sshවිධානයට ධජය එක් කිරීමෙන් ඔබට මෙය දැක ගත හැකිය . සේවාදායකයා සම්බන්ධතාවය ප්‍රතික්ෂේප කරන තෙක් යතුරු පොකුරක් පිරිනමන බව ඔබට පෙනෙනු ඇත: "[පරිශීලකයා] සඳහා සත්‍යාපන අසමත්වීම් වැඩිය" . වාචික මාදිලියකින් තොරව, ඔබට පෙනෙනුයේ "සම වයසේ මිතුරන් විසින් සම්බන්ධතාවය යළි පිහිටුවීම" යන අපැහැදිලි පණිවිඩය පමණි .

අදාළ නොවන යතුරු ලබා දීම වලක්වා ගැනීම සඳහා, ~/.ssh/config(ග්‍රාහක යන්ත්‍රයේ) ගොනුවේ සෑම සත්කාරක ප්‍රවේශයකම මෙය පැහැදිලිව සඳහන් කළ යුතුය IdentitiesOnly.

Host www.somehost.com
  IdentityFile ~/.ssh/key_for_somehost_rsa
  IdentitiesOnly yes
  Port 22

ඔබ ssh-agent භාවිතා කරන්නේ නම්, එය ssh-add -Dඅනන්‍යතා ඉවත් කිරීමට ධාවනය කිරීමට උපකාරී වේ .

ඔබ කිසිදු ssh ධාරක වින්‍යාසයක් භාවිතා නොකරන්නේ නම්, ඔබ sshවිධානයෙහි නිවැරදි යතුර පැහැදිලිව සඳහන් කළ යුතුය :

ssh -i some_id_rsa -o 'IdentitiesOnly yes' them@there:/path/

සටහන: 'හැඳුනුම්පත් පමණක් ඔව්' පරාමිතිය උපුටා දැක්වීම් අතර තිබිය යුතුය.

හෝ

ssh -i some_id_rsa -o IdentitiesOnly=yes them@there:/path/

5
මෙම රේඛාව තැබිය යුත්තේ කොතැනින්ද යන්න මට පැහැදිලි නැත. මම පිවිසීමට උත්සාහ කරන සේවාදායකයේ, .ssh / config සතුව ඇත්තේ වෙනත් සේවාදායකයන් සඳහා තොරතුරු පමණි. ඔබ මෙය ssh කිරීමට උත්සාහ කරන පරිගණකයේ .ssh / config ගොනුව තුළට යා යුතු යැයි ඔබ අදහස් කරනවාද? එසේ නම්, මෙය අපැහැදිලි වන්නේ ඔබේ පිළිතුර "ඔබ නැවත පුරනය වූ පසු ..."
ඩේවිඩ් ලෙබයර්

2
මට විකල්පය ද්විත්ව උපුටා දැක්වීම් වලට දැමිය යුතුයි, මේ ආකාරයට:ssh -i some_id_rsa -o "IdentitiesOnly yes" them@there:/path/
knb

1
PAGENT (Putty Agent) ධාවනය කරන වින්ඩෝස් පරිශීලකයින්, ඔබ සතුව ඇත්තේ යතුරු පමණක් බව තහවුරු කර ගන්න. මගේ පුද්ගලික යතුරු අහම්බෙන් පූරණය කිරීමෙන් පසුව මම මෙම ගැටලුවට මුහුණ දුන්නා.
ක්‍රිස් රාස්කෝ

2
ප්රශ්නය ඉතිරිව ඇත: ධාරකයා සඳහා වන රීතියට පැහැදිලි සැකසුමක් sshතිබියදීත් "බහු යතුරු" (යටින් ඇති කිසිවක් ~/.ssh) ඉදිරිපත් කරන්නේ ඇයි? IdentityFile /path/to/private_key_fileමෙම නිශ්චිතව දක්වා ඇති යතුර (අවම වශයෙන්) පළමුව ඉදිරිපත් කළ යුතු නොවේද? මෙය Opensh සේවාදායකයේ දෝෂයක් / වැරදිසහගත ක්‍රියාවක් නොවේද?
arielf

2
නමුත් එය IdentityFileවිකල්පය සමඟ දක්වා ඇති යතුර භාවිතා කළ යුතු නොවේද ? උදාහරණයක් ලෙස, IdentitiesOnlyවිකල්පයක් නොමැතිව , githubමම උත්සාහ කරන විට එය මගේ යතුර භාවිතා කිරීමට උත්සාහ කරයි ssh gitlab.com. එය තේරුමක් නැත.
ඉලියන් ඔනොෆ්රි

197

මෙය කිරීමට පහසු ක්‍රමයක් මම සොයා ගතිමි (මුරපද සත්‍යාපනය භාවිතා කරන්නේ නම්):

ssh -o PubkeyAuthentication=no username@hostname.com

මෙය යතුරු නොවන සත්‍යාපනය සඳහා බල කරයි. මට වහාම ලොග් වීමට හැකි විය.

යොමුව


3
+1, මම ඔබට තවත් ලබා දිය හැකි යැයි සිතමි. පොදු යතුරක් නොමැතිව මා ඇතුළු කරන එකම උපාංගය රාස්ප්බෙරි පයි. ලැබෙමින්
තිබුනේ

1
එය භාවිතා කිරීමට rsync:rsync -av -e 'ssh -o PubkeyAuthentication=no' 'user@host.com:~/remote_file' 'local_file'
සීරෝ සැන්ටිලි 冠状 病毒 审查 六四

2
මුරපද සත්‍යාපනය සඳහා එය ඉක්මන් කිරීමට ඔබට අන්වර්ථයක් නිර්මාණය කළ හැකිය. alias sshp = 'ssh -o PubkeyAuthentication = නැත'
dhempler

27

මට මෙම දෝෂය ද ඇති අතර එය සිදුවෙමින් පවතින බව මට පෙනී ගියේය b / c සේවාදායකය උත්සාහයන් 6 ක් දක්වා පිළිගැනීමට සකසා ඇත:

/etc/ssh/sshd_config
...
...
#MaxAuthTries 6

IdentitiesOnly yesඔබගේ ~/.ssh/configගොනුවේ සැකසීමට අමතරව ඔබට තවත් විකල්ප කිහිපයක් තිබේ.

  1. වැඩි MaxAuthTries(මෙම ssh සේවාදායකයේ)
  2. ඔබේ ~/.ssh/නාමාවලියෙහි ඇති යතුරු යුගල කිහිපයක් මකා දමා ධාවනය කරන්නssh-add -D
  3. ඔබගේ ~/.ssh/configගොනුවේ දී ඇති ධාරකයකට යතුරක් පැහැදිලිව සම්බන්ධ කරන්න

එසේ වැනි:

host foo
hostname foo.example.com
IdentityFile /home/YOU/.ssh/foo
  1. ලබා දී ඇති සම්බන්ධතා ප්‍රයත්නයකදී තවත් යතුරු භාර ගන්නා බැවින් එය ඔබගේ ssh සේවාදායකය තරමක් දුර්වල කර ඇති හෙයින් එය ඉදිරියට යාමට හොඳ ක්‍රමයක් නොවේ. තිරිසන් බල ප්‍රහාරක දෛශික ගැන සිතන්න.

  2. ඔබට අවශ්‍ය නැති යතුරු ස්ථිරවම මකා දැමිය හැකි යැයි උපකල්පනය කිරීමට හොඳ ක්‍රමයකි.

  3. අනන්‍යතා සැකසීමේ ප්‍රවේශය මෙම ගැටළුව සමඟ කටයුතු කිරීමට වඩාත් සුදුසු ක්‍රම වේ.


ඔබේ අවසන් රේඛාව ඔබ /home/YOU/.ssh/foo identifyfile ඇති නමුත් එය (ක ඊ නො) identityfile විය යුතු
Nin

8

මම මෙය ~ / .ssh / config වෙත එකතු කළෙමි:

Host *
IdentitiesOnly yes

එය පෙරනිමියෙන් IdentitiesOnly = ඔව් විකල්පය සක්‍රීය කරයි. ඔබට පුද්ගලික යතුර සමඟ සම්බන්ධ වීමට අවශ්‍ය නම්, ඔබ එය -i විකල්පය සමඟ සඳහන් කළ යුතුය


6

ඔබට පහත SSH දෝෂය ලැබුනේ නම්:

$ Received disconnect from host: 2: Too many authentication failures for root

ඔබේ .ssh නාමාවලියෙහි DSA / RSA හැඳුනුම් ලිපිගොනු පහක් හෝ වැඩි ගණනක් ගබඩා කර ඇත්නම් සහ විධාන රේඛාවේ '-i' විකල්පය සඳහන් කර නොමැති නම් මෙය සිදුවිය හැකිය.

Ssh සේවාදායකයා පළමුව එක් එක් අනන්‍යතාවය (පුද්ගලික යතුර) සහ මුරපද සත්‍යාපනය සඳහා ඊළඟ විමසුම භාවිතා කර ප්‍රවේශ වීමට උත්සාහ කරයි. කෙසේ වෙතත්, නරක පිවිසුම් උත්සාහයන් පහකට පසුව sshd සම්බන්ධතාවය අතහැර දමයි (නැවත පෙරනිමිය වෙනස් විය හැකිය).

ඔබේ .ssh නාමාවලියෙහි පුද්ගලික යතුරු ගණනාවක් තිබේ නම්, ඔබට '-o' විකල්ප තර්කය භාවිතා කර විධාන රේඛාවේ "පොදු යතුරු සත්‍යාපනය" අක්‍රිය කළ හැකිය.

උදාහරණයක් වශයෙන්:

$ ssh -o PubkeyAuthentication=no root@host

මට සිදුවෙමින් තිබුණේ මෙයයි! පැහැදිලි කිරීම සඳහා බොහෝම ස්තූතියි;)
එල් නින්ජා ට්‍රෙපඩෝර්

6

ඔබට මුරපදයක් තිබේ නම් සහ පුරනය වීමට මුරපදය භාවිතා කිරීමට අවශ්‍ය නම්, ඔබ එය කරන්නේ කෙසේද යන්න මෙන්න.

මුරපද සත්‍යාපනය පමණක් භාවිතා කිරීමට සහ පොදු යතුර භාවිතා නොකිරීමට සහ තරමක් නොමඟ යවන "යතුරුපුවරු-අන්තර්ක්‍රියාකාරී" (මුරපදය ඇතුළුව සුපර්සෙට් එකක්) භාවිතා නොකරන්න, ඔබට මෙය විධාන රේඛාවෙන් කළ හැකිය:

ssh -o PreferredAuthentications=password user@example.com

3

ඩේවිඩ් කියමින්, මෙය IdentitiesOnly yes ඔබගේ .ssh / config වෙත එක් කරන්න , එය ඒ දේම කරයිssh -o PubkeyAuthentication=no.

ඔබ පුරනය වූ පසු ඉවත් කරන්න .ssh/authorized_keys. දැන්, දේශීය යන්ත්‍රය වෙත ගොස් පහත සඳහන් දේ ටයිප් කරන්න

cat ~/.ssh/id_rsa.pub | ssh -o PubkeyAuthentication=no user@IP_ADDR 'cat >> .ssh/authorized_keys'. මෙය පොදු යතුර සමඟ ඔබේ ssh නැවත සක්‍රීය කළ යුතුය


2

මෙය පැරණි නූලක් බව මම දනිමි, නමුත් මට මෙහි ඇතුළත් කිරීමට අවශ්‍ය වූයේ මම එකම දෝෂ පණිවිඩයක් වෙතට දිව ගිය නමුත් එය සිදු වූයේ .ssh ෆෝල්ඩරයේ හිමිකරු යතුර භාවිතා කරන පරිශීලකයාට වඩා root වීම නිසාය. පහත දැක්වෙන විධානයන් ක්‍රියාත්මක කිරීමෙන් මම ගැටළුව නිවැරදි කළෙමි:

sudo chown -R user:user /home/user/.ssh

.Sh ෆෝල්ඩරයේ අවසර නිවැරදි බව මම සහතික කර ගතිමි:

sudo chmod 700 /home/user/.ssh

.Sh නාමාවලිය තුළ ඇති ලිපිගොනු 600 ක අවසරය තිබිය යුතුය:

sudo chmod 600 /home/user/.ssh/authorized_keys

අවවාදයකින් තොරව මෙය භාවිතා කිරීමට මම ප්‍රවේශම් වන්නෙමි. SSH යතුරු අවසර සාමාන්‍යයෙන් සමහර යතුරු සඳහා 400 කට සීමා වේ, විශේෂයෙන් AWS. ඒවා ඉහළින් සැකසීමට උත්සාහ කිරීමෙන් යතුර පිළිගැනීමට නොහැකි වනු ඇති අතර එමඟින් ඔබේ AWS ගිණුමෙන් ඔබව අගුළු දැමිය හැකිය.
මයිකල් රයන් සොයිලෝ

1

මගේ නඩුවේදී, ගැටළුව වූයේ නාමාවලි අවසරයන් ය. මෙය මට එය සවි කර ඇත:

$ chmod 750 ~;chmod 700 ~/.ssh

0

මගේ නඩුවේදී, එය සිදු වූයේ මා "උබුන්ටු" පරිශීලක නාමය භාවිතා කළ නිසාය, නමුත් මෙම අවස්ථාවේදී පරිශීලක නාමය "ec2-user"

"ජෝන් ටී" යෝජනා කළ දේ කළ පසු, මට මෙම දෝෂය ඇතිවිය:

අවසරය ප්‍රතික්ෂේප කරන ලදි (publickey).

මෙම පිළිතුරෙන් මම විසඳුම සොයා ගතිමි (එනම් පරිශීලක නාමය "ec2-user" ලෙස වෙනස් කිරීම): /programming/1454629/aws-ssh-access-permission-denied-publickey-issue


0

මගේ පොදු යතුර මා සතුව .ssh/authorized_keys2තිබුනද සේවාදායකය වින්‍යාසගත කර ඇත්තේ කියවීමට පමණි .ssh/authorized_keys:

# The default is to check both .ssh/authorized_keys and .ssh/authorized_keys2
# but this is overridden so installations will only check .ssh/authorized_keys
AuthorizedKeysFile .ssh/authorized_keys

මගේ ගොනුව වෙත ගෙන ගිය පසු .ssh/authorized_keys, මට මගේ යතුර සමඟ සාර්ථකව පිවිසිය හැකිය.


0

සත්‍යාපන අසමත්වීම් වැඩිය

දුරස්ථ SSH සේවාදායකයේ අවසර ලත් සීමාවන් ලබා දී ඇති අසාර්ථක සත්‍යාපන උත්සාහයන් බොහෝමයක් තිබීම මෙම පණිවිඩයට හේතු වේ. මෙයින් අදහස් කරන්නේ ඔබ SSH නියෝජිතයා තුළ බොහෝ අනන්‍යතා එකතු කර ඇති බවයි.

මෙන්න යෝජනා කිහිපයක්:

  • -vඑය එසේ දැයි බැලීමට එකතු කරන්න (ඔබ බොහෝ අනන්‍යතා භාවිතා කරයි).
  • විසින් එකතු කරන ලද අනන්‍යතා ලැයිස්තුගත කරන්න ssh-add -l.
  • අසමත් වූ අනන්‍යතාවය නියෝජිතයා වෙතින් ඉවත් කරන්න : ssh-add -d.
  • ඔබට සියලු අනන්‍යතා මකා දමා ssh-add -Dඅදාළ එකක් පමණක් නැවත එකතු කළ හැකිය.
  • ඔබ SSH සේවාදායකයට ප්‍රවේශ වන්නේ නම්, MaxAuthTriesවිකල්පය පරීක්ෂා කරන්න (බලන්න :) man sshd_config.

    ආශ්‍රිත තනතුර: 'මැක්ස් ඕත්ට්‍රීස්' සීමාව සඳහා සම්බන්ධතාවය sshd_configකුමක්ද?

  • මේ කිසිවක් උදව් නොකළේ නම්, ඔබ නිවැරදි අක්තපත්‍ර හෝ ගොනුව භාවිතා කරන්නේද යන්න තහවුරු කරගන්න.


0

මෙය මට විනෝදයක් විය. දුරස්ථව පිවිසීමට මා භාවිතා කළ යතුරුපුවරුවකට වඩා වෙනස් දේශීයකරණ ප්‍රකාරයක සිටියදී මම මගේ මුරපදය දේශීයව වෙනස් කළෙමි. මෙය මගේ මුරපදය මා සිතූ දෙයට වඩා effectively ලදායී ලෙස වෙනස් කළේ මගේ විශේෂ චරිතයක් යතුරුපුවරුව පැවසූ දෙයට වඩා වෙනස් නිසා විය හැකිය.


-1

නිවැරදි පරිශීලක නාමය සහ මුරපදය ඇතුළත් නොකළ විට මෙම පණිවිඩය දිස්විය හැකිය.

පරිශීලකයා ලැයිස්තුගත කර ඇත්දැයි පළමුව පරීක්ෂා කරන්න:

vim /etc/passwd
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.