ධාරකයකු හා සම්බන්ධ වන විට මගේ මුරපදය ටයිප් කිරීමට අවශ්ය නොවන පරිදි මම SSH සකස් කරන්නේ කෙසේද?
~/.ssh/config
දැන් අවශ්ය වන්නේ මගේ අවශ්යතාවයට වෙනසක් කිරීමට අවශ්ය PubkeyAcceptedKeyTypes ssh-rsa*,ssh-dss*
ධාරකයකු හා සම්බන්ධ වන විට මගේ මුරපදය ටයිප් කිරීමට අවශ්ය නොවන පරිදි මම SSH සකස් කරන්නේ කෙසේද?
~/.ssh/config
දැන් අවශ්ය වන්නේ මගේ අවශ්යතාවයට වෙනසක් කිරීමට අවශ්ය PubkeyAcceptedKeyTypes ssh-rsa*,ssh-dss*
Answers:
ඔබ GNOME භාවිතා කරන්නේ නම්, මුහුදු අශ්ව යෙදුමට ("මුරපද සහ සංකේතාංකන යතුරු") ඔබට එය කළ හැකිය: ගොනුව -> නව -> ආරක්ෂිත ෂෙල් යතුර .
ඔබ ටර්මිනලයට කැමති නම්, යතුරු පුවරුවක් ජනනය කිරීමට දුවන්න. වලංගු යතුරු පුවරු වර්ග:ssh-keygen -t <type>
වැඩසටහන මඟින් මුරපදයක් සහ නව යතුර සුරැකිය යුතු ස්ථානයක් ඔබෙන් අසනු ඇත . යෝජිත පෙරනිමි මාර්ගය භාවිතා කිරීම රෙකමදාරු කරනු ලැබේ, මන්ද අනෙක් සියලුම මෙවලම් එහි සොයනු ඇත.
නැවතත්, මුහුදු අශ්වයාට බොහෝ විට ඔබ වෙනුවෙන් එය කළ හැකිය - මගේ පුද්ගලික යතුරු තුළ , ඔබේ SSH යතුර මත දකුණු-ක්ලික් කර ආරක්ෂිත කවචය සඳහා වින්යාස කිරීමේ යතුර තෝරන්න .
නැත්නම්, ssh-copy-id -i ~/.ssh/id_rsa.pub remote-user@remote-host
පර්යන්තයේ.
නැතහොත්, පියවරෙන් පියවර සම්පූර්ණයෙන්ම අතින්:
.ssh
දුරස්ථ ධාරකයේ දුරස්ථ පරිශීලකයාගේ නිවාස නාමාවලියෙහි නම් කර ඇති නාමාවලියක් සාදන්න (එය දැනටමත් නොපවතී නම්) .authorized_keys
(එය දැනටමත් නොපවතී නම්).umask
වෙනදාට වඩා ලිබරල් නම්, ගොනුව කණ්ඩායම් ලිවිය නොහැකි ලෙස සකසන්න : chmod go-w ~/.ssh ~/.ssh/authorized_keys
.~/.ssh/id_rsa.pub
) අන්තර්ගතය දුරස්ථ ~/.ssh/authorized_keys
ගොනුවට පිටපත් කරන්න (එකතු කරන්න) .ඔබ ඔබේ පුද්ගලික යතුර ssh නියෝජිතයෙකුට පටවන්නේ නම් , එය විකේතනය කළ යතුර මතකයේ රැඳෙනු ඇත. අපි සේවාදායකයකට ඇතුළු වන සෑම විටම මුරපදය නැවත ඇතුළත් කිරීමෙන් වළක්වා ගැනීමට අපට අවශ්යය.
පළමුව, නියෝජිතයා ආරම්භ කළ යුතුය නැතහොත් දියත් කළ සන්නිවේදන සොකට්ටුවක මාර්ගය විචල්යයකට පටවනු ලැබේ. ටර්මිනලය මත ssh-agent ධාවනය කිරීමෙන් නියෝජිත විචල්යයන් පැවරීම සහ සැකසීම සඳහා විධාන ජනනය වේ. මෙම විධානයන් වෙනත් පර්යන්තයක භාවිතා කිරීම සඳහා ගොනුවක සුරැකිය හැක. විකල්පයක් ලෙස, කෙනෙකුට මෙම විධානයන් ක්රියාත්මක කළ හැකි අතර එකම නියෝජිතයා වෙනත් පර්යන්තයක නැවත භාවිතා කිරීම අමතක කළ හැකිය. උදා: eval $(ssh-agent)
.
යතුර පූරණය කිරීම සරල කාරණයක් වන ssh-add
අතර එය ක්රියාත්මක කිරීම සහ පාස් වාක්යය ලබා දීම.
ඔබ GNOME භාවිතා කරන්නේ නම්, gnome-keyring-deemon සාමාන්යයෙන් ssh-agent හා සමාන SSH නියෝජිත ක්රියාකාරිත්වය සපයයි, එබැවින් ඔබට කිසිවක් ආරම්භ කිරීමට අවශ්ය නොවිය යුතුය. පිවිසීමේදී යතුර ස්වයංක්රීයව පූරණය වී අගුළු හරිනු ඇත.
සෑම දෙයක්ම නිවැරදිව සිදු කර ඇත්නම්, භාවිතා කිරීම මුරපදයක් ඉල්ලා නොසිටිනු ඇත. යතුර නොව නියෝජිතයා සමඟ යමක් වැරදී ඇත්නම්, යතුර සඳහා මුරපදය ටයිප් කිරීමට ඔබෙන් අසනු ඇත, පරිශීලක ගිණුම සඳහා මුරපදය නොවේ.ssh user@server
සන්නිවේදනය සඳහා ssh භාවිතා කරන ඕනෑම දෙයක් නිවැරදි යතුර නියෝජිතයා තුළ පටවන විට පරිශීලක ගිණුමේ මුරපදය ඇතුළත් නොකර ක්රියා කරයි. වැනි වැඩසටහන් scp මඟින් , සේයාරූ සහ rsync මේ පසුබිම භාවිතය.
id_dsa
කරන්නේ නම් id_rsa
, ඒ වෙනුවට භාවිතා කරන්න , සහ ECDSA සතුව ඇත id_ecdsa
.authorized_keys2
- නමුත් භාවිතයේ 5.0 ට වඩා පැරණි කිසිවක් ඔබට සොයාගත නොහැකි වනු ඇත.lsh
,, ssh.com
සහ වෙනත් (යුනික්ස් සහ නොවේ) SSH සේවාදායකයන් මෙම නිබන්ධනයට ඇතුළත් කර නොමැත.පොදු යතුර දුරස්ථ ධාරකයකට පිටපත් කිරීම:
ssh-copy-id -i ~ / .ssh / id_rsa.pub myaccount @ remotehost # මෙය cat ~ / .ssh / id_rsa.pub | ssh myaccount @ remotehost \ 'mkdir -p ~ / .ssh; cat >> ~ / .ssh / author_keys '# හෝ මේ
ssh-agent> ~ / .ssh / cross-terminal-agent . ~ / .ssh / හරස් පර්යන්ත-නියෝජිත
ssh-copy-id
පොදු යතුර ඉලක්කගත ධාරකයට පිටපත් කර අවසරයන් ස්වයංක්රීයව සකසන විධානයක් ඇත.
PasswordAuthentication no
දී /etc/sshd_config
.
ඔබ සිටින්නේ යුනික්ස්, ඔබ සම්බන්ධ කරන්නේ කුමන යුනික්ස්, ඔබ භාවිතා කරන්නේ කුමන කවචය, ඔබ භාවිතා කරන එස්එස්එච් ප්රභේදය ආදිය නොවේ. එබැවින් මේවායින් සමහරක් සුළු වශයෙන් සකස් කිරීමට අවශ්ය විය හැකිය; මෙය පදනම් වී ඇත්තේ යුනික්ස් ප්රභේද රාශියක් මත භාවිතා වන OpenSSH හි මෑත කාලීන අනුවාදයන් මත ය.
මේ සියල්ල ඔබගේ දේශීය ඩෙස්ක්ටොප් පද්ධතියෙන්.
ssh-keygen
යතුරු නාමය සඳහා පෙරනිමිය භාවිතා කිරීමට වග බලා ගන්න. මම ඔබට යෝජනා කරන්නේ , එසේ නොවන අවස්ථාවන්හීදී එය ආරක්ෂණ ගැටළුව තියෙන්නේ, එම යතුර මත මුරවදනක් කළේය. "-t rsa" නරක අදහසක් නොවනු ඇත, නමුත් බොහෝ විට අවශ්ය නොවේ.
ssh-copy-id username@server
එමඟින් ඔබ පිවිසීමට භාවිතා කරන මුරපදය ඔබෙන් අසනු ඇති අතර ඔබ වෙනුවෙන් බලයලත්_කයිස් දේවල් සකසයි. (එය අතින් කිරීමට අවශ්ය නැත)
එවිට, මෙය:
`ssh-agent`
හෝ සමහර විට මෙය:
exec ssh-agent sh
හෝ:
exec ssh-agent bash
එමඟින් ඔබේ යතුර රඳවා ගත හැකි SSH නියෝජිතයෙකු ආරම්භ වේ. බොහෝ නවීන යුනික්ස් ප්රභේදවල, ඔබ ප්රස්ථාරිකව පුරනය වී ඇත්නම්, මෙය දැනටමත් සිදුවී ඇත. පළමු ප්රභේදය (බැක්ටික්ස් සමඟ) ssh-agent පසුබිමට දමා එය සමඟ කතා කිරීමට පරිසර විචල්යයන් සකසයි. දෙවන දෙදෙනා නියෝජිතයා ඔබ වෙනුවෙන් කවචයක් ධාවනය කර ඇති අතර එමඟින් ඔබ කවචයෙන් පිටවන විට නියෝජිතයා පිටවෙයි.
බොහෝ නවීන යුනික්ස් ප්රභේදයන් දැනටමත් ඔබ වෙනුවෙන් ක්රියාත්මක වන නියෝජිතයෙකු සිටී, විශේෂයෙන් ඔබ ප්රස්ථාරිකව ලොග් වී ඇත්නම්. ඔබට උත්සාහ කළ හැකිය " ps aux | grep ssh-agent
" හෝ " ps -ef | grep ssh-agent
"; යමක් දැනටමත් ක්රියාත්මක වන්නේ නම්, එය භාවිතා කරන්න.
පසුව, අවසානයේ:
ssh-add
එය මුරපදයක් ඉල්ලනු ඇත; ඔබ ssh-keygen ලබා දුන් දෙය දෙන්න. එය ප්රස්ථාරිකව විමසීමට ක්රම ද තිබේ. මෙය ස්වයංක්රීය කිරීම සඳහා ඔබට ssh-agent සහ ssh-add දේවල් ඔබේ පිවිසුම් ස්ක්රිප්ට් තුළට දැමිය හැකිය (ඔබ භාවිතා කරන කවචය අනුව සැකසුම වෙනස් වේ), නමුත් සමහර යුනික්ස් ප්රභේද (උදාහරණයක් ලෙස වර්තමාන උබුන්ටු ලිනක්ස්) ස්වයංක්රීයව බොහෝ දේ කරයි, එබැවින් ඔබ සැබවින්ම කළ යුත්තේ යතුරක් සාදා එය දුරස්ථ ධාරකයේ සැකසීමට ssh-copy-id භාවිතා කිරීමයි.
දැන්, ssh username@server
කිසිදු සත්යාපනයකින් තොරව " " වැඩ කළ යුතුය. තිරයට පිටුපසින්, එය ssh-agent සතුව ඇති යතුරක් භාවිතා කරන අතර ඒ සඳහා මැජික් අත්සන් කිරීමේ උපක්රම කරන්නැයි නියෝජිතයාගෙන් ඉල්ලා සිටී.
වින්ඩෝස් හි පුට්ටි වලද මෙය කළ හැකිය.
ඔබ පොදු / පෞද්ගලික යතුරු යුගලය සකසා ගත් පසු (මෙහි වෙනත් පිළිතුරු පෙන්වන පරිදි) පුට්ටිජෙන් ධාවනය කරන්න. එහිදී, ඔබ දැනටමත් සකසා ඇති පුද්ගලික යතුර පටවන්න, ඉන්පසු එය පුට්ටි පුද්ගලික යතුරක් ලෙස (ppk) සුරකින්න.
PuTTY හි, ඔබට ස්වයංක්රීයව පිවිසීමට අවශ්ය සුරකින ලද සැසිය මත ක්ලික් කර පූරණය ක්ලික් කරන්න. මෙතැන් සිට වම් කවුළුවෙහි සම්බන්ධතාවය -> දත්ත වෙත යන්න, සහ "ස්වයංක්රීය පිවිසුම් පරිශීලක නාමය" තුළ එම දුරස්ථ සේවාදායකය සඳහා පරිශීලක නාමය ටයිප් කරන්න:
ඊට පසු සම්බන්ධතාවය -> SSH -> Auth වෙත ගොස් ඔබ PuttyGen හි සාදන ලද ppk සඳහා ගවේෂණය කරන්න:
ඉන්පසු නැවත සැසි පිටුවට ගොස් ඔබ කලින් පටවා ඇති සැසිය සුරකින්න.
ServerFault හි ඉතා සමාන ප්රශ්නයකින් , ssh-copy-id භාවිතා කිරීම නිර්දේශ කරමි , එය ඔබ වෙනුවෙන් සත්යාපන යතුරු සැකසීමට සම්බන්ධ සියලු පියවරයන් කරයි:
ssh-copy-id යනු දුරස්ථ යන්ත්රයකට ප්රවේශ වීම සඳහා ssh භාවිතා කරන ස්ක්රිප්ට් එකකි (අනුමාන වශයෙන් පිවිසුම් මුරපදයක් භාවිතා කරයි, එබැවින් මුරපද සත්යාපනය සක්රීය කළ යුතුය, ඔබ බහු අනන්යතා දක්ෂ ලෙස භාවිතා නොකළේ නම්)
කණ්ඩායම් ලිවීමේ හැකියාව ඉවත් කිරීම සඳහා දුරස්ථ පරිශීලකයාගේ නිවස වන ~ / .ssh සහ ~ / .ssh / Author_keys වල අවසරයන් ද එය වෙනස් කරයි (දුරස්ථ sshd හි වින්යාසය තුළ StrictModes සකසා ඇත්නම් එය ඔබට පිවිසීමෙන් වලක්වනු ඇත).
-I විකල්පය ලබා දී ඇත්නම්, ඔබේ ssh-agent හි යතුරු තිබේද යන්න නොසලකා හැඳුනුම් ගොනුව (පෙරනිමි ~ / .ssh / identi.pub) භාවිතා කරයි.
ඔබ කළ යුත්තේ මෙයයි:
ssh-copy-id user@host
ඔබගේ මුරපදය එක් වරක් ටයිප් කරන්න, ඔබ යන්න හොඳයි!
Ssh යතුරු සකසන්නේ කෙසේද යන්න පිළිබඳව දැනටමත් පවසා ඇති සියල්ලට අමතරව, මම Keychain ssh-agent කොන්සෝල ෆ්රොන්ටෙන්ඩ් ලෙස නිර්දේශ කරමි, එමඟින් එක් පිවිසුමකට වඩා පද්ධති ක්රියාවලියකට එකක් පමණක් හැසිරවීමට ඔබට ඉඩ සලසයි.
මම දන්නවා දැනටමත් GNOME සහ KDE මෙවලම් එකම දේ කරන නමුත් ඔබ කොන්සෝලය ජුන්කි වර්ගය නම් මෙය විශිෂ්ටයි (බොහෝ යුනික්ස් පද්ධතිවල භාවිතා කළ හැකිය).
එය භාවිතා කිරීම සඳහා, පහත සඳහන් දෑ ඔබේ ~/.bashrc
(වෙනත් ෂෙල් වෙඩි වලට සමාන) එකතු කරන්න:
if type keychain >/dev/null 2>/dev/null; then
keychain --nogui -q <all your SSH/PGP keys>
[ -f ~/.keychain/${HOSTNAME}-sh ] && . ~/.keychain/${HOSTNAME}-sh
[ -f ~/.keychain/${HOSTNAME}-sh-gpg ] && . ~/.keychain/${HOSTNAME}-sh-gpg
fi
http://linuxproblem.org/art_9.html
ඔබේ අරමුණ
ඔබේ කාර්යයන් ස්වයංක්රීය කිරීමට ඔබට ලිනක්ස් සහ ඕපන්එස්එස්එච් භාවිතා කිරීමට අවශ්යය. එබැවින් ඔබට ධාරක A / පරිශීලක සිට ධාරක B / පරිශීලක වෙත ස්වයංක්රීය පිවිසුමක් අවශ්ය වේ b. ඔබට කිසිදු මුරපදයක් ඇතුළත් කිරීමට අවශ්ය නැත, මන්ද ඔබට ෂෙල් ස්ක්රිප්ට් එකකින් ssh ඇමතීමට අවශ්යය.
මම මේ ඉතා කෙටි නිබන්ධනය ලිව්වේ සැබවින්ම සැබවින්ම දිගු නිබන්ධන සමඟ ඇත්තෙන්ම කලකිරීමට පත්වීමෙන් පසුව ඇත්තෙන්ම එය එතරම්ම සරලයි :)
test -f ~/.ssh/id_rsa.pub || ssh-keygen -t rsa #press enter twice if given prompts, then "ssh-add"
scp ~/.ssh/id_rsa.pub destID@destMachine:/tmp/ #type password
ssh destID@destMachine #type password
cat /tmp/id_rsa.pub >> ~/.ssh/authorized_keys
rm /tmp/id_rsa.pub
ssh-keygen
. (එය ඔබ පවසනවා නම් ඔබ කරන්න, වර්ගය සඳහන් කල යුතු වේ ssh-keygen -t rsa
.) එය ගොනුව ස්ථානය සඳහා ඔබ අමතමින් විට, පෙරනිමි ගන්න. එය ඔබෙන් මුරපදයක් ඉල්ලා සිටින විට, මුරපදයක් නොමැති ලෙස එන්ටර් ඔබන්න.cat ~/.ssh/id_rsa.pub
(හෝ ඕනෑම දෙයක් පෙරනිමි ගොනු ස්ථානය ssh-keygen
විය, ඔබ කිරීමට ඇති කියලා නමුත් ඇත්තටම පැරණි ssh
එය වෙනස් විය කිරීම සඳහා ස්ථාපනය); ප්රතිදානය ඔබේ ක්ලිප් පුවරුවට පිටපත් කරන්න.~/.ssh/authorized_keys
( ~/.ssh
නොපවතී නම්, slogin
යම් ස්ථානයකට; නිවැරදි අවසරයකින් එය නිර්මාණය කිරීමට මෙය සරල, පහසුම ක්රමයයි). ඔබගේ id_rsa.pub
ලිපිගොනු පුවරුව ( අනෙක් ධාරකයේ අඩංගු ) මෙම ගොනුවට අලවන්න .ඔබට මේ සියල්ල ලිනක්ස් හි පර්යන්තයේ කිරීමට අවශ්ය නම්:
ධාරකයේ
cd ~ / .ssh /
ssh-keygen -t {rsa | dsa} -b {1024 | 2048 | 4096} -C "ඔබට අවශ්ය නම් අදහස් දැක්වීමේ පෙළක්" -f id_ArbitraryName
{In හි ඇති අයිතම විකල්ප වේ, rsa හෝ dsa භාවිතා කර බිට් ප්රමාණය තෝරන්න (විශාල වඩා ආරක්ෂිතයි)
එවිට ඔබට අවසර ලත්_කයිස් සහ බලයලත්_කයිස් 2 ගොනු වලට අවසර එකතු කළ යුතුය.
cat id_ArbitraryName.pub >> බලයලත්_කයිස්
cat id_AribtraryName.pub >> author_keys2
ඉන්පසු ඔබට ssh කිරීමට අවශ්ය කොටුවට id_AribtraryName ගොනුව බාගන්න. සම්බන්ධක පෙට්ටිය යුනික්ස් මත පදනම් වූවක් නම්, වින්යාස ගොනුවක් අවශ්ය විය හැකිය (පුටින්, ඉහළින් යමෙකු එය ආවරණය කරයි).
සම්බන්ධක පෙට්ටියේ
ඔබගේ වින්යාස ගොනුවේ - vim ~ / .ssh / config
Example.host.com # හෝ ඔබේ පරිගණකයේ නම සත්කාර කරන්න
පරිශීලක පරිශීලක නාමය
හැඳුනුම්පත ~ / .ssh / id_ArbitraryName
වින්යාස ගොනුවට අවසර 600 ක් අවශ්ය වේ. SSh ෆෝල්ඩරයට 700 ක් අවශ්ය වේ.
ඔබ බොහෝ දේ අතහැර දමා ඇති වින්යාස ගැටලුව වෙත දිව ගියහොත් එය උපකාරී වේ යැයි සිතමු.