LoginSignup
127
148

More than 5 years have passed since last update.

公開鍵暗号を用いてのSSH接続(きほん)

Last updated at Posted at 2015-12-29
  • クライアント:Mac
  • サーバー: LInux(Ubuntu)

を用いて、公開鍵と秘密鍵の生成から公開鍵暗号でのSSH接続までのまとめです。

公開鍵と秘密鍵の生成

RSA暗号の鍵を生成する場合は、オプションで -t rsa を入力します。

$ ssh-keygen -t rsa

これで、~/.ssh/ ディレクトリに id_rsa (秘密鍵)と id_rsa.pub (公開鍵)が生成されていることがわかるかと思います。

※ SSH秘密鍵のパスフレーズをつけるべきかどうかについては下記記事が参考になりました。
SSH秘密鍵のパスフレーズは(つけるなら)11文字以上にしましょうねという話 - 本当は怖い情報科学

サーバーに公開鍵を渡す

サーバーの .ssh/authorized_keys に、先ほど作成した id_rsa.pub を渡します。

$ scp -P 22 ~/.ssh/id_rsa.pub <ユーザ名>@<IPアドレス>:~/.ssh/authorized_keys

パーミッションの変更

クライアント側、サーバ側ともにパーミッションを変更します。

# クライアント側
$ chmod 700 ~/.ssh

# サーバ側
$ chmod 600 ~/.ssh/authorized_keys

※ ここのパーミッション設定を正しく行わないと公開鍵認証でのSSH接続がうまく機能しないみたいなので要注意

※ パーミッションについては下記も参照
パーミッションの考え方について毎回よく分からなくなるからまとめ

接続確認

$ ssh <ユーザ名>@<IPアドレス>

秘密鍵生成時にパスフレーズを作成している場合はここで尋ねられるので、入力すると接続されるはずです。

SSHのパスワード認証を禁止する

公開鍵認証を設定したのでパスワード認証を禁止しましょう。

# サーバ側で下記ファイルを編集
$ sudo vi /etc/ssh/sshd_config

# 編集内容
ChallengeResponseAuthentication no
PasswordAuthentication no


# 編集後にsshdをリスタートする(Ubuntuの場合)
$ sudo /etc/init.d/ssh restart

参考情報

参考にさせていただきました。
ありがとうございました!!
公開鍵認証によるSSH接続 - Macターミナルの使い方 - Linux入門 - Webkaru
ssh認証のための公開鍵と秘密鍵を生成する手順 【Mac】 | かわたま.net
Linux - ssh公開鍵認証設定まとめ - Qiita

127
148
5

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
127
148