東の森

centos6,mac忘備録備忘録

CentOSへMacから鍵方式でssh

アジェンダ

  1. 目的
  2. sshする二人
  3. ゴールの図
  4. 作業

目的

パスワードログインよりも鍵方式が主流(?)らしいとの情報を見かけた。パスワードログインでいちいちパスワード入れるのががめんどくさい。そのため鍵方式で素知らぬ顔でスマートにログインできるようにする。

sshする二人

ゴールの図

必要なファイルを用意し、必要な情報を記載。下記の状態で"ssh ホスト名"すると繋がる。

ホスト側(CentOS)

  • 公開鍵 ~/.ssh/authorized_keys

クライアント側(Mac)

  • 秘密鍵 ~/.ssh/id_rsa_simeon
  • 鍵方式ログインのための情報を記載 ~/.ssh/config

作業

クライアント側

~/.ssh/はもとからあった。

公開鍵・秘密鍵の作成
$ cd ~/.ssh
$ ssh-keygen

作るよーって言われてパスフレーズ聞かれたので今回鍵方式にしたいユーザmorrey22のパスワード入力した。パスフレーズだからパスワードじゃないほうが良かったのかもしれない。.ssh/に移動してるけど、しなくても.ssh/に鍵出来るかもしれない。

が.ssh/にできる。ファイル名は「_ホスト名」を付けて修正した。

$ mv id_rsa id_rsa_simeon
$ mv id_rsa.pub id_rsa_simeon.pub

その後、公開鍵をホストへコピー。

$ scp id_rsa_simeon.pub morrey22@192.168.11.100

ローカルの~/.ssh/configを編集。これはもともとなかった。

$ vim config
Host simeon
    Hostname 192.168.11.100
    User morrey22
    Identityfile ~/.ssh/id_rsa_simeon

ホスト側

公開鍵の設置

ホストへmorrey22でログインして、さっきの公開鍵がユーザのホームディレクトリに存在することを確認。
ホストも~/.ssh/は既に存在した。パーミッションは700。~/.ssh/authorized_keysはなかったので作成した。パーミッションは600にする。そしてauthorized_keysに公開鍵の内容を追加。

$ cd ~/.ssh/
$ touch authorized_keys
$ chmod 600 authorized_keys
$ cat ~/id_rsa_simeon.pub >> authorized_keys

クライアント側からログイン

$ ssh simeon

最初だけパスフレーズ聞かれるけど、次からはするりと入れる。ずっとエイリアスssh morrey22@〜を書いてたけどこれでさよならだ。




参考
https://gitrhythm.heroku.com/blog/2012/01/20/ssh-setup/
http://zakihaya.hatenablog.com/entry/20120526/1338040199