GNU/Linux >> Linux の 問題 >  >> Cent OS

CentOS 8 /RHEL8でSSHパスワードレスログインを設定する方法

SSHはクライアントおよびサーバープロトコルであり、暗号化されたトンネルを介してネットワーク経由でリモートシステムに安全にアクセスするのに役立ちます。 SSHには、ネットワークを介してファイルとディレクトリを転送するための組み込みのファイル転送メカニズム(SCP)があり、FTP(ファイル転送プロトコル)よりもはるかに安全です。

大規模な環境では、リモートマシンにアクセスするたびにパスワードを入力するのは面倒です。そのため、ログインを容易にするために、SSHパスワードなし機能を使用して、パスワードを入力せずにリモートマシンにアクセスできます。

ここでは、CentOS 8 /RHEL8でSSHパスワードなしのログインを設定する方法を説明します。

前提条件

ここには、2つの異なるユーザー名を持つ2台のマシンがあります。

ホスト名 IPアドレス ユーザー OS 目的
server.itzgeek.local 192.168.0.10 raj CentOS 8 / RHEL 8 ソースマシン
client.itzgeek.local 192.168.0.20 ram CentOS 8 / RHEL 8 宛先マシン

ここでは、IPアドレスの代わりにホスト名を使用します。

手順に従って、パスワードなしのログインを作成します。

CentOS8でSSHパスワードなしログインを設定

SSHパスワードなしログインを有効にするには、ローカルマシンの公開鍵エントリをリモートマシンの〜/ .ssh / authorized_keys(〜はユーザーのホームディレクトリを表します)ファイルに配置する必要があります。

SSHパスワードレスログインは2つの方法で設定できます。いずれかの方法を選択してください。

  1. ssh-copy-idコマンドの使用
  2. キーを手動でコピーする

ssh-copy-idコマンドの使用

この方法では、ソースマシンでSSHキーペアを生成し、1つのコマンド(ssh-copy-id)で宛先マシンに配置します。

ssh-copy-idコマンドは、生成されたSSH公開鍵を宛先の〜/ .ssh/authorized_keysファイル内の既存の鍵に追加します。 〜/ .ssh / authorized_keysファイルが宛先マシンに存在しない場合、コマンドはそれを作成し、SSH公開鍵を配置します。

公開鍵を生成

ソースマシンにログインし、次のコマンドを使用してSSHキーペアを作成します。

[raj@server ~]$ ssh-keygen

出力:

Generating public/private rsa key pair.
Enter file in which to save the key (/home/raj/.ssh/id_rsa):
Created directory '/home/raj/.ssh'.
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Your identification has been saved in /home/raj/.ssh/id_rsa.
Your public key has been saved in /home/raj/.ssh/id_rsa.pub.
The key fingerprint is:
SHA256:8BuI21rECULGQMs3BtU2o3jHyHghg+p5RE8naQTQP2A [email protected]
The key's randomart image is:
+---[RSA 2048]----+
|+**o+..          |
|o=+E X .         |
|.oX+& *          |
|.ooO.X =         |
|. = o * S        |
| o . +   o       |
|  . . o .        |
|     o           |
|    .            |
+----[SHA256]-----+

作成すると、.sshディレクトリ内にid_rsaとid_rsa.pubの2つのファイルがあります。 SSHパスワードなしのログインにはid_rsa.pub(公開鍵)を使用します。

[raj@server ~]$ ls -al ~/.ssh/

出力:

total 8
drwx------. 2 raj raj   38 Nov  7 21:50 .
drwx------. 3 raj raj   74 Nov  7 21:50 ..
-rw-------. 1 raj raj 1831 Nov  7 21:50 id_rsa
-rw-r--r--. 1 raj raj  406 Nov  7 21:50 id_rsa.pub

公開鍵のコピー

id_rsa.pubの入力ファイルでopenssh-clientsパッケージに付属しているssh-copy-idコマンドを使用します。

[raj@server ~]$ ssh-copy-id -i ~/.ssh/id_rsa.pub [email protected]

出力:

/usr/bin/ssh-copy-id: INFO: Source of key(s) to be installed: "/home/raj/.ssh/id_rsa.pub"
The authenticity of host 'client.itzgeek.local (192.168.0.20)' can't be established.
ECDSA key fingerprint is SHA256:z4TLSbno9MLNF1ucNq4gtMlLQDVgrfLKEt8JguchKdo.
Are you sure you want to continue connecting (yes/no)? yes
/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
[email protected]'s password:

Number of key(s) added: 1

Now try logging into the machine, with:   "ssh '[email protected]'"
and check to make sure that only the key(s) you wanted were added.
キーを手動でコピーする

