Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
GolangでSSHサーバを作ってみる
Search
tsurubee
September 06, 2018
Technology
3.5k
2
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
GolangでSSHサーバを作ってみる
ユーザが接続先を意識しないSSHプロキシサーバを作っている話
tsurubee
September 06, 2018
Transcript
20 slides
!UTVSVCFF(.01FQBCP *OD %FWFMPQFST4VNNJU'6,60," (PMBOHͰ44)αʔόΛ ࡞ͬͯΈΔ
ࣗݾհ (.0ϖύϘגࣜձࣾ ϗεςΟϯάࣄۀ෦ ΠϯϑϥνʔϜ ాതจ !UTVSVCFF ୲αʔϏε
օ͞Μɺ44)ͬͨ͜ͱ ͋Γ·͢ΑͶʁ
44)ͱʁ w4FDVSF4IFMMͷུশ wΫϥΠΞϯτrαʔόؒʹ͓͚Δ௨৴ͷ҆શੑΛ֬อ͢Δ ͨΊͷϓϩτίϧ w44)ΫϥΠΞϯταʔόͱʹ0QFO44)͕σϑΝΫτ ελϯμʔυ 44)$MJFOU $
ssh -V OpenSSH_7.6p1, LibreSSL 2.6.2 44)4FSWFS &ODSZQU %FDSZQU
44)ΫϥΠΞϯτɾαʔό (PMBOHͰ؆୯ʹॻ͚·͢
(PMBOHͷಛ wϫϯόΠφϦͰαʔόͷ͕؆୯ w04ϨΠϠʔͷػೳ͕ѻ͍͍͢ʢγεςϜϓϩάϥϛϯάʣ w(PSPVUJOFʹΑΔฒྻॲཧ wඪ४ϥΠϒϥϦͷॆ࣮ɺͳͲͳͲ ϛυϧΣΞ࣮ʹద͍ͯ͠Δ ༻్ʹ͋ͬͨϛυϧΣΞΛࣗ࡞͢Δͱ͍͏બࢶ
ࢲͷ߹ɾɾ (PMBOHͰ44)αʔόΛࣗ࡞͢Δ͜ͱͰɺ 44)Λͬͱίϯτϩʔϥϒϧʹ͍ͨ͠ʂ
Ϧιʔεϓʔϧ wֹ݄ԁ͔Βར༻Ͱ͖Δʂ wͷཧαʔόͷϦιʔεΛෳͷϢʔβʹఏڙ͢Δʢڞ༻αʔόʣ UTVSVCFF Ϩϯλϧαʔόʔ EFW ෳͷϢʔβͷίϯςϯπ͕ ϩʔΧϧετϨʔδʹ ஔ͞Ε͍ͯΔ TTI
TTI TTI TTI TTI TTIUTVSVCFF!TTI TTIEFW!TTI Ϣʔβ༻Ͱ͖Δαʔό͕ TTIͩͱ͍ͬͯΔඞཁ͕͋Δ ϢʔβͱͦͷϢʔβ͕༻͢Δαʔόͷඥ͚͕ଘࡏ͢Δ
αʔόఏڙऀଆͷطଘͷ՝ TTIUTVSVCFF!TTI Ϧιʔεϓʔϧ 44)$MJFOU TTI TTI TTI TTI TTI w༻αʔό͕มΘͬͨࡍʹϢʔβʹ௨͕ඞཁ
wαʔόཧऀͷ߹Ͱࣗ༝ʹϢʔβ͕͏αʔόΛมߋͰ͖ͳ͍ Ϣʔβ UTVSVCFFTTIʹ ҙࣝతʹଓ͍ͯ͠Δ UTVSVCFFͷίϯςϯπΛ TTIʹҠઃ͍ͨ͠
Ϣʔβ͕ଓઌΛҙࣝ͠ͳ͍44)ϓϩΩγαʔό TTIUTVSVCFF!TTIQSPYZ Ϧιʔεϓʔϧ 44)ΫϥΠΞϯτ Ϣʔβ໊ ଓઌϗετ TTIQSPYZ 1MVHHBCMF )PPLT 44)ΛϓϩΩγ
wϢʔβ໊ϕʔεͰಈతʹଓઌΛܾఆͰ͖Δ wϢʔβͱଓઌϗετͷඥ͚Λ%#ͰҰݩཧͰ͖ΔFUD Ϣʔβ
Α͠ʂʂ࡞Δͧʂʂ
(PMBOHͷTTIύοέʔδΛோΊͯΈΔ IUUQTHJUIVCDPNHPMBOHDSZQUPUSFFNBTUFSTTI
(PMBOHͷTTIύοέʔδΛோΊͯΈΔ Α͘Θ͔ΒΜ IUUQTHJUIVCDPNHPMBOHDSZQUPUSFFNBTUFSTTI
44)αʔόΛॻ͘ʹ 44)ϓϩτίϧΛΔ ඞཁ͕͋Δ
ϓϩτίϧΛΔͨΊʹ3'$ΛಡΉ w3'$ɿ44)"VUIFOUJDBUJPO1SPUPDPM Ϣʔβೝূʢύεϫʔυೝূެ։伴ೝূʣ w3'$ɿ44)5SBOTQPSU-BZFS1SPUPDPM τϥϯεϙʔτ w3'$ɿ44)$POOFDUJPO1SPUPDPM νϟωϧ੍ޚϙʔτϑΥϫʔσΟϯά 44)ɺෳͷಠཱͨ͠ϓϩτίϧͰߏ͞ΕΔ
44)ϓϩτίϧͷશମΠϝʔδ $MJFOU 4FSWFS 44)$0// 3'$ 44)"65) 3'$ 44)53"/4 3'$ ௨৴ͷ҉߸Խ
ηογϣϯ伴ͷަ Ϣʔβೝূ νϟωϧͷଟॏԽ *OUFSOFU wϓϩτίϧͷશମ૾ͷѲॲཧͷྲྀΕΛ௫Ή͜ͱ͕େ w44)ϓϩΩγαʔόΫϥΠΞϯταʔόͷؒʹׂͬͯೖͬͯɺ ҉߸Խ͞ΕͨτϥϯεϙʔτΛհ͢Δඞཁ͕͋Δ
TTISͱ͍͏44)ϓϩΩγαʔόΛ࡞ͬͯ·͢ʂ IUUQTCMPHUTVSVCFFUFDIFOUSZ
TTISΛͬͯΈΔͱʜ $ ssh
[email protected]
-p 2222
[email protected]
's password: [dev@host-developer ~]$
$ ssh
[email protected]
-p 2222
[email protected]
's password: [summi@host-summit ~]$ ࣮ߦ͢ΔίϚϯυʮϢʔβ໊ʯҎ֎ಉ͕ͩ͡ɺ ҧ͏αʔόʹ44)ϩάΠϯ͢Δ
·ͱΊ w(PMBOH04ϨΠϠʔͷػೳΛ؆ܿͳίʔυͰѻ͑ΔͳͲɺ ϛυϧΣΞͷ࣮ʹదͨ͠ಛΛ༗͍ͯ͠Δ wϛυϧΣΞΛࣗ࡞͢Δ͜ͱͰɺ͕ࣗͨͪΓ͍ͨ͜ͱʹ Ϛονͨ͠ͷΛॊೈʹ࡞ΕΔ wϛυϧΣΞͷࣗ࡞ʹ༻͢Δϓϩτίϧͷཧղ͕ඞཁ wTTIS·ͩ։ൃ్্ɻͲ͔͜Ͱ·ͨόʔϯͬͱ͓͠͠·͢ʂ
͝ਗ਼ௌ͋Γ͕ͱ͏ ͍͟͝·ͨ͠ʂʂ
More Decks by tsurubee
See All by tsurubee
大規模言語モデルにおけるData-Centric AIと合成データの活用 / Data-Centric AI and Synthetic Data in Large Language Models
tsurubee
1
690
言語モデルによるAI創薬の進展 / Advancements in AI-Driven Drug Discovery Using Language Models
tsurubee
2
700
AIトップカンファレンスからみるData-Centric AIの研究動向 / Research Trends in Data-Centric AI: Insights from Top AI Conferences
tsurubee
3
3.5k
DeepCrysTet: A Deep Learning Approach Using Tetrahedral Mesh for Predicting Properties of Crystalline Materials
tsurubee
0
1.4k
3次元メッシュで表現した結晶構造を用いた材料物性の予測に向けた深層学習モデルの設計 / Design of Deep Learning Model for Predicting Material Properties Using Crystal Structure Represented by Three-Dimensional Mesh
tsurubee
1
2.7k
分散システムの性能異常に対する機械学習の解釈性に基づく原因診断手法 / A Method for Diagnosing the Causes of Performance Issues in Distributed Systems Based on the Interpretability of Machine Learning
tsurubee
0
1.8k
機械学習の解釈性に関する研究動向とシステム運用への応用 / A Survey on Interpretable Machine Learning and Its Application for System Operation
tsurubee
0
400
機械学習モデルの局所的な解釈に着目したシステムにおける異常の原因診断手法の構想
tsurubee
0
8.2k
アニーリングマシンを活用したエッジAIにおける 生成モデルの学習効率化のためのアーキテクチャ
tsurubee
0
1.7k
Other Decks in Technology
See All in Technology
Intro to Kiro (One agent, every surface) | Kiro: Zero to Hero 01
inariku
PRO
2
120
Shared Signals Framework 仕様解説
oidfj
0
430
生成AI時代のIAMのマニアックな話
takuros
6
3.2k
大江戸Ruby会議でデータベース クライアントの話をするのは 間違っているだろうか
yahonda
1
120
【Oracle AI SPOTLIGHT ウェビナー】【特別開催:日本語で解説!】Oracle AI World 2026 最新情報フィードバック
oracle4engineer
PRO
1
210
AI時代に求められる優秀なTechLeadの振る舞い
pospome
11
16k
Context Ontology Accelerator 入門 (業務データの意味を、AI エージェントに渡す)
inariku
PRO
3
670
2026-11-11 Tamachi.sre#7 PaCにインフラリソースの命を救われました。 / PaC saves the infra resource life
masasuzu
0
170
業務でAWSをあまり使っていない私が、AWSへのモチベを保つ方法
smt7174
0
190
MCPでネットワーク障害調査を自動化する前に直すべき3つのこと
yama3133
0
120
田んぼの見回りをIoTで減らしたい!水位監視から電池駆動カメラまでの試行錯誤
itosoft
1
170
Bots in Kiro Crew (One point of contact for ongoing work) | Kiro: Zero to Hero 12
inariku
PRO
1
130
Featured
See All Featured
For a Future-Friendly Web
brad_frost
184
11k
Paper Plane
katiecoart
PRO
6
55k
It's Worth the Effort
3n
188
29k
Digital Projects Gone Horribly Wrong (And the UX Pros Who Still Save the Day) - Dean Schuster
uxyall
2
3.8k
KATA
mclloyd
PRO
35
16k
Self-Hosted WebAssembly Runtime for Runtime-Neutral Checkpoint/Restore in Edge–Cloud Continuum
chikuwait
0
940
Music & Morning Musume
bryan
48
7.5k
Fantastic passwords and where to find them - at NoRuKo
philnash
53
4k
What does AI have to do with Human Rights?
axbom
PRO
1
2.5k
How to Ace a Technical Interview
jacobian
280
24k
Done Done
chrislema
187
17k
The Straight Up "How To Draw Better" Workshop
denniskardys
239
140k