SSHパスワードフリーログイン設定方法の詳しい説明(画像とコマンド)

SSHパスワードフリーログイン設定方法の詳しい説明(画像とコマンド)

まず、私たちがやりたいことは、serverA の usera を使用して、パスワードなしで serverB の userb にログインすることだということを説明します。

まずuseraを使ってserverAサーバーにログインします

[root@serverA ~]# su - usera
[usera@serverA ~]$ pwd
/ホーム/ユーザー

次に、サーバーAでキーペアを生成します。

[usera@serverA ~]$ ssh-keygen -t rsa
公開/秘密 RSA キー ペアを生成しています。
キーを保存するファイル (/home/usera/.ssh/id_rsa) を入力します。 
ディレクトリ '/home/usera/.ssh' を作成しました。
パスフレーズを入力してください (パスフレーズがない場合は空白): 
同じパスフレーズをもう一度入力してください: 
あなたの識別情報は /home/usera/.ssh/id_rsa に保存されました。
公開鍵は /home/usera/.ssh/id_rsa.pub に保存されました。
キーのフィンガープリントは次のとおりです。
39:f2:fc:70:ef:e9:bd:05:40:6e:64:b0:99:56:6e:01 ユーザーa@サーバーA
キーのランダムアート画像は次のとおりです。
+--[RSA 2048]----+
| えお* |
| @ . |
| = * |
| うーん。|
| . S . |
| + . . |
| + . .|
| + . o . |
| .o= o. |
+-----------------+ 


この時点で、/home/usera/.sshディレクトリにキーペアが生成されます。

[usera@serverA ~]$ ls -la .ssh
総投与量 16
drwx------ 2 usera usera 4096 8月24日 09:22 .
drwxrwx--- 12 ユーザー ユーザー 4096 8月 24日 09:22 ..
-rw------- 1 ユーザー ユーザー 1675 8月 24日 09:22 id_rsa
-rw-r--r-- 1 ユーザー ユーザー 399 8月 24日 09:22 id_rsa.pub

次に公開鍵をserverBにアップロードし、userbとしてログインします。

[usera@portalweb1 ~]$ ssh-copy-id [email protected]
ホスト「10.124.84.20 (10.124.84.20)」の信頼性を確立できません。
RSA キーのフィンガープリントは f0:1c:05:40:d3:71:31:61:b6:ad:7c:c2:f0:85:3c:cf です。
本当に接続を続行しますか (はい/いいえ)? はい
警告: '10.124.84.20' (RSA) が既知のホストのリストに永続的に追加されました。
[email protected]のパスワード: 
ここで、「ssh '[email protected]'」を使用してマシンにログインし、チェックインしてみます。
 
 .ssh/承認キー
 
予期しないキーが追加されていないことを確認するためです。 


この時点で、useraの公開鍵ファイルの内容がuserbの.ssh/authorized_keysファイルに追加されます。

[usera@serverA ~]$ cat .ssh/id_rsa.pub 
ssha aaab3nzac1yc2eaaaabiwaaaaqeaqea2dpxfvifkpswsbuspcuwred/mftwpdeerhlwaxnixgixlvhus9qnavepzocvpbzwhade88klpkr5xev66m5rschxxxmxj1ie5vfpdj1ie5vfppdj1j1j1ie5mdj1j1ie5pptdie5 yerplybonrfftqgxac/ximmbyhecti0vnujlvet0pprj7bqmmxr/2lnlhifxkkzcxgzgzgzkhgqybqkk/rqweuyaiumvuim8ssk/rdg8hl/n0exjh99jv8h17od4hfstvfkffkffkffkffkffkffkfffkffkffkffkffkfkfkfkfkfkfkfkfkfk XA7SB9O7Z6SCVRHJCMW3GBZZGYUPSJ0WKQDTW2UN0NH4UGQO7JFYILRVZTWIM7P6YGSI7VMA/VRP0AW == USERA@SERVERA

serverB の userb の下にある ~/.ssh/authorized_keys ファイルを確認します。内容は同じなので、ここでは画像を貼り付けません。

[userb@serverB ~]$ cat .ssh/authorized_keys 
ssha aaab3nzac1yc2eaaaabiwaaaaqeaqea2dpxfvifkpswsbuspcuwred/mftwpdeerhlwaxnixgixlvhus9qnavepzocvpbzwhade88klpkr5xev66m5rschxxxmxj1ie5vfpdj1ie5vfppdj1j1j1ie5mdj1j1ie5pptdie5 yerplybonrfftqgxac/ximmbyhecti0vnujlvet0pprj7bqmmxr/2lnlhifxkkzcxgzgzgzg hgqybqkkk/rqweuyaiumvuim8ssk/rdg8hl/n0exjh999jv8h18hd4hfspkfkffkffkffkffkffkffkffkffkffkfkfkfkfkfkfkfkfk XA7SB9O7Z6SCVRHJCMW3GBZZGYUPSJ0WKQDTW2UN0NH4UGQO7JFYILRVZTWIM7P6YGSI7VMA/VRP0AW == USERA@SERVERA