公開鍵を生成

この方法では、ソースマシンでSSHキーペアを生成し、手動でログインして宛先マシンに配置します。

まず、ソースマシンにログインし、次のコマンドを使用してSSHキーペアを作成します。

[raj@server ~]$ ssh-keygen

出力:

Generating public/private rsa key pair.
Enter file in which to save the key (/home/raj/.ssh/id_rsa):
Created directory '/home/raj/.ssh'.
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Your identification has been saved in /home/raj/.ssh/id_rsa.
Your public key has been saved in /home/raj/.ssh/id_rsa.pub.
The key fingerprint is:
SHA256:8BuI21rECULGQMs3BtU2o3jHyHghg+p5RE8naQTQP2A [email protected]
The key's randomart image is:
+---[RSA 2048]----+
|+**o+..          |
|o=+E X .         |
|.oX+& *          |
|.ooO.X =         |
|. = o * S        |
| o . +   o       |
|  . . o .        |
|     o           |
|    .            |
+----[SHA256]-----+

作成すると、.sshディレクトリ内にid_rsaとid_rsa.pubの2つのファイルがあります。 SSHパスワードなしのログインにはid_rsa.pub(公開鍵)を使用します。

[raj@server ~]$ ls -al ~/.ssh/

出力:

total 8
drwx------. 2 raj raj   38 Nov  7 21:50 .
drwx------. 3 raj raj   74 Nov  7 21:50 ..
-rw-------. 1 raj raj 1831 Nov  7 21:50 id_rsa
-rw-r--r--. 1 raj raj  406 Nov  7 21:50 id_rsa.pub

公開鍵のコピー

scpコマンドを使用して、id_rsa.pubを宛先にコピーするか、id_rsa.pubファイルの内容をコピーして、宛先マシンの〜/ .ssh/authorized_keysファイルに貼り付けることができます。
方法1

宛先マシンにログインし、ユーザーのホームディレクトリに.sshディレクトリが存在しない場合は作成します。

[ram@client ~]$ mkdir ~/.ssh

[ram@client ~]$ chmod 700 ~/.ssh

scpコマンドを使用して、id_rsa.pubを宛先マシンの/tmpディレクトリにコピーします。

[raj@server ~]$ scp -pr  ~/.ssh/id_rsa.pub [email protected]:/tmp

パスワードなしのログインはまだ構成されていないため、宛先のパスワードを入力する必要があります。

パスワードなしでログインするには、公開鍵をauthorized_keysファイルに配置します。

[ram@client ~]$ cat /tmp/id_rsa.pub >> ~/.ssh/authorized_keys

ファイルの権限を更新します。

[ram@client ~]$ chmod 600 ~/.ssh/authorized_keys
方法2

宛先マシンにログインし、ユーザーのホームディレクトリに.sshディレクトリが存在しない場合は作成します。

[ram@client ~]$ mkdir ~/.ssh

[ram@client ~]$ chmod 700 ~/.ssh

authorized_keysファイルを編集します。

[ram@client ~]$ vi ~/.ssh/authorized_keys

ソースマシンで、catコマンドを使用してid_rsa.pubファイルのコンテンツを表示します。

[raj@server ~]$ cat ~/.ssh/id_rsa.pub

出力: (サンプル)

コンテンツをコピーして、宛先のauthorized_keysファイルに貼り付けて保存します。

次に、ファイルの権限を更新します。

[ram@client ~]$ chmod 600 ~/.ssh/authorized_keys
パスワードなしのログインをテストする

次に、sshコマンドを使用してリモートマシンにアクセスします。

[raj@server ~]$ ssh [email protected]

これで、パスワードなしでリモートマシンにアクセスできるようになります。

結論

それで全部です。 CentOS 8 /RHEL8でSSHパスワードなしのログインをセットアップできることを願っています。コメントセクションでフィードバックを共有してください。


Cent OS
  1. パスワードなしでSSHログインを設定する方法

  2. パスワードレスログインSSH– CentOS 6 / RHEL 6

  3. Linux で「パスワードなし」の ssh ログイン用に SSH キーをセットアップする方法

  1. CentOS 7 /RHEL7でSysLogサーバーをセットアップする方法

  2. CentOS 7 /RHEL7でNFSサーバーをセットアップする方法

  3. CentOS/RHEL で「パスワードレス」SSH ログイン用の SSH キーをセットアップする方法

  1. パスワードなしのSSHログインを設定する方法

  2. CentOS8でSSHキーを設定する方法

  3. Linux でパスワードなしの SSH ログインをセットアップする方法