Slide 1

Slide 1 text

͘͞ΒΠϯλʔωοτגࣜձࣾ (C) Copyright 1996-2019 SAKURA Internet Inc ͘͞ΒΠϯλʔωοτݚڀॴ sshr: ϢʔβʹมߋΛཁٻͤͣʹ γεςϜมԽʹ௥ैՄೳͳSSHϓϩΩγαʔό 2019/12/06 ୈ12ճ Πϯλʔωοτͱӡ༻ٕज़γϯϙδ΢ϜʢIOTS 2019ʣ ɹ௽ా തจɼদຊ ྄հ ͘͞ΒΠϯλʔωοτגࣜձࣾ ͘͞ΒΠϯλʔωοτݚڀॴ

Slide 2

Slide 2 text

2 1. എܠͱ໨త 2. طଘख๏ͱͦͷ՝୊ 3. ఏҊख๏ 4. ੑೳධՁͱߟ࡯ 5. ·ͱΊ ໨࣍

Slide 3

Slide 3 text

1. എܠͱ໨త

Slide 4

Slide 4 text

4 มԽ͕ٻΊΒΕΔITΠϯϑϥ • WebαʔϏεͷΑ͏ͳΠϯλʔωοτΛհͯ͠ར༻͢ΔαʔϏε͕ੈͷதʹීٴ ͠ɼͦͷར༻ऀ਺͕૿େ͍ͯ͠Δɽ • WebαʔϏεΛࢧ͑ΔΠϯϑϥ͸ɼར༻ऀ͔Βͷଟ༷ͳཁٻ΍؀ڥͷมԽ౳ʹ Ԡͯ͡ɼਝ଎͔ͭॊೈʹγεςϜߏ੒Λมߋ͢Δ͜ͱ͕ٻΊΒΕΔɽ ཁٻɾ؀ڥͷมԽ γεςϜଆͷରԠྫ ΞΫηε਺ͷ૿ݮ αʔόͷεέʔϧΞ΢τɾεέʔϧΠϯ ސ٬χʔζͷมԽ αʔϏεͷػೳ֦ுͷͨΊͷ৽نαʔόಋೖ ϋʔυ΢ΣΞো֐ αʔόͷϚΠάϨʔγϣϯ

Slide 5

Slide 5 text

5 ssh username@ SSH Client • αʔϏε΁ͷଟ༷ͳཁٻʹԠͯ͡γεςϜߏ੒Λਝ଎ʹมߋ͍ͯ͘͜͠ͱ͕ٻΊΒ ΕΔঢ়گʹ͓͍ͯ͸ɼγεςϜͷӡ༻؅ཧ΋มߋʹ௥ैͰ͖Δඞཁ͕͋Δɽ • Ұํɼ҆શͳϦϞʔτ઀ଓαʔϏεͱͯ͠αʔό؅ཧʹ޿͘ར༻͞Ε͍ͯΔSSH ͸ɼϢʔβ͕ར༻͢ΔαʔόͷIPΞυϨε·ͨ͸ϗετ໊Λࢦఆͯ͠઀ଓཁٻΛૹΔ ࢓૊ΈͰ͋Δɽ มԽʹ௥ैͰ͖Δӡ༻؅ཧ ͜͜ͰͷϢʔβͱ͸ɼγεςϜ಺ͷಛఆͷαʔό౳ͷϦιʔεΛ࢖༻͢Δऀ ɾγεςϜͷ؅ཧऀɾ։ൃऀ ɾϗεςΟϯάαʔϏεͷར༻ऀɼetc. Ϣʔβ มߋ Server Server αʔόͷIPΞυϨεɾ ϗετ໊ͷมߋͳͲ Ϣʔβ͕มߋޙͷ৘ใ Λ஌Δඞཁ͕͋Δ

Slide 6

Slide 6 text

6 SSHʹ͓͚Δ՝୊ͱຊݚڀͷ໨త • SSHͰ઀ଓ͢ΔαʔόͷIPΞυϨε΍ϗετ໊ʹมߋ͕͋ͬͨ৔߹ɼ؅ཧऀ͸֤ Ϣʔβ΁มߋޙͷ৘ใΛ஌ΒͤΔඞཁ͕͋ΓɼϢʔβ͸ͦͷมߋʹ௥ै͠ͳ͚ Ε͹ͳΒͳ͍ɽ • ্هͷ՝୊Λղܾ͠ɼSSHͷϢʔβ͕γεςϜͷߏ੒΍ͦͷมߋΛҙࣝ͢Δ͜ͱ ͳ͘ɼಁաతʹ໨తͷαʔόʹ઀ଓ͕Մೳͳ࢓૊ΈΛ࣮ݱ͢Δ͜ͱ͕ຊݚڀͷ ໨తͰ͋Δɽ

