カテゴリー:
環境構築
タグ:
 ssh 公開鍵

このエントリーをはてなブックマークに追加
更新日時:
2017年11月21日(火)
作成日時:
2017年11月21日(火)

前の記事 / 次の記事

まとめ。

参考

ディレクトリの準備(ローカル)

ローカルで秘密鍵を格納するためのディレクトリを準備。

$ mkdir ~/.ssh

鍵の作成(ローカル)

$ ssh-keygen -t rsa -b 4096 -f ~/.ssh

-t ras

は最新のバージョンなら指定しなくてもデフォルトで rsa になっていると思われる。

-b 4096

はビット数、現状の最新バージョンだとデフォルトは 2048 なのではないかと思われるので、
4096 にしたい場合は明示的に指定。

-f ~/.ssh

は鍵の生成場所。

パーミッションの設定(ローカル)

パーミッションの設定は超重要。

$ chmod 700 ~/.ssh
$ chmod 600 ~/.ssh/id_rsa ~/.ssh/id_rsa.pub

~/.ssh/id_rsa.pub は ~/.ssh 配下に格納しなければいけない、という規則はなく、
どこか別の場所に保存しておいても構わない。

公開鍵のアップロードの準備(ローカル)

ftpやscpで公開鍵を送ったり、
ホストに公開鍵をアップロードする方法は色々あると思うのだけど、
クリップボード経由でコピーする方法が一番スマートだと思うので、
クリップボード経由で転送する方法を採る。

$ cat ~/.ssh/id_rsa.pub

キーが表示されるので選択してクリップボードにコピー。

公開鍵のアップロード(ローカルからホストへ)

予めパスワードによるsshで接続できるようになっているの前提で。

$ ssh -l username hostname -p 22

-p 22 はポート番号で何も指定しなければデフォルトで 22 が使われるが、
デフォルトにも関わらず世の中的にはデフォルト値使ってるところなんて
ほとんどないと思われるので、事実上指定必須。

ディレクトリの準備(ホスト)

~/.ssh がなければつくる。

$ mkdir ~/.ssh

公開鍵の設置(ホスト)

クリップボードにコピーした鍵を貼り付けて作成する。
既にある場合は改行して追加。

$ cd ~/.ssh
$ vi authorozed_keys

# 鍵を貼り付けて

:wq

パーミッションの設定(ホスト)

ローカルと同様に。

$ chmod 700 ~/.ssh
$ chmod 600 ~/.ssh/autorized_keys

確認

一度ログアウトしてログインできれば設定完了。

鍵認証を設定した後は

sshの設定を変えられる権限があるなら、
折角鍵認証できるようにしたのだから、パスワードによるログインを禁止しておく。
レンタルサーバーとかだと無理なはず。

$ vi /etc/ssh/sshd_config
#PasswordAuthentication yes
PasswordAuthentication no