エンジニア男

勉強したことの忘備録としてつらつら書いていきます。

ssh公開鍵認証について

ssh公開鍵認証についてのメモ。

 

ssh-keygen: ssh-keygenについて - エンジニア男

.ssh/config: .ssh/configについて - エンジニア男

 

今回は接続元HostA => 接続先HostBと指定したユーザでSSH接続することを想定する。

接続元HostA: adminUser(ユーザ)

接続先HostB: controlUser(SSH接続先ユーザ)

 

①HostAで公開鍵、秘密鍵を作成する。※HostAのadminUserで操作する。

# 公開鍵、秘密鍵を作成する。
ssh
-keygen -t rsa -b 4096

# 公開鍵をHostBへ送る
scp ~/.ssh/id_rsa.pub root@172.xx.xx.xx:/home/controlUser/.ssh

scpが使えない時は手動で公開鍵をコピーする。※おすすめしない。

 

 

②公開鍵をサーバに登録する。※HostBのcontrolUserで操作する。

# ホームディレクトリに.sshディレクトリが無い場合は作成する。
mkdir .ssh
chmod 700 /home/controlUser/.ssh

# 公開鍵をauthorized_keysへ追記する。
cat id_rsa.pub >> authorized_keys
chmod 600 authorized_keys

authorized_keysとは = 接続を許可する公開鍵を登録しておくサーバー側のファイル。

 

 

SSH接続する。

ssh controlUser@172.xx.xx.xx

接続元、接続先のユーザ名が同じ場合、.ssh/configにログインユーザの指定があれば、ssh IPアドレス だけで接続できる。