මගේ SSH පුද්ගලික යතුර යතුරුපුවරුවට ස්ථිරවම එකතු කරන්නේ කෙසේද?


502

එය ssh-add -K ~/.ssh/id_rsaඔබගේ යතුර පූරණය වන බව පෙනේ, නමුත් ඔබ නැවත ආරම්භ කරන සෑම අවස්ථාවකම මුරපදය ඉල්ලනු ඇත.

පිවිසුම් අතර යතුරු මුරපදය නැවත ඇතුළත් කිරීමට මට අවශ්‍ය නොවන විසඳුමක් මම සොයමි.


1
මුරපද විමසුමක් ඔබ වෙනුවෙන් පැමිණෙන විට ඔබට තව ටිකක් කියන්න පුළුවන්ද? මා අසන්නේ දුරස්ථ සේවාදායකයක් සඳහා ssh- යතුරක් ඇති නිසා, එය මගේ මැක් පිවිසුම් මුරපදය හෝ වෙනත් කිසිවක් නොවන බව මම සහතික කරමි, තවද මට වසර ගණනාවක් තිස්සේ ssh- යතුර සඳහා මුරපදය ඇතුළත් කිරීමට අවශ්‍ය නොවීය . මට ටර්මිනලයක් විවෘත කර "ssh <server>" ටයිප් කරන්න, මම එහි සිටිමි. මම හිතන්නේ මම මුලින්ම මෙම යතුර OSX 10.5 යටතේ සකසා ඇත. id_dsa, නමුත් එය වැදගත් යැයි මම නොසිතමි.
මයිකල් එච්.

මගේ id_rsaයතුරේ මුරපදයක් ඇත.
සෝරින්

මෙතරම් කලකට පෙර මා විසින් විසඳන ලද ගැටලුව ද මා සතුව ඇති දේ මට හරියටම මතක නැත. නමුත් මම හිතන්නේ අදහස දුවන්නේ නැහැssh-add , නමුත් sshකෙලින්ම දුවන්න. යතුර සඳහා වන වාක්‍ය ඛණ්ඩය ලෙසත්, යතුරුපුවරුවේ එය ගබඩා කිරීමට ඔබට ඉඩ සලසන පිරික්සුම් කොටුවක් සමඟත් කවුළුවක් දිස්විය යුතුය.
හැරල්ඩ් හැන්ච්-ඔල්සන්

1
Or සෝරින් - මගේත් එහෙමයි! මට බොහෝ කලකට පෙර එක් වරක් එයට ඇතුළු වීමට සිදු වූ අතර මැක් එය එතැන් සිට මා වෙනුවෙන් ඉතිරි කර ඇත. හැරල්ඩ්ගේ උපදෙස් උපකාරි වේ යැයි බලාපොරොත්තු වෙමු.
මයිකල් එච්.

ඔබ අදහස් කරන්නේ යතුරුපුවරු මුරපදය (එනම් ඔබේ පිවිසුම් මුරපදය) හෝ යතුරේ මුරපදයද? එය දෙවැන්න නම්, ඔබේ මුරපද අනිවාර්යයෙන්ම Keychain හි ගබඩා කර තිබේද? යතුරුපුවරු ප්‍රවේශය විවෘත කර පිවිසුම් යතුරු පුවරුවේ එය සෙවීමෙන් ඔබට මෙය පරීක්ෂා කළ හැකිය.
මැතිව් හෝල්

Answers:


794

OSX හි, ස්වදේශීය ssh-addසේවාදායකයාට OSX යතුරුපුවරුවේ පුද්ගලික යතුරේ මුරපදය සුරැකීමට විශේෂ තර්කයක් ඇත, එයින් අදහස් වන්නේ ඔබේ සාමාන්‍ය පිවිසුම ssh සමඟ භාවිතා කිරීම සඳහා එය අගුළු හරිනු ඇති බවයි. OSX සියෙරා සහ පසුව, ඔබ සැමවිටම යතුරුපුවරුව භාවිතා කිරීම සඳහා SSH වින්‍යාස කිරීමට අවශ්‍ය වේ (පහත පියවර 2 බලන්න).

විකල්පයක් ලෙස ඔබට මුරපදයක් නොමැතිව යතුරක් භාවිතා කළ හැකිය, නමුත් ඔබ මෙම කාර්ය ප්‍රවාහය සමඟ නිසැකවම පිළිගත හැකි ආරක්ෂාවට කැමති නම්.

පියවර 1 - යතුර යතුරු පුවරුවේ ගබඩා කරන්න

මෙය එක් වරක් කරන්න:

ssh-add -K ~/.ssh/[your-private-key]

ඔබගේ යතුරු මුරපදය ඇතුළත් කරන්න, එවිට ඔබ නැවත එය ඉල්ලන්නේ නැත.

(ඔබ OSX හි පූර්ව සියෙරා අනුවාදයක සිටී නම්, ඔබ අවසන් කර ඇත, පියවර 2 අවශ්‍ය නොවේ.)