Slide 7

Slide 7 text

2. طଘख๏ͱͦͷ՝୊

Slide 8

Slide 8 text

8 طଘख๏ͷ෼ྨ γεςϜͷߏ੒มߋʹ௥ै͢Δ໾ׂΛͲ͕͜୲͏͔ʹΑΓҎԼͷ2ͭʹ෼ྨͰ͖Δɽ 1. ΫϥΠΞϯτπʔϧ 2. ϓϩΩγαʔό SSH αʔό ϓϩΩγ αʔό ؅ཧσʔλ SSH ΫϥΠΞϯτ SSH αʔό ؅ཧσʔλ ᶃ ᶄ ᶃ ᶄ ᶅ ྫ: gcloudίϚϯυ , consult ྫ: SSHPiper , sshdͷ֦ு SSHϦΫΤετ͝ͱʹৗʹ࠷৽ʹอͨΕͨγεςϜͷߏ੒৘ใ౳Λอ࣋͢Δ؅ཧσʔλ Λࢀর͢Δ͜ͱͰมߋʹ௥ै͢Δɽ SSH ΫϥΠΞϯτ SSHΫϥΠΞϯτ͕͍࣋ͬͯΔ ԿΒ͔ͷΩʔ৘ใΛݩʹ؅ཧ σʔλΛݕࡧ͠ɼ઀ଓ͢΂͖ SSHαʔόͷ৘ใΛऔಘ͢Δɽ

Slide 9

Slide 9 text

9 1. ΫϥΠΞϯτπʔϧ gcloudίϚϯυ • gcloud͸GCP্ͷϦιʔεΛૢ࡞͢Δओཁͳ ίϚϯυϥΠϯπʔϧ • ʮgcloud compute sshʯίϚϯυʹΠϯελϯε໊Λࢦఆ͢Δ͜ͱͰɼର৅ͷΠϯελϯεʹ SSH઀ଓ͕Մೳ • ssh(1)ίϚϯυͷϥούʔͰ͋ΓɼSSHͷϦΫΤετΛૹΔલʹΠϯελϯε໊ΛΩʔʹGCP ͕؅ཧ͍ͯ͠Δߏ੒৘ใ͔ΒIPΞυϨεΛऔಘ͢ΔػೳΛ༗͍ͯ͠Δɽ • Ϣʔβ͸ࣗ਎Ͱఆٛͨ͠αʔό͝ͱʹҰҙͷΠϯελϯε໊Λ஌͍ͬͯΕ͹ɼର৅αʔόͷIP ΞυϨεͷ৘ใ΍ͦͷมߋΛҙࣝ͢Δ͜ͱͳ͘ಁաతʹSSH઀ଓ͕ՄೳͰ͋Δɽ SSH ΫϥΠΞϯτ SSH αʔό ؅ཧσʔλ ᶃ ᶄ ՝୊ Ϣʔβʹ༻͍ΔΫϥΠΞϯτπʔϧΛڧ੍͢Δɼ͔ͭπʔϧͷ࢓༷มߋʹ൐͍ όʔδϣϯΞοϓ౳ͷมߋΛཁٻ͢Δɽ

Slide 10

Slide 10 text

