取り込むというか単にcurl
で取得できるよ、という小ネタ。
少し前からUbuntuのOSインストール時にGitHubに登録してるSSH公開鍵を設定できるようになってたりしてますが、GitHubの公開鍵は特定のURLで簡単に参照できるので、OSインストール後でも任意のタイミングで設定できます。
GitHubの公開鍵のURL
GitHubに登録した公開鍵は以下のURLでアクセスできます。
https://github.com/{GITHUB_USERNAME}.keys
私(zaki-lknr)の場合だと以下。
https://github.com/zaki-lknr.keys
authorized_keysへ公開鍵の登録
OpenSSHの場合は、公開鍵は~/.ssh/authorized_keys
に保存すればOK
$ curl https://github.com/zaki-lknr.keys -o /home/zaki/.ssh/authorized_keys
すでに~/.ssh/authorized_keys
に別の公開鍵が登録してある場合は↑だと上書きしてしまうので、
$ curl https://github.com/zaki-lknr.keys >> /home/zaki/.ssh/authorized_keys
などで追記します。
kickstartインストールで設定する
以前ここで公開鍵を埋め込んで実装してたけど、OSインストール直後の状態でインターネットにアクセスできるのであればkickstartインストールの%post
に組み込めます。
%post mkdir -m 700 /home/zaki/.ssh curl https://github.com/zaki-lknr.keys -o /home/zaki/.ssh/authorized_keys chmod 600 /home/zaki/.ssh/authorized_keys chown -R zaki:zaki /home/zaki/.ssh %end
こんな感じ。
(ちなみに/.ssh
は755でauthorized_keys
は644でもリモートから公開鍵認証できるなぁ…sshd設定かな)