පියවර 2 - සෑම විටම යතුරු පුවරුව භාවිතා කිරීමට SSH වින්‍යාස කරන්න

OSX සියෙරා පිවිසුම් අතර ඔබේ යතුරු දිගටම පවත්වා ගෙන යාමේ පහසු හැසිරීම ඉවත් කළ බව පෙනේ, සහ ssh වෙත යාවත්කාලීන කිරීම පෙරනිමියෙන් යතුරුපුවරුව භාවිතා නොකරයි. මේ හේතුව නිසා, ඔබ උත්ශ්‍රේණිගත කිරීමෙන් පසුව සහ නැවත ආරම්භ කිරීමෙන් පසුව යතුරක් සඳහා මුරපදය ඇතුළත් කිරීමට ඔබෙන් විමසනු ඇත.

විසඳුම තරමක් සරල වන අතර මෙම ගිතුබ් නූල් විවරණයේ දක්වා ඇත . මෙන්න ඔබ එය සකසන ආකාරය:

  1. යතුරු පුවරුවේ යතුර ගබඩා කිරීම සඳහා ඔබ ඉහත පියවර 1 සම්පූර්ණ කර ඇති බවට සහතික වන්න.

  2. ඔබ දැනටමත් නොමැති නම්, ~/.ssh/configගොනුවක් සාදන්න . වෙනත් වචන වලින් කිවහොත්, .sshඔබේ නිවසේ ඩිරෙක්ටරියේ, ගොනුවක් සාදන්න config.

  3. එම .ssh/configගොනුවේ, පහත දැක්වෙන රේඛා එක් කරන්න:

    Host *
      UseKeychain yes
      AddKeysToAgent yes
      IdentityFile ~/.ssh/id_rsa
    

    ~/.ssh/id_rsaඔබගේ පුද්ගලික යතුරේ සත්‍ය ගොනු නාමයට වෙනස් කරන්න . ඔබේ ~.sshඩිරෙක්ටරියේ වෙනත් පුද්ගලික යතුරු තිබේ නම් , ඒ IdentityFileසෑම එකක් සඳහාම පේළියක් එක් කරන්න. උදාහරණයක් ලෙස, මට IdentityFile ~/.ssh/id_ed255192 වන පුද්ගලික යතුරක් කියවන එක් අතිරේක පේළියක් තිබේ .

    මෙම UseKeychain yesප්රධාන මුරවදනක් සතුව සඳහා ඔබගේ OSX එකක් යතුරු කැරැල්ලේ සොයා බැලීම සඳහා SSH කියයි වන ප්රධාන කොටසක් වේ.

  4. ඒක තමයි! ඊළඟ වතාවේ ඔබ කිසියම් ssh සම්බන්ධතාවයක් පූරණය කරන විට, එය ඔබ විසින් නියම කරන ලද පුද්ගලික යතුරු උත්සාහ කරනු ඇති අතර එය OSX යතුරුපුවරුවේ ඔවුන්ගේ මුරපදය සොයනු ඇත. මුරපද ටයිප් කිරීම අවශ්‍ය නොවේ.


2
මෙය මට බොහෝ දුරට සාර්ථක විය. මගේ "පිවිසුම්" යතුරු පුවරුවේ දැනටමත් ස්වයංක්‍රීය අගුළු අක්‍රීය කර ඇති බැවින් මැතිව් සනබ්‍රියාගේ පිළිතුර අදාළ නොවීය. භාවිතා කරමින් ssh-add -K ...මුරපදය සඳහා, නමුත් වත්මන් සැසිය සඳහා තහවරු කිරීමකින් තොරව මෙම ssh නියෝජිතයාට, යතුරු වැඩිදුරටත් සඳහන් කළේය. නැවත පණගැන්වීමෙන් පසුව, මට විධානය නැවත නිකුත් කිරීමට සිදු විය.
පෝල්ස්බෝ

5
Ou පෝල්ස්බෝ සහ b ඒබ්‍රම් - මගේ යාවත්කාලීනය බලන්න, සියෙරා ස්වයංක්‍රීය හැසිරීම වෙනස් කළ අතර දැන් ssh-add -Aඔබගේ සුරකින ලද යතුරු පුවරුව පූරණය කිරීම සඳහා ඔබ අතින් ධාවනය කළ යුතුය. ඉහත සඳහන් කළ හැකි විසඳුම් කිහිපයක්.
trisweb

3
ඉඟියට ස්තූතියි. .ssh/configගොනුව වෙනස් කිරීම සඳහා ජොෂ්බුචියාගේ විසඳුම යහපත් බව පෙනේ! බලන්න github.com/lionheart/openradar-mirror/issues/...
Poulsbo

2
or සෝරින් යාවත්කාලීන කළ පිළිතුර බලන්න, ඔබට කිසියම් ප්‍රතිපෝෂණයක් තිබේ නම් මට දන්වන්න. ස්තූතියි!
trisweb