10 2. ϓϩΩγαʔό • GitHub্ͰΦʔϓϯιʔειϑτ΢ΣΞͱͯ͠ ։ൃ͞Ε͍ͯΔSSHͷϓϩΩγαʔό • SSHͷϦΫΤετΛड͚ͨࡍʹɼSSHͷϢʔβ໊͔Βར༻͢Δ઀ଓઌαʔόΛܾఆͰ͖ΔػೳΛ ༗͢Δɽ • Ϣʔβ͕༻͍ΔΫϥΠΞϯτπʔϧͷ੍ݶ΍มߋΛ՝͞ͳ͍ɽ • Ϣʔβ͸ɼϓϩΩγαʔόͷIPΞυϨεɾϗετ໊͑͞஌͍ͬͯΕ͹ɼ઀ଓ͢ΔαʔόͷIPΞυ Ϩεɾϗετ໊΍ͦͷมߋΛҙࣝͤͣɼϢʔβ໊ʹඥ͍ͮͨαʔόʹಁաతʹSSH઀ଓͰ͖Δɽ ؅ཧσʔλ ᶃ ᶅ ϓϩΩγ αʔό SSHPiper ઀ଓઌαʔόΛܾఆ͢ΔϩδοΫΛγεςϜ؅ཧऀ͕ࣗ༝ʹ૊ΈࠐΉ͜ͱ΍มߋ͢Δ͜ͱ͕Ͱ͖ ͣɼϩδοΫΛมߋ͢ΔͨΊʹ͸ιʔείʔυʹ௚઀มߋΛՃ͑ͳ͚Ε͹ͳΒͳ͍ͨΊɼγες Ϝͷ࢓༷มߋʹର͢Δ֦ுੑ͕௿͍ɽ ᶄ SSH αʔό SSH ΫϥΠΞϯτ ՝୊

Slide 11

Slide 11 text

3. ఏҊख๏

Slide 12

Slide 12 text

12 ΞʔΩςΫνϟͷ֓ཁ γεςϜ؅ཧऀ͕ࣗ༝ʹ૊ΈࠐΈՄೳͳϑοΫؔ਺Λ༻͍ͯγεςϜมԽʹ௥ैͰ͖Δ SSHϓϩΩγαʔόΛఏҊ͢Δ • Ϣʔβʹ༻͍ΔΫϥΠΞϯτπʔϧͷ੍ݶ΍มߋΛ՝͞ͳ͍ • ૊ΈࠐΉϑοΫؔ਺ͷΈͷमਖ਼ͰϓϩΩγαʔόͷಈ࡞Λࣗ༝ʹม͑ΒΕΔͨΊɼ γεςϜͷ࢓༷มߋʹରͯ͠ߴ͍֦ுੑΛ༗͢Δ طଘSSHϓϩΩγαʔό ͱಉ͡ར఺ SSHΫϥΠΞϯτ ssh username@hostname Ϣʔβ໊ ઀ଓઌϗετ ؅ཧσʔλ ϑοΫؔ਺ SSH ϓϩΩγαʔό αʔό܈

Slide 13

Slide 13 text

13 ૊ΈࠐΈՄೳͳϑοΫؔ਺ • ϑοΫؔ਺͸SSHϦΫΤετ͝ͱʹຖճ࣮ߦ͞ΕΔ • SSHͷϢʔβ໊Λ΋ͱʹ઀ଓઌαʔόͷIPΞυϨεɾϗετ໊Λऔಘ͢Δؔ਺ • ܾఆͨ͠઀ଓઌαʔόͱΫϥΠΞϯτؒͷެ։伴ೝূΛ֦ு͢ΔͨΊͷؔ਺ • ͜ΕΒΛ༻͍ΔͱɼSSHϓϩΩγαʔόʹ͓͚Δ઀ଓઌͷܾఆ͓Αͼެ։伴ೝূΛ ϓϩάϥϚϒϧʹ֦ுͰ͖Δɽ • ϑοΫؔ਺ʹΑΔ֦ுੑʹΑΓɼҎԼͷબ୒ੑ͕ੜ·ΕΔ • Ϣʔβͱαʔόͷඥ෇͚৘ใ΍ɼೝূʹ༻͍Δ伴ͳͲͷ؅ཧσʔλΛσʔλϕʔ εɾಠࣗͷઃఆϑΝΠϧ౳ͷࣗ༝ͳσʔλܗࣜͰ؅ཧͰ͖Δɽ • ؅ཧσʔλΛऔಘ͢Δํ๏ΛWeb APIܦ༝ʹ͢ΔͳͲɼσʔλͷऔಘํ๏Λࣗ༝ ʹબ୒Ͱ͖Δɽ

Slide 14

Slide 14 text

