ssh公開鍵の設定
いつもいつもやり方を忘れるので自分のためにメモ。
サーバ側には既にsshがインストールされていて鍵交換認証を要求している前提。
まずクライアント側で公開鍵を生成する。
$ ssh-keygen
パスフレーズを聞かれるので任意のフレーズを設定する。
公開鍵のパスフレーズとサーバのログインパスワードを混同しないこと。別のものを設定しないとあんまり意味がない気がする。
生成された公開鍵をサーバ側に送る。
下記のような感じでscpコマンドでさくっと送りたいところだけど、
サーバ側にクライアントの公開鍵がまだないので(当たり前)、アクセス拒否される。
アクセス許可してもらうために公開鍵をサーバに送りたいのだが、まだサーバは公開鍵を持っていないからクライアントを認証できずに拒否。
卵が先なのか、鶏が先なのか。。悩む。。
みんなどうやってるんだろう。
僕はとりあえずsambaで公開しているディレクトリに公開鍵を送っておいて、別の端末からサーバにアクセスして公開鍵を保存しているが。
これが正しいやり方なのかがよくわからん。。
とりあえず、別端末からサーバにログインして送っておいた公開鍵をauthorized_keysファイルに追記する。
追記したら公開ディレクトリにある鍵ファイルは消してしまう。
これでサーバ側に鍵がセットされたので、sshコマンドでログイン。
$ ssh xxx
先ほど設定しておいた鍵のパスフレーズを聞かれるので入力してやると、無事認証されログインできるようになる。
以上メモ。