$30 off During Our Annual Pro Sale. View Details »
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
はじめてのしくじり /fjordbootcamp-211009
Search
haruna tsujita
October 08, 2021
Programming
0
1.1k
はじめてのしくじり /fjordbootcamp-211009
haruna tsujita
October 08, 2021
Tweet
Share
More Decks by haruna tsujita
See All by haruna tsujita
Hotwire or React? ~アフタートーク・本編に含めなかった話~ / Hotwire or React? after talk
harunatsujita
1
240
Hotwire or React? ~Reactの録画機能をHotwireに置き換えて得られた知見~ / hotwire_or_react
harunatsujita
11
9.4k
fbc-graduation-napple
harunatsujita
0
98
Rails Girls 2022 LT
harunatsujita
0
610
Other Decks in Programming
See All in Programming
テストやOSS開発に役立つSetup PHP Action
matsuo_atsushi
0
140
リリース時」テストから「デイリー実行」へ!開発マネージャが取り組んだ、レガシー自動テストのモダン化戦略
goataka
0
110
AIエージェントを活かすPM術 AI駆動開発の現場から
gyuta
0
300
AIコーディングエージェント(Gemini)
kondai24
0
180
配送計画の均等化機能を提供する取り組みについて(⽩⾦鉱業 Meetup Vol.21@六本⽊(数理最適化編))
izu_nori
0
140
【CA.ai #3】ワークフローから見直すAIエージェント — 必要な場面と“選ばない”判断
satoaoaka
0
230
WebRTC と Rust と8K 60fps
tnoho
2
1.9k
関数実行の裏側では何が起きているのか?
minop1205
1
660
How Software Deployment tools have changed in the past 20 years
geshan
0
28k
分散DBって何者なんだ... Spannerから学ぶRDBとの違い
iwashi623
0
180
React Native New Architecture 移行実践報告
taminif
1
140
UIデザインに役立つ 2025年の最新CSS / The Latest CSS for UI Design 2025
clockmaker
18
7k
Featured
See All Featured
Building an army of robots
kneath
306
46k
Templates, Plugins, & Blocks: Oh My! Creating the theme that thinks of everything
marktimemedia
31
2.6k
Into the Great Unknown - MozCon
thekraken
40
2.2k
How to train your dragon (web standard)
notwaldorf
97
6.4k
Fireside Chat
paigeccino
41
3.7k
Become a Pro
speakerdeck
PRO
30
5.7k
Unsuck your backbone
ammeep
671
58k
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
508
140k
Statistics for Hackers
jakevdp
799
230k
The Invisible Side of Design
smashingmag
302
51k
Fantastic passwords and where to find them - at NoRuKo
philnash
52
3.5k
Evolution of real-time – Irina Nazarova, EuRuKo, 2024
irinanazarova
9
1.1k
Transcript
͡Ίͯͷ͘͠͡Γ SSHଓʹखΛম͍ͨ FJORD BOOT CAMP ॳΊͯͷLTձɹvol.9 napple29ɹΔͳ
ࣗݾհ • napple29 Δͳ • ग़ɿ౦ژ • લ৬ޢࢣɹେֶපӃͷखज़ࣨ / ೝՄอҭԂͷޢࢣ
• 2021.4~ ϑΟϤϧυϒʔτΩϟϯϓͰษڧத • ݱࡏͷϓϥΫςΟεRails
͜ͷLTʹ͍ͭͯ ॳ৺Λࢥ͍ग़͢ܥLT
͜ͷLTʹ͍ͭͯ ॳ৺Λࢥ͍ग़͢ܥLT `ೖձͯ͠12ʙ15ͷ̐ؒΛSSHଓʹඅͨ͜͠ͱ’Λ͖͔͚ͬʹ ࣌ͷࢲֶ͕Μͩ͜ͱΛ͓͠͠·͢
SSHʹ͍ͭͯ ͪΐͬͱͨ͠ࢲ͕ૹΔ
SSHͱʁ • SSHɿSecure SHell • ωοτϫʔΫΛհͯ͠ผͷίϯϐϡʔλʔʹϩάΠϯ͠ɺ ૢ࡞͢ΔͨΊͷιϑτΣΞ
SSHଓͷ͘͠Έ ΫϥΠΞϯτଆ ʢࣗʣ αʔόʔଆ ʢ͘͞ΒVPSͳͲʣ
ൿີ伴 ެ։伴 SSHଓͷ͘͠Έ ΫϥΠΞϯτଆ ʢࣗʣ αʔόʔଆ ʢ͘͞ΒVPSͳͲʣ
ެ։伴 ൿີ伴 ΫϥΠΞϯτଆ ʢࣗʣ αʔόʔଆ ʢ͘͞ΒVPSͳͲʣ SSHଓͷ͘͠Έ
ެ։伴 ϩάΠϯ͍ͨ͠ ൿີ伴 ΫϥΠΞϯτଆ ʢࣗʣ αʔόʔଆ ʢ͘͞ΒVPSͳͲʣ SSHଓͷ͘͠Έ
ൿີ伴 ΫϥΠΞϯτଆ ʢࣗʣ αʔόʔଆ ʢ͘͞ΒVPSͳͲʣ 4283745 SSHଓͷ͘͠Έ ཚ
ެ։伴
ൿີ伴 ΫϥΠΞϯτଆ ʢࣗʣ αʔόʔଆ ʢ͘͞ΒVPSͳͲʣ SSHଓͷ͘͠Έ ฏจ 4283745
ཚ ެ։伴
ൿີ伴 ΫϥΠΞϯτଆ ʢࣗʣ αʔόʔଆ ʢ͘͞ΒVPSͳͲʣ L%*#$!T SSHଓͷ͘͠Έ ҉߸จ
4283745 ཚ ެ։伴
ൿີ伴 ΫϥΠΞϯτଆ ʢࣗʣ αʔόʔଆ ʢ͘͞ΒVPSͳͲʣ SSHଓͷ͘͠Έ 4283745 ެ։伴
ཚ L%*#$!T ҉߸จ
ΫϥΠΞϯτଆ ʢࣗʣ αʔόʔଆ ʢ͘͞ΒVPSͳͲʣ L%*#$!T ൿີ伴 SSHଓͷ͘͠Έ 4283745
ެ։伴 ཚ ҉߸จ
ΫϥΠΞϯτଆ ʢࣗʣ αʔόʔଆ ʢ͘͞ΒVPSͳͲʣ L%*#$!T SSHଓͷ͘͠Έ 4283745 ެ։伴
4283745 ൿີ伴 ཚ ཚ ҉߸จ
ΫϥΠΞϯτଆ ʢࣗʣ αʔόʔଆ ʢ͘͞ΒVPSͳͲʣ L%*#$!T SSHଓͷ͘͠Έ ൿີ伴 {ʓʓ:**}
ϋογϡ {ʓʓ:**} ϋογϡ ެ։伴 ҉߸จ
ΫϥΠΞϯτଆ ʢࣗʣ αʔόʔଆ ʢ͘͞ΒVPSͳͲʣ L%*#$!T SSHଓͷ͘͠Έ ൿີ伴 ҉߸จ
{ʓʓ:**} ϋογϡ {ʓʓ:**} ϋογϡ ެ։伴
ΫϥΠΞϯτଆ ʢࣗʣ αʔόʔଆ ʢ͘͞ΒVPSͳͲʣ L%*#$!T SSHଓͷ͘͠Έ ൿີ伴 {ʓʓ:**}
ϋογϡ {ʓʓ:**} ϋογϡ ެ։伴
҉߸Խ͞Εͨ௨৴ ΫϥΠΞϯτଆ ʢࣗʣ αʔόʔଆ ʢ͘͞ΒVPSͳͲʣ SSHଓͷ͘͠Έ
ͱɺࠓ͜ͷ͘Β͍આ໌Ͱ͖ΔΑ͏ʹͳΓ·͕ͨ͠…
ೖձͨͯ͠ͷΘͨ͠ ԿΛݴ͍ͬͯΔ͔ શ͘Θ͔Βͳ͍
ຓʢΤϯδχΞʣʹΘ͔ΒΜͱݴ͍·͘Δ
ೖձͨͯ͠ͷΘͨ͠ શ͕ͯॳΊͯ
ೖձͨͯ͠ͷΘͨ͠ શ͕ͯॳΊͯ શ͕ͯΑ͘Θ͔Βͳ͍
ೖձͨͯ͠ͷΘͨ͠ શ͕ͯॳΊͯ શ͕ͯΑ͘Θ͔Βͳ͍ શ͕ͯෆ҆
ೖձͨͯ͠ͷΘͨ͠ શ͕ͯॳΊͯ શ͕ͯΑ͘Θ͔Βͳ͍ શ͕ͯෆ҆ པΔਓ͕͍ͳ͍
SSHΓӽ͑ΒΕΔؾ͕͠ͳ͍… ͦͯ͠ɺͱʹ͔͘Ή
࣭Λ͏·͘Ͱ͖ͳ͍
• wakaranνϟϯωϧͰฉ͍ͯΈΔ ࣭ͯ͠ΈΔ͕…
• wakaranνϟϯωϧͰฉ͍ͯΈΔ • ͕ࣝͳͯࣗ͘ͷঢ়گΛ͏·͘આ໌Ͱ͖ͳ͍ ࣭ͯ͠ΈΔ͕…
• wakaranνϟϯωϧͰฉ͍ͯΈΔ • ͕ࣝͳͯࣗ͘ͷঢ়گΛ͏·͘આ໌Ͱ͖ͳ͍ • ฉ͖͍ͨ͜ͱͨ͘͞Μ͋ΔͷʹɺͦΕҎ্ฉ͚ͳ͍ ࣭ͯ͠ΈΔ͕…
• wakaranνϟϯωϧͰฉ͍ͯΈΔ • ͕ࣝͳͯࣗ͘ͷঢ়گΛ͏·͘આ໌Ͱ͖ͳ͍ • ฉ͖͍ͨ͜ͱͨ͘͞Μ͋ΔͷʹɺͦΕҎ্ฉ͚ͳ͍ • ࣭λΠϜͰฉ͖͍͕ͨɺ༐ؾ͕ͳͯ͘ฉ͚ͳ͍… ࣭ͯ͠ΈΔ͕…
༻ޠΛཧղͤͣʹϓϥΫςΟεʹऔΓΉ
༻ޠΛཧղͤͣʹϓϥΫςΟεʹऔΓΉ EX. $ ΛҰൠϢʔβʔͩͱ͔͍ͬͯͳ͔ͬͨ
ൿີ伴 ެ։伴 $ ssh-keygen -t rsa ΫϥΠΞϯτଆ ʢࣗʣ αʔόʔଆ
ʢ͘͞ΒVPSͳͲʣ ྫɹ$ ΛҰൠϢʔβʔͩͱ͔͍ͬͯͳ͔ͬͨ
ΫϥΠΞϯτଆ ʢࣗʣ αʔόʔଆ ʢ͘͞ΒVPSͳͲʣ ྫɹ$ϚʔΫ͕ҰൠϢʔβʔͩͱ͔͍ͬͯͳ͔ͬͨ 1.ઃఆϑΝΠϧΛૢ࡞ $ vi
/etc/ssh/sshd_config
2.ެ։伴Λஔ͘ॴΛ༻ҙ $ mkdir .ssh ΫϥΠΞϯτଆ ʢࣗʣ αʔόʔଆ
ʢ͘͞ΒVPSͳͲʣ ྫɹ$ϚʔΫ͕ҰൠϢʔβʔͩͱ͔͍ͬͯͳ͔ͬͨ 1.ઃఆϑΝΠϧΛૢ࡞ $ vi /etc/ssh/sshd_config
ΫϥΠΞϯτଆ ʢࣗʣ αʔόʔଆ ʢ͘͞ΒVPSͳͲʣ ಉ͡ϢʔβʔͰૢ࡞͠ͳͯ͘ͳΒͳ͍ ྫɹ$ϚʔΫ͕ҰൠϢʔβʔͩͱ͔͍ͬͯͳ͔ͬͨ
rootͰߦ͍ͬͯͨ ΫϥΠΞϯτଆ ʢࣗʣ αʔόʔଆ ʢ͘͞ΒVPSͳͲʣ ྫɹ$ϚʔΫ͕ҰൠϢʔβʔͩͱ͔͍ͬͯͳ͔ͬͨ
permission denied. ެ ։ 伴 ΫϥΠΞϯτଆ ʢࣗʣ αʔόʔଆ
ʢ͘͞ΒVPSͳͲʣ ൿີ伴 ྫɹ$ϚʔΫ͕ҰൠϢʔβʔͩͱ͔͍ͬͯͳ͔ͬͨ
’ࢲҰੜSSHଓͰ͖ͳ͍͔’
• ̍ͭΘ͔Δͱɺ·ͨ̍ͭΘ͔Βͳ͍͜ͱͱग़ձ͏ ࣌ɺ͘͢͝য͍ͬͯͨ
• ̍ͭΘ͔Δͱɺ·ͨ̍ͭΘ͔Βͳ͍͜ͱͱग़ձ͏ • ૣ͘ଔۀͯ͠ಇ͖͍ͨ ࣌ɺ͘͢͝য͍ͬͯͨ
• ̍ͭΘ͔Δͱɺ·ͨ̍ͭΘ͔Βͳ͍͜ͱͱग़ձ͏ • ૣ͘ଔۀͯ͠ಇ͖͍ͨ • ͏ΤϯδχΞఘΊͯɺޢࢣʹΖ͏͔ͳ… ࣌ɺ͘͢͝য͍ͬͯͨ
• ̍ͭΘ͔Δͱɺ·ͨ̍ͭΘ͔Βͳ͍͜ͱͱग़ձ͏ • ૣ͘ଔۀͯ͠ಇ͖͍ͨ • ͏ΤϯδχΞఘΊͯɺޢࢣʹΖ͏͔ͳ… ࣗͰͲ͏ʹͰ͖ͳ͍ͱޛΓɺQˍAͰ࣭ͯ͠Έͨͱ͜Ζ… ࣌ɺ͘͢͝য͍ͬͯͨ
Ͱղܾ🎉 ɹ
͘͠͡ΓɹʹɹSSHଓʹۤઓ͍ͯ͠Δͱ͖ͷࣗ
• ʲશ͘Θ͔Βͳ͍͜ͱ͕Θ͔ͬͨܦݧʳ͕ࣗ৴ʹͳͬͨ ͘͠͡Γ͔ΒֶΜͩ͜ͱ
• ʲશ͘Θ͔Βͳ͍͜ͱ͕Θ͔ͬͨܦݧʳ͕ࣗ৴ʹͳͬͨ • ࠓͰԿ͔ʹͭ·ͮ͘ͱʮͰSSHͰ͖͔ͨΒେৎʯͱࢥ͑Δ ͘͠͡Γ͔ΒֶΜͩ͜ͱ
• ίϛϡχςΟʹର͢Δ҆৺ײ͕ժੜ͑ͨ ͘͠͡Γ͔ΒֶΜͩ͜ͱ
• ίϛϡχςΟʹର͢Δ҆৺ײ͕ժੜ͑ͨ • ใʹ࿈ɹɹϚʔΫ → ϝϯλʔ͞Μ͕ݟʹདྷͯ͘Ε͍ͯͨ ͘͠͡Γ͔ΒֶΜͩ͜ͱ
• ίϛϡχςΟʹର͢Δ҆৺ײ͕ժੜ͑ͨ • ใʹ࿈ɹɹϚʔΫ → ϝϯλʔ͞Μ͕ݟʹདྷͯ͘Ε͍ͯͨ • ࣮ݟकΒΕ͍ͯΔ͜ͱ ͘͠͡Γ͔ΒֶΜͩ͜ͱ
• ίϛϡχςΟʹର͢Δ҆৺ײ͕ժੜ͑ͨ • ใʹ࿈ɹɹϚʔΫ → ϝϯλʔ͞Μ͕ݟʹདྷͯ͘Ε͍ͯͨ • ࣮ݟकΒΕ͍ͯΔ͜ͱ • ॿ͚ͯΒ͑ΔίϛϡχςΟͩͱ͔ͬͯ҆৺ͨ͠
͘͠͡Γ͔ΒֶΜͩ͜ͱ
• ࠀͰ͖͍ͯͳ͍͜ͱͨ͘͞Μ… ͘͠͡Γ͔ΒֶΜͩ͜ͱ
• ࠀͰ͖͍ͯͳ͍͜ͱͨ͘͞Μ… • ·ͩ·ͩൃల్্ɺઈࢍͰ͖ͳ͍ࣗͱ͖߹͍த ͘͠͡Γ͔ΒֶΜͩ͜ͱ
• ࠀͰ͖͍ͯͳ͍͜ͱͨ͘͞Μ… • ·ͩ·ͩൃల్্ɺઈࢍͰ͖ͳ͍ࣗͱ͖߹͍த • ͘͠͡Δ͔Βͦ͜ɺௐΔɺखΛಈ͔͢ɺֶͿʂ ͘͠͡Γ͔ΒֶΜͩ͜ͱ
• ࠀͰ͖͍ͯͳ͍͜ͱͨ͘͞Μ… • ·ͩ·ͩൃల్্ɺઈࢍͰ͖ͳ͍ࣗͱ͖߹͍த • ͘͠͡Δ͔Βͦ͜ɺௐΔɺखΛಈ͔͢ɺֶͿʂ ͬͯ͘͠͡ԕճΓ͢Δͷɺѱ͘ͳ͍ ͘͠͡Γ͔ΒֶΜͩ͜ͱ
͝੩ௌ͋Γ͕ͱ͏͍͟͝·ͨ͠