14 Ϣʔβೝূͷ࢓૊Έ SSH ΫϥΠΞϯτ SSH αʔό SSHϓϩΩγ ύεϫʔυೝূํࣜ ެ։伴ೝূํࣜ SSH αʔό ೝূϦΫΤετ ೝূϨεϙϯε SSHϓϩΩγ͸SSHαʔόʹύέοτ Λసૹ͢ΔͷΈͰ͋ΓɼSSHαʔό͕ ೝূΛߦ͏ SSHϓϩΩγ Session ID: xxx Session ID: yyy ηογϣϯ͝ͱʹҰҙͷࣝผࢠΛؚΊ ͨσʔλΛൿີ伴Ͱॺ໊͠ɼೝূϦΫ ΤετΛૹΔͨΊɼSSHϓϩΩγ͸ೝূ ΛSSHαʔόʹ೚ͤΔ͜ͱ͕Ͱ͖ͳ͍ɽ ผͷൿີ伴Λ༻͍ͨ2ஈ֊ͷೝূ SSHϓϩΩγ͕ެ։伴 ݕࡧͷϑοΫؔ਺Λ༻ ͍ͯΫϥΠΞϯτͷೝ ূΛߦ͏ɽ 1ஈ֊໨ SSHαʔόʹSSHϓϩΩγ ͕อ࣋͢Δಛఆͷൿີ伴 Λશͯड͚ೖΕΔΑ͏ʹ ઃఆ͓ͯ͘͠ 2ஈ֊໨ SSH ΫϥΠΞϯτ

Slide 15

Slide 15 text

15 SSHϓϩΩγαʔόɿsshr • ఏҊ͢ΔΞʔΩςΫνϟΛ࣮ݱ͢ΔͨΊʹɼGoݴޠΛ༻͍ͯsshrͱ͍͏SSHϓϩΩγ αʔόΛOSSͱͯ͠։ൃ※1 • γεςϜ؅ཧऀ͕GoݴޠͰ࣮૷ͨؔ͠਺Λ૊ΈࠐΜͰϏϧυ͢Δ͜ͱͰɼϓϩΩγ αʔόͷػೳΛ֦ுͰ͖Δ࢓૊ΈΛͱ͍ͬͯΔɽ ૊ΈࠐΈՄೳͳϑοΫؔ਺ ؔ਺໊ ໾ׂ/૝ఆ͞ΕΔॲཧ FindUpstreamHook Ϣʔβ໊ΛΩʔʹ઀ଓઌαʔόͷIPΞυϨε·ͨ ͸ϗετ໊Λσʔλϕʔε΍Web APIܦ༝Ͱऔಘ FetchAuthorizedKeysHook Ϣʔβͷެ։伴Λσʔλϕʔε΍Web APIܦ༝Ͱ औಘ FetchPrivateKeyHook sshrαʔόͷϩʔΧϧετϨʔδʹอ؅͞Ε͍ͯ Δൿີ伴Λऔಘ ϦΫΤετͷॲཧͷաఔ Ͱ͜ΕΒͷϑοΫؔ਺͕ ॱ࣍ݺͼग़͞ΕΔ ※1 https://github.com/tsurubee/sshr

Slide 16

Slide 16 text

16 ηΩϡϦςΟϦεΫ • ύεϫʔυೝূํࣜͷ৔߹ • sshrαʔό͸SSHαʔόʹύέοτΛసૹ͢ΔͷΈͰ͋ΓɼϢʔβͷύεϫʔ υΛ஌͍ͬͯͯɼೝূΛߦ͏͜ͱ͕Ͱ͖Δͷ͸SSHαʔόͷΈͰ͋ΔͨΊɼ sshrαʔόΛ༻͍ͨ৔߹Ͱ΋ೝূΛಥഁ͞ΕΔϦεΫ͸มΘΒͳ͍ɽ • ެ։伴ೝূํࣜͷ৔߹ • sshrαʔόͷηΩϡϦςΟͷ໰୊΍sshrσʔϞϯͷ੬ऑੑͳͲ͕ݪҼͰ • sshrαʔό͕༗͍ͯ͠Δൿີ伴͕ྲྀग़͢Δɽ • sshrαʔό͔Βൿີ伴Λར༻ͨ͠೚ҙͷίϚϯυ͕࣮ߦ͞ΕΔɽ

Slide 17

Slide 17 text

