Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
サーバへの接続を楽にしてくれるツールを作ってみた
Search
Sponsored
·
SiteGround - Reliable hosting with speed, security, and support you can count on.
→
kenji sakoda
May 27, 2019
Technology
660
1
Share
サーバへの接続を楽にしてくれるツールを作ってみた
sshコマンドでサーバパスワードを覚えてなくても接続してくれるツールを作った際の背景や使ったツール・ライブラリを紹介しています。
kenji sakoda
May 27, 2019
Other Decks in Technology
See All in Technology
研究開発部メンバーの働き⽅ / Sansan R&D Profile
sansan33
PRO
4
23k
聞き手の目線で考えるプロポーザル
takefumiyoshii
0
410
数案件を同時に進行するためのコンテキスト整理術
sutetotanuki
2
240
Introduction to Sansan for Engineers / エンジニア向け会社紹介
sansan33
PRO
6
74k
DevOpsDays Tokyo 2026 見えない開発現場を、見える投資に変える
rojoudotcom
3
190
今年60歳のおっさんCBになる
kentapapa
2
390
QGISプラグイン CMChangeDetector
naokimuroki
1
260
新規サービス開発におけるReact Nativeのリアル〜技術選定の裏側と実践的OSS活用〜
grandbig
2
190
最初の一歩を踏み出せなかった私が、誰かの背中を押したいと思うようになるまで / give someone a push
mii3king
0
140
DIPS2.0データに基づく森林管理における無人航空機の利用状況
naokimuroki
1
210
2026年に相応しい 最先端プラグインホストの設計<del>と実装</del>
atsushieno
0
120
2026年、知っておくべき最新 サーバレスTips10選/serverless-10-tips
slsops
12
4.8k
Featured
See All Featured
The Straight Up "How To Draw Better" Workshop
denniskardys
239
140k
HDC tutorial
michielstock
1
610
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
231
23k
Organizational Design Perspectives: An Ontology of Organizational Design Elements
kimpetersen
PRO
1
670
Skip the Path - Find Your Career Trail
mkilby
1
100
Digital Projects Gone Horribly Wrong (And the UX Pros Who Still Save the Day) - Dean Schuster
uxyall
0
1.1k
Leveraging Curiosity to Care for An Aging Population
cassininazir
1
220
We Are The Robots
honzajavorek
0
210
Measuring Dark Social's Impact On Conversion and Attribution
stephenakadiri
1
180
How to Get Subject Matter Experts Bought In and Actively Contributing to SEO & PR Initiatives.
livdayseo
0
99
Highjacked: Video Game Concept Design
rkendrick25
PRO
1
340
Bash Introduction
62gerente
615
210k
Transcript
サーバへの接続を楽にして くれるツールを作ってみた Go(Un)Conference LT大会 6kg 2019/05/20
プロフィール sakoda kenji 迫田けんじ / webエンジニア • twitter.com/_sakoken • github.com/sakoken
株式会社アイスタイル テクノロジー本部 R&D部 週末バドミントンやってます。
話す内容 • 背景 • よくあるシーン • 欲しかったもの • デモ •
使ったライブラリー / ツール • やり残したこと • まとめ
背景
背景 自社ではまだdocker化やansible化が 進んでいないため、サーバに入って設 定をいじったりする作業が多い
よくあるシーン
よくあるシーン サーバにsshで入って仕事したい
よくあるシーン sakoken$ ssh
よくあるシーン sakoken$ ssh サーバのホスト名 なんだっけ
よくあるシーン sakoken$ ssh メモ帳 host: xxx.yyy.zzz password: abcd123456789
よくあるシーン sakoken$ ssh
[email protected]
よくあるシーン sakoken$ ssh
[email protected]
[email protected]
's password: パスワード なんだっけ
よくあるシーン sakoken$ ssh
[email protected]
[email protected]
's password: メモ帳 host: xxx.yyy.zzz password:
abcd123456789
このようなことあったりしませんか
欲しかったもの
欲しかったもの • ターミナル上で • hostの管理ができて • サーバのパスワードを覚えてなくても • sshでログインをしてくれるもの •
パスワードは暗号化されていて • 最近使ったものが分かり • 各hostにメモが書けて • hostの絞り込み検索ができること
作ってみました! https://github.com/sakoken/sshh
デモ https://github.com/sakoken/sshh
使ったライブラリ・ツールたち • github.com/chzyer/readline ◦ GNU-Readlineの様なライブラリで ◦ コマンドライン上でインタラクティブな機能を簡単に作れる • gopkg.in/urfave/cli.v2 ◦
コマンドラインツールを作るためのフレームワーク • github.com/goreleaser/goreleaser ◦ 各種OS用にビルドしたり ◦ brewでの配布を容易にしてくれたりする
github.com/chzyer/readline
github.com/chzyer/readline https://github.com/chzyer/readline/blob/master/example/readline-demo/readline-demo.go
github.com/chzyer/readline • readline.Readline ◦ 入力待ち • readline.ReadlineWithDefault ◦ デフォルト値入力済みの入力待ち •
readline.ReadPassword ◦ 入力値のマスキング
やり残したこと • 鍵認証への対応 • テスト
まとめ • インタラクティブなcliを作るのに chzyer/readlineがおすすめ • sshでHostやPassword覚えるのに疲れたら sakoken/sshhを使ってみてください
ご静聴ありがとうございます