Capistrano භාවිතා කර යම් කේතයක් යෙදවීමට උත්සාහ කරන විට මටද මෙම ගැටළුව තිබුණි . හරිම කලකිරීමක්. මෙම ගැටළුව සමඟ කටයුතු කිරීමට මා දන්නා ක්රම දෙකක් මෙන්න.
ක්රමය 1: දන්නා සියලු යතුරු SSH නියෝජිතයාට එක් කරන්න .
එබැවින් මා සොයාගත් එක් විසඳුමක් නම්, ඔබේ යතුරුපුවරුවේ ගබඩා කර ඇති ඕනෑම මුරපදයක් භාවිතා කරමින් SSH නියෝජිතයාට දන්නා සියලු අනන්යතා එකතු ssh-add
කරන -A
විකල්පය සමඟ ධාවනය කිරීමයි :
ssh-add -A
දැන් මෙය ක්රියාත්මක වන නමුත් එය නැවත පණගැන්වීම් හරහා නොපවතිනු ඇත. එබැවින් ඔබට නැවත කිසිදිනක මේ ගැන කරදර වීමට අවශ්ය නැතිනම්, ඔබේ පරිශීලකයාගේ ~/.bash_profile
ගොනුව මේ ආකාරයට විවෘත කරන්න :
nano ~/.bash_profile
මෙම පේළිය පහළට එක් කරන්න:
ssh-add -A 2>/dev/null;
දැන් ඔබ නව පර්යන්ත කවුළුවක් විවෘත කරන විට, සියල්ල හොඳ විය යුතුය!
ක්රමය 2: යතුරුපුවරුවේ ඇති SSH යතුරු පමණක් නියෝජිතයාට එක් කරන්න.
එබැවින් ssh-add -A
විකල්පය බොහෝ මූලික අවස්ථාවන් සඳහා ක්රියා කළ යුතු අතර, මෑතකදී මා හට ගැටළුවක් ඇතිවිය. එහිදී මා සතුව 6-7 වැග්රන්ට් පෙට්ටි (ප්රවේශය සඳහා SSH යතුරු / අනන්යතා භාවිතා කරයි) යන්ත්රයක් මත වඩාත් සුලභ id_rsa.pub
තැනක ඉහළින් සැකසීමක් තිබුණි.
දීර් story කතන්දර කෙටියෙන්, SSH යතුරු / අනන්යතා මත පදනම් වූ බොහෝ අසාර්ථක උත්සාහයන් හේතුවෙන් මම දුරස්ථ සේවාදායකයකින් අගුළු දමා අවසන් වූ බැවින් සේවාදායක ප්රවේශය මුරපදයක් මත පදනම් වූ අතර SSH යතුරු / අනන්යතා SSH යතුරු / අනන්යතා වේ. එබැවින් SSH නියෝජිතයා මගේ සියලුම SSH යතුරු උත්සාහ කර අසාර්ථක වූ අතර මට මුරපද විමසුමට පවා යාමට නොහැකි විය.
ගැටළුව වන්නේ ssh-add -A
ඔබට අවශ්ය සෑම SSH යතුරක් / අනන්යතාවයක්ම අත්තනෝමතික ලෙස නියෝජිතයාට එකතු කිරීමයි. වැග්රන්ට් පෙට්ටි වැනි.
බොහෝ පරීක්ෂණයෙන් පසු මගේ විසඳුම පහත පරිදි වේ.
පළමුවෙන්ම, ඔබට අවශ්ය ප්රමාණයට වඩා SSH යතුරු / අනන්යතා ඔබේ නියෝජිතයාට එකතු කර ඇත්නම් shown පෙන්වා ඇති පරිදි ssh-add -l
ඒවා සියල්ලම ඒජන්තවරයාගෙන් ඉවත් කරන්න:
ssh-add -D
එය සිදු කිරීමෙන් පසු, පසුබිම් ක්රියාවලියක් ලෙස SSH නියෝජිතයා ආරම්භ කරන්න:
eval "$(ssh-agent -s)"
දැන්, එය අමුතු දෙයක් වන අතර ඒ මන්දැයි මට විශ්වාස නැත. සමහර අවස්ථාවලදී ඔබට ~/.ssh/id_rsa.pub
නියෝජිතයාට යතුර / අනන්යතාවය විශේෂයෙන් එකතු කළ හැකිය :
ssh-add ~/.ssh/id_rsa.pub
ඔබගේ මුරපදය ටයිප් කරන්න, පහර දෙන්න Return, ඔබ යාමට හොඳ විය යුතුය.
නමුත් වෙනත් අවස්ථාවලදී මෙය ක්රියාත්මක කිරීම යතුර / අනන්යතාවය එක් කිරීමට ප්රමාණවත් වේ:
ssh-add -K
ඒ සියල්ල ක්රියාත්මක නම්, ටයිප් කරන්න ssh-add -l
, ඔබ ලැයිස්තුගත කර ඇති එක් SSH යතුරක් / අනන්යතාවයක් දැකිය යුතුය.
ඔක්කොම හොඳයිද? දැන් ඔබේ .bash_profile
:
nano ~/.bash_profile
මෙම රේඛාව පහළට එක් කරන්න; -A
ඔබට එය තිබේ නම් අනුවාදය අදහස් දක්වන්න හෝ ඉවත් කරන්න :
ssh-add -K 2>/dev/null;
එමඟින් එක් එක් ආරම්භක / නැවත පණගැන්වීමේදී SSH යතුර / අනන්යතාවය SSH නියෝජිතයාට නැවත පූරණය කිරීමට ඉඩ ලබා දේ.
යාවත්කාලීන කිරීම: ඇපල් දැන් UseKeychain
විවෘත SSH වින්යාස විකල්ප සඳහා විකල්පයක් එක් කර ඇති ssh-add -A
අතර විසඳුමක් ද සලකා බලයි .
මැකෝස් සියෙරා 10.12.2 වන විට, ඇපල් (මම උපකල්පනය කරමි) UseKeychain
SSH වින්යාසයන් සඳහා වින්යාස විකල්පයක් එකතු කර ඇත . මෑන් පිටුව පරීක්ෂා කිරීම (හරහා man ssh_config
) පහත තොරතුරු පෙන්වයි:
UseKeychain
On macOS, specifies whether the system should search for
passphrases in the user's keychain when attempting to use a par-
ticular key. When the passphrase is provided by the user, this
option also specifies whether the passphrase should be stored
into the keychain once it has been verified to be correct. The
argument must be ``yes'' or ``no''. The default is ``no''.
මෙම විවෘත රේඩාර් ටිකට් පතේ විස්තර කර ඇති පරිදිssh-add -A
ඔබේ එකතු කිරීම හෝ එක් පරිශීලකයෙකුගේ විකල්පයන්ගෙන් එකක් ලෙස එකතු කිරීම වැනි විසඳුම ඇපල් වෙත දැකගත හැකිය ..bash_profile
UseKeychain
~/.ssh/config