12
නියමයි! මගේ නඩුවේදී, යතුරු යතුරු පුවරුවට යතුරු එක් කිරීමට සහ එයට මුරපදය ලියාපදිංචි Aකිරීමට ධජයට අමතරව ධජය භාවිතා කිරීමට මට අවශ්‍ය විය K( ssh-add -AK ~/.ssh/[your-private-key]). ස්තූතියි!
youssman

25

මට ඒ හා සමාන ගැටළුවක් ඇති විය, සෑම විටම මගේ පබ්-යතුරු මුරපදය සඳහා මගෙන් විමසනු ලැබීය . ඉහත "trisweb" පරිශීලකයාගේ යෝජනාවකට අනුව, මම මෙම විකල්පයන් සක්‍රීය කළේ ~/.ssh/config:

Host *
  UseKeychain yes
  AddKeysToAgent yes
  IdentityFile ~/.ssh/id_rsa

නමුත් එය තවමත් මට ssh භාවිතා කිරීමට අවශ්‍ය සෑම අවස්ථාවකම පෙලඹුණි. අවසානයේදී මම සක්‍රිය කර ssh -vමෙම දෝශ නිරාකරණ රේඛාව සොයා ගතිමි :

debug1: key_load_private: incorrect passphrase supplied to decrypt private key

මම පසුව මගේ යතුරු පුවරුව "Keychain Access.app" හි විවෘත කර, "SSH: /Users/username/.ssh/id_rsa" නම් යතුර සොයාගෙන එය විවෘත කළෙමි. මුරපදය හෙළිදරව් කිරීම සඳහා මම "මුරපදය පෙන්වන්න" ක්ලික් කළ අතර ඇත්ත වශයෙන්ම යතුරුපුවරුවේ මුරපදය පැරණි මුරපදයක් බව මට පෙනී ගියේය. මම යතුරුපුවරු ප්‍රවේශයේ මුරපදය යාවත්කාලීන කළ අතර දැන් මුරපද රහිතව ක්‍රියා කරයි.

මෙම වාක්‍ය ඛණ්ඩය සමඟ මුරපදය යාවත්කාලීන කිරීමට මට හැකියාව තිබුණි:

ssh-keygen -p -f ~/.ssh/id_rsa

මගේ මැක් තුළ මුරපදය “මුරපදය” “iCloud” දාමයේ සුරකින ලදි. මම හිතුවේ එය “ලොග් ඉන්” දාමයේ ඇති බවයි.
ෆ්‍රැන්ක්ලින් යූ

12

ඉහත සියල්ල ක්‍රියාත්මක නොවූ සෑම තැනකටම , මගේ ගැටලුව වී ඇත්තේ මම UseKeychain yesසහ AddKeysToAgent yesසියලු ssh යතුරු පැතිකඩ / කෙටිමං අනුපිටපත් කර ඇති බැවිනි . ~/.ssh/configමේවා එක් වරක් පමණක් ප්‍රකාශ කිරීම සඳහා මම මගේ ගොනුව යාවත්කාලීන කළ අතර ඒවා සියල්ලම ආරම්භයේදී මුරපද ඉල්ලා නොසිට ප්‍රවේශවීමේදී පටවනු ලැබේ, උදා:

Host *
  UseKeychain yes
  AddKeysToAgent yes
  IdentityFile ~/.ssh/foo
  IdentityFile ~/.ssh/bar

Host foo
  HostName foo.com
  User fooUser
  IdentityFile ~/.ssh/foo

Host bar
  HostName bar.com
  User barUser
  IdentityFile ~/.ssh/bar

Host *නිශ්චිත සත්කාරක නීති රීති වලට පසුව වීමට මම නිර්දේශ කරමි . විස්තර man ssh_configසඳහා බලන්න.
ෆ්‍රැන්ක්ලින් යූ

11

එසේම, මැකෝස් සියෙරා සහ හයිසෙයිරා හි (පෙර සංස්කරණ ගැන නොදන්නා), ධාවනය ssh-add -Aකිරීමෙන් නියෝජිතයාට යතුරුපුවරුව යතුරුපුවරුව යතුරුපුවරුවෙහි යතුරු පැටවීමට හැකි වනු ඇත ... එබැවින් ඉතා පහසුය


-3

මෙහි පොදු යතුර එක් කරන්න:

.ssh/known_hosts

පොදු යතුර සාමාන්‍යයෙන් ක්‍රියාත්මක වන්නේ:

/home/user/.ssh/id_rsa.pub

උපකාරවත් වන බලාපොරොත්තුව


8
මම හිතන්නේauthorized_keys
රෙනේ ලාර්සන්

කෙසේ වෙතත්, ඔබට එක් යතුරකට වඩා තිබේ නම් මෙය ක්‍රියා නොකරයි!
සෝරින්
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.