さらに、.ssh ディレクトリの権限は 700 であり、その下の authorized_keys ファイルと private keys ファイルの権限は 600 であることに注意してください。そうしないと、権限の問題によりパスワードなしでログインできなくなります。ログイン後にknown_hostsファイルが生成されることがわかります。

[useb@serverB ~]$ ls -la .ssh
合計 24
drwx------. 2 useb useb 4096 7月27日 16:13 .
drwx------. 35 useb useb 4096 8月24日 09:18 ..
-rw------- 1 useb useb 796 8月 24 09:24 authorized_keys
-rw------- 1 useb useb 1675 7月 27 16:09 id_rsa
-rw-r--r-- 1 useb useb 397 7月27日 16:09 id_rsa.pub
-rw-r--r-- 1 useb useb 1183 8月11日 13:57 known_hosts

これを実行すると、パスワードなしでログインできるようになります。

[usera@serverA ~]$ ssh [email protected]

さらに、公開鍵をサーバーの ~/.ssh/authorized_keys ファイルにコピーする方法はいくつかあります。

1. 公開鍵を scp 経由でサーバーにコピーし、それを ~/.ssh/authorized_keys ファイルに追加します。この方法はより面倒です。 scp -P 22 ~/.ssh/id_rsa.pub user@host:~/.

2. 私が実演した方法であるssh-copy-idプログラムを通じて、ssh-copyid user@host

3. cat ~/.ssh/id_rsa.pub | ssh -p 22 user@host 'cat >> ~/.ssh/authorized_keys' を使用できます。ポート番号を変更できるため、これも一般的な方法です。

以上がこの記事の全内容です。皆様の勉強のお役に立てれば幸いです。また、123WORDPRESS.COM を応援していただければ幸いです。

以下もご興味があるかもしれません:
  • Linux での SSH パスワードフリーログイン設定の詳細な説明
  • sshはデフォルトのポート番号を変更し、パスワード不要のリモートログインを実装します
  • CentOS で SSH パスワードフリーログインを設定した後もパスワードを入力しなければならない問題の解決策
  • SSHでキーパスワードなしのログインを設定する方法の詳細な説明
  • CentOS / RHEL で SSH パスワードフリー ログインを設定する方法
  • Ubuntu 16.04 サーバー構成 SSH パスワードなしログイン
  • Linux リモートログイン SSH パスワードフリー設定方法
  • Linux 上で SSH パスワードフリーのログインとキー管理、配布、および SHELL スクリプト共有の展開を実装します。
  • Ubuntu で SSH パスワード不要のログイン インストールを設定する方法

<<:  Windows での MySQL 5.7.20 のインストールと設定方法のグラフィック チュートリアル

>>:  MySQL 5.7.23 のインストールと設定方法のグラフィックチュートリアル

推薦する

Vue v-for ループを書く 7 つの方法

目次1. v-forループでは常にキーを使用する2. 特定のスコープ内でv-forループを使用する3...

Iframe の内外のページで JS がどのように動作するかの概要

目次iframeの外側のiframeのコンテンツを取得する方法1方法2 iframe 内の ifra...

Centos7 インストール mysql5.6.29 シェル スクリプト

この記事では、参考までにmysql5.6.29のシェルスクリプトを共有します。具体的な内容は次のとお...

CentOS で MySQL 5.1 を 5.5.36 にアップグレードする

CentOS 6.4 環境で MySQL 5.1 を 5.5.36 にアップグレードする手順を記録し...

JavaScript プロトタイプチェーンを理解するための 2 つの図

目次1. プロトタイプの関係2. プロトタイプチェーン3. 結論序文:前回の記事では、JavaScr...

MySQLデータベースの名前を高速かつ安全に変更する方法(3種類)

目次MySQLデータベースの名前を変更する方法最初の方法: データベースの名前を変更することは非推奨...

HTML でナンバープレート番号と州の略語を入力するためのサンプルコード

原理としては、まずボタン付きの div を記述し、次に画面のサイズに応じて自動的に適応してキーボード...

MySQL の効率的なクエリの左結合とグループ化 (プラス インデックス)

mysql 効率的なクエリMySQL は、左結合の速度を上げるために group by を犠牲にし...

MySQL 8.0.16 winx64 のインストールと設定方法のグラフィックチュートリアル (win10 の場合)

この記事では、MySQL 8.0.16 winx64のインストールと設定の具体的な方法を記載します。...

vuex ベースのショッピングカート機能の実装

この記事の例では、ショッピングカート機能を実装するためのvuexの具体的なコードを参考までに共有して...

CSS 兄弟要素フローティング分析の概要

float:左/右/なし; 1. 同じレベルフローティング(1)ブロックレベル要素を同じ行に表示する...

JS に依存せずにレスポンシブ レイアウトを実現する CSS3 モバイル vw+rem メソッド

1. はじめに(1)vw/vhの紹介使用する前に、vw と rem とは何か、その機能について簡単に...

Linux コマンドラインでパケットをキャプチャするために tcpdump を使用するいくつかの機能

tcpdump は、ネットワークの問題のトラブルシューティングに効果的に役立つ、柔軟で強力なパケット...

CSSでnグリッドレイアウトを実装する方法

一般的なアプリケーションシナリオ現在のアプリのインターフェースは基本的に同じであり、グリッドレイアウ...