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 のインストールと設定方法のグラフィックチュートリアル

推薦する

Better-scrollはメニューとコンテンツをリンクする効果を実現します

1. 基本的な使い方 <!DOCTYPE html> <html lang=&qu...

CSSでプロセスナビゲーション効果を実現する(3つの方法)

CSS によりプロセスナビゲーション効果を実現します。具体的な内容は以下のとおりです。 ::tip...

Webフロントエンドツール、Sublime Text 2の紹介

Sublime Text 2 は、軽量でシンプル、効率的なクロスプラットフォーム エディターです。ブ...

JavaScript を使用して div の位置をドラッグして入れ替える例

1 実施原則これは、DOM 要素の dragstart/ondragover/ondrop イベント...

JSを段階的に学ぶ方法についての簡単な説明

目次概要1. jsの位置づけを明確に理解する2. 明確な学習パス3. 自己規律と粘り強さ4. 練習し...

浮遊する雲のアニメーションを実現するCSS3

操作効果 html <ヘッド> <メタ文字セット='UTF-8'&...

SQL ストアド プロシージャの取得、データ取得、プロセス分析

この記事は主に、SQL のストアド プロシージャから返されたデータを取得するプロセスの分析を紹介しま...

Nofollowはコメントやメッセージ内のリンクを本当に機能させる

コメントとメッセージはもともと、ウェブマスターがコミュニティと読者層を構築するための優れた手段でした...

docker-compose でデプロイしたときに MySQL にアクセスできなくなる問題の簡単な分析

Docker-ComposeとはCompose プロジェクトは、以前の fig プロジェクトから派生...

Mysql 更新マルチテーブル共同更新方法の概要

次に、2 つのテーブルを作成し、一連の SQL 文を実行します。SQL 文の実行後にテーブル内のデー...

CSS3はグラフィックの落下アニメーション効果を実現します

まずは効果を確認実装コード <div class="box box1"&g...

ab ツールを使用してサーバー上で API ストレス テストを実行します。

目次1 システムスループットの簡単な紹介2 試験方法2.1 クライアントテストツール2.1.1 GE...

MySQLデータベースのトランザクションとインデックスの詳細な説明

目次1. 事務:取引の 4 つの主な特徴:同時トランザクションはどのような問題を引き起こしますか? ...

EclipseのプロジェクトをTomcatに追加できない問題を解決する方法

1. プロジェクトを右クリックしてプロパティを選択します2. プロジェクトファセットをクリック3. ...

Node.jsで子プロセスを作成する方法

目次導入子プロセスプロセスを非同期的に作成する同期作成プロセス導入Node.js のメイン イベント...