Contents
概要
CentOSからCentOSに公開鍵認証を用いてSSHで接続します。
前提条件
OS
CentOS Stream 8を使用します。
SELinux
有効です。無効にする場合はこちらを参照して下さい。
Firewalld
無効です。有効化する場合はこちらを参照して必要な許可設定をして下さい。
標準ポート番号
TCP:22 (SSH)
設定
秘密鍵と公開鍵を作成
ssh-keygenを用いて秘密鍵と公開鍵を作成します。パスフレーズは無しの例となりますが、要件に応じてパスフレーズを設定して下さい。秘密鍵と公開鍵は各ユーザーで使いまわすことも可能ですが、基本的にはユーザー毎に作成したほうが良いでしょう。
[root@centos ~]# ssh-keygen -t rsa -b 4096 -C "root@si1230.com" Generating public/private rsa key pair. Enter file in which to save the key (/root/.ssh/id_rsa):blank Enter passphrase (empty for no passphrase):blank Enter same passphrase again:blank Your identification has been saved in /root/.ssh/id_rsa. Your public key has been saved in /root/.ssh/id_rsa.pub. The key fingerprint is: SHA256:XUPJGKNxf1z1Vh2hOFgP60iaIw4HsButDfh7WRb2x8E root@si1230.com The key's randomart image is: +---[RSA 4096]----+ | . . +*.. oO| |. + =++B...+| |.+ o o .oE++oo o| | .* .. o+ooo.o . | | o.o oo+S.+. | | .++. .. | | . o. | | . | | | +----[SHA256]-----+
接続先に公開鍵をアップロード
ssh-copy-idを用いて接続先に公開鍵をアップロードできます。成功すると接続先の.ssh/authorized_keysが更新されます。
[root@centos ~]# ssh-copy-id 192.168.13.83 /usr/bin/ssh-copy-id: INFO: Source of key(s) to be installed: "/root/.ssh/id_rsa.pub" /usr/bin/ssh-copy-id: INFO: attempting to log in with the new key(s), to filter out any that are already installed /usr/bin/ssh-copy-id: INFO: 1 key(s) remain to be installed -- if you are prompted now it is to install the new keys root@192.168.13.83's password:password Number of key(s) added: 1 Now try logging into the machine, with: "ssh '192.168.13.83'" and check to make sure that only the key(s) you wanted were added.
以降はパスワード無しで192.168.13.83にSSHで接続できます。
CentOS 8 CentOS から CentOS へ公開鍵認証を用いた SSH 接続