17 ηΩϡϦςΟରࡦ sshrαʔόଆ SSHαʔόଆ ɹରࡦ ޮՌ αʔόʹϩάΠϯՄೳͳϢʔβͷ਺΍ ݖݶɼΞΫηεՄೳͳIPΛ࠷খݶʹߜΔ ൿີ伴ͷྲྀग़Λ๷͙ sshrσʔϞϯ͸rootݖݶΛ࣋ͨͳ͍Ϣʔβ Ͱ࣮ߦ͢Δ ೚ҙͷίϚϯυ͕࣮ߦ͞Εͨ৔߹ʹsshrαʔόʹ ର͢Δૢ࡞Λ੍ݶ͢Δ ɹରࡦ ޮՌ rootͰϦϞʔτϩάΠϯΛڐՄ͠ͳ͍ઃఆ ྫʣsshd_configͷPermitRootLogin SSHαʔόʹର͢Δૢ࡞ͷݖݶΛ੍ݶ͢Δ sshrͷൿີ伴ʹର͢Δ઀ଓݩIP੍ݶ ྫʣauthorized_keysͷIP੍ݶػೳ ൿີ伴͕֎෦ʹྲྀग़ͨ͠ࡍͷඃ֐Λ๷͙

Slide 18

Slide 18 text

4. ੑೳධՁͱߟ࡯

Slide 19

Slide 19 text

19 sshrͷΦʔόʔϔου • sshrͰ͸ɼSSHϦΫΤετ͝ͱʹ࣮ߦ͞ΕΔෳ਺ͷϑοΫؔ਺ʹΑΓɼ௨৴ͷ Φʔόʔϔου͕ൃੜ͢Δɽ • ͜ͷΦʔόʔϔουΛଌఆ͢Δ͜ͱͰɼఏҊ͢Δsshrͷಋೖ͕SSH઀ଓͷॲཧ࣌ؒ ʹ༩͑ΔӨڹΛධՁ͠ɼsshr͕࣮༻తͳ؀ڥʹ଱͑͏Δ͔ݕ౼͢Δɽ

Slide 20

Slide 20 text

20 ࣮ݧ಺༰ͱ৚݅ sshrΛհ͞ͳ͍ΫϥΠΞϯτͱαʔόؒͷ઀ଓʢӈਤ1ʣͱɼ ఏҊख๏Ͱ͋ΔsshrΛհͨ͠઀ଓʢӈਤ2ʣͰൺֱΛߦ͏ɽ ҎԼͷ2ύλʔϯͷ࣮ߦ࣌ؒͷଌఆΛߦ͏ ɹ1. unameίϚϯυΛ࣮ߦͨ͠৔߹ ɹ2. scpʢsecure copyʣʹΑΓϑΝΠϧΛసૹͨ͠৔߹ ࣮ݧ಺༰ • ༻͍Δ࣮ݧ؀ڥ͸ӈදࢀর • ΫϥΠΞϯτɾαʔόؒͷೝূʹ͸ެ։伴ೝূΛ༻͍Δ • sshr͕࣮ߦ͢ΔϑοΫؔ਺͸ɼ઀ଓઌͷܾఆॲཧ͓Αͼ Ϣʔβͷެ։伴ݕࡧͷॲཧͷ͍ͣΕʹ͓͍ͯ΋ɼผαʔό ্ͷσʔλϕʔε͔Βࢀর͢Δ΋ͷͱ͢Δ • σʔλϕʔε͸໨తͷϨίʔυҎ֎Λؚ·ͳ͍΋ͷͱ͢Δ ؀ڥɾ৚݅

Slide 21

Slide 21 text

21 unameίϚϯυͷ࣮ߦ unameίϚϯυ࣮ߦ࣌ؒͷଌఆ݁Ռ ※ ࣮ߦ࣌ؒ͸શͯ100ճଌఆͷฏۉ஋ ※ +22msec • ΫϥΠΞϯτɾαʔόؒͷSSH઀ଓʹରͯ͠sshrΛհͨ͠৔߹ɼunameίϚϯυ࣮ߦͷ Φʔόʔϔου͸22msecͰ͋Δ͜ͱ͕෼͔ͬͨɽ • ͜Ε͸ηογϣϯཱ֬࣌ʹ࣮ߦ͞ΕΔϑοΫؔ਺ʢࠓճͷ৔߹2ճͷσʔλϕʔεݕࡧʣ ͕Өڹ͍ͯ͠Δͱߟ͑ΒΕΔɽ • sshrΛհ͢Δ͜ͱͰൃੜ͢ΔΦʔόʔϔου͸ɼSSHηογϣϯཱ֬࣌ʹϢʔβ͕஗Ԇ Λײ͡ͳ͍΄Ͳ୹͍࣌ؒͰ͋Δɽ

Slide 22

Slide 22 text

