サーバ公開鍵設定をコマンド一発で

A「サーバに入るために僕の公開鍵を登録してもらえますか?」
B「えーと公開鍵どれだっけ?もう一回送ってもらえますか?」
A「今メールで送りました」

このやり取り面倒ですね
Aさんがgithubのアカウントを持っている人なら以下のコマンドで追加できます

wget --no-check-certificate https://github.com/hoge_githubname.keys -O - | perl -ple '$_.=" "."yamasita"' >> ~/.ssh/authorized_keys

wgetの結果をそのまま保存してもいいのですが、コメント部分が削られていて、後で誰の鍵か分からなくなるのでperlワンライナーで追加してます。

以下コマンドの説明

  • wget ・・・webページをダウンロードするためのコマンド、入ってなかったらcurlとかでも可
  • –no-check-certificate・・・SSL証明書検証スキップ。証明書インストール済みなら不要
  • hoge_githubname・・・Aさんのgithubアカウント名
  • perl -ple・・・末尾に改行が入らないので-lオプション追加
  • $_.=” “.”yamasita”・・・yamasitaの部分が公開鍵のコメント部分。スペース忘れないようにわざとこんな表記。
Ruby on RailsによるWEBシステム開発、Android/iPhoneアプリ開発、電子書籍配信のことならお任せください この記事を書いた人と働こう! Ruby on Rails の開発なら実績豊富なBPS

この記事の著者

yamasita

東京電機大学工学部→3年間某SIerにて銀行システムの開発→bpsに入社

yamasitaの書いた記事

インフラ
現場で使うansible

2014年12月25日

インフラ
検証環境の作り方

2014年08月14日

週刊Railsウォッチ

インフラ

Rubyスタイルガイドを読む

BigBinary記事より

ActiveSupport探訪シリーズ