22 scpʹΑΔϑΝΠϧసૹ scpʹΑΓసૹ͢ΔϑΝΠϧͷαΠζͱ సૹ࣌ؒͷؔ܎ • 20MBͷϑΝΠϧΛసૹ͢Δ৔߹ɼsshrΛհ͢Δ͜ͱͰൃੜ͢Δ Φʔόʔϔου͸48ϛϦඵͰ͋ΓunameίϚϯυ࣮ߦͷ݁Ռ ΑΓେ͖͍ɽ • సૹ͢ΔϑΝΠϧαΠζ͕େ͖͘ͳΔʹͭΕͯɼൃੜ͢Δ Φʔόʔϔου͕େ͖͘ͳΔ͜ͱ͔ΒɼsshrΛհ͢Δ৔߹ɼ sshrαʔό͕ύέοτΛϑΥϫʔυΛ͢Δ͜ͱʹΑΔΦʔόʔ ϔου͕Өڹ͍ͯ͠Δͱߟ͑ΒΕΔɽ • ͔͠͠ͳ͕Βɼྫ͑͹100MBͷϑΝΠϧసૹͷ৔߹ʹண໨͢Δ ͱɼసૹ࣌ؒͷ૿Ճ཰͸Θ͔ͣ0.9%ఔ౓Ͱ͋Γɼશମͷసૹ࣌ ؒʹରͯ͠sshrΛհ͢Δ͜ͱͰൃੜ͢ΔΦʔόʔϔου͕઎ΊΔ ׂ߹͸ۃΊͯখ͍͞ɽ

Slide 23

Slide 23 text

23 ࣮؀ڥ΁ͷద༻ • Ϣʔβ͕ෳ਺ͷαʔό܈ͷத͔Βಛఆͷαʔόʹରͯ͠SSHϩάΠϯ͠ɼαʔόͷૢ࡞Λ ߦ͏͜ͱ΍ɼϑΝΠϧΛసૹ͢ΔΑ͏ͳαʔό؅ཧΛ૝ఆͨ͠৔߹ɼsshrͷΦʔόϔου ͸࣮༻ʹे෼ʹ଱͑͏Δ΄Ͳখ͍͞ɽ • ҰํɼsshrͰ͸ॲཧͷաఔͰɼσʔλϕʔε౳ͷ؅ཧσʔλ͔Β઀ଓઌαʔό΍ެ։伴Λ ݕࡧ͢ΔͨΊɼσʔλϕʔε΍Web API౳ͷԠ౴͕࣌ؒେ͖͍৔߹͸ɼͦΕʹ൐͍sshrΛ հͨ͠SSHηογϣϯཱ֬ʹ͔͔Δ࣌ؒ΋௕͘ͳΔɽͦͷ৔߹͸ɼԠ౴࣌ؒΛ୹͘͢Δର ࡦΛߦ͏ඞཁ͕͋Δɽ

Slide 24

Slide 24 text

5. ·ͱΊ

Slide 25

Slide 25 text

25 ·ͱΊ • ຊݚڀͰ͸ɼϢʔβʹ༻͍ΔΫϥΠΞϯτπʔϧͷ੍ݶ΍มߋΛཁٻͤͣɼγε ςϜ؅ཧऀ͕ࣗ༝ʹ૊ΈࠐΈՄೳͳϑοΫؔ਺Λ༻͍ͯγεςϜมԽʹ௥ैͰ͖ Δsshrͱ͍͏SSHϓϩΩγαʔόΛఏҊͨ͠ɽ • ఏҊख๏͸ɼ૊ΈࠐΉϑοΫؔ਺ͷΈͷमਖ਼ͰϓϩΩγαʔόͷಈ࡞Λࣗ༝ʹม ͑ΒΕΔͨΊɼγεςϜͷ࢓༷มߋʹରͯ͠ߴ͍֦ுੑΛ༗͍ͯ͠Δɽ • ͞Βʹ࣮ݧ͔ΒɼΫϥΠΞϯτɾαʔόؒʹsshrΛಋೖͨ͠৔߹ͷSSHηογϣ ϯཱ֬ͷΦʔόʔϔου͸20ϛϦඵఔ౓Ͱ͋ΓɼϢʔβ͕ಛఆͷαʔόʹSSHϩ άΠϯ͢Δࡍʹ஗ԆΛײ͡ͳ͍΄Ͳ୹͍࣌ؒͰ͋Δ͜ͱΛࣔͨ͠ɽ