Linux での SSH 非秘密通信の実装

Linux での SSH 非秘密通信の実装

SSHとは何か

管理者はリモートでログインして、インターネット経由で接続されたさまざまな場所にある複数のホストを管理できます。

管理者はリモート ホストに対して次の操作を実行できます。

  • リモートログイン
  • リモートコマンド実行
  • リモートファイル転送

残念ながら、これらの操作は安全ではありません。

プレーンテキストのパスワードを使用し、クリアテキストで送信する

  • 情報が傍受され、パスワードが取得される可能性がある
  • 権限のない人物が傍受したパスワードを使用してシステムにログインし、システムに損害を与える

日常の運用実践では、ssh で他のホストにログインする場合、scp を使用して何かをコピーする場合であっても、毎回ログイン パスワードを入力する必要がある場合があります。

ホストをより便利かつ迅速に切り替えるには、SSH の非暗号化通信の方が適しています。

ssh-keygenを使用してキーを生成します。デフォルトでは/root/.ssh/id_rsaにローカルに保存されます。

次に、ssh-copy-idを使用してターゲットホストに配布し、user@ホスト名またはIPアドレスとしてログインします。

知らせ:

1. ホスト名を使用し、ホスト名と対応する IP アドレスを /etc/hosts ファイルに記述するのが最適です。

2. パスワードフリー通信では両者間の相互認証が必要なので、ターゲットホストでも同じ操作を実行する必要があります。

[root@www ~]# ssh-keygen -t rsa -P '' 
公開/秘密 RSA キー ペアを生成しています。
キーを保存するファイル (/root/.ssh/id_rsa) を入力します。 
/root/.ssh/id_rsa はすでに存在します。
上書きしますか? (y/n)?
[root@www ~]#ssh-copy-id -i .ssh/id_rsa.pub [email protected]
/usr/bin/ssh-copy-id: INFO: インストールされるキーのソース: ".ssh/id_rsa.pub"
ホスト「172.16.75.1 (172.16.75.1)」の信頼性を確立できません。
ECDSA キーのフィンガープリントは SHA256:YXhbTS9MfK2IQC4gtOW4RL8voHvFqC1cAAMJXuF3Wec です。
ECDSA キーのフィンガープリントは MD5:2c:c0:94:e8:3a:e4:74:88:c0:d8:e0:01:20:81:1d:8e です。
本当に接続を続行しますか (はい/いいえ)? はい
/usr/bin/ssh-copy-id: INFO: すでにインストールされているキーを除外するために、新しいキーでログインしようとしています
/usr/bin/ssh-copy-id: INFO: インストールするキーが 1 つ残っています -- ここでプロンプトが表示された場合は、新しいキーをインストールしてください
[email protected]のパスワード: 
追加されたキーの数: 1
ここで、「ssh '[email protected]'」を使用してマシンにログインしてみます。
必要なキーだけが追加されたことを確認します。

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

以下もご興味があるかもしれません:
  • bash スクリプトで ssh/scp コマンドにパスワードを渡す方法の詳細な説明
  • Linux で SSH 経由でリモート ファイルシステムをマウントする方法の詳細な説明
  • CentOS のデフォルトの SSH ポート番号を変更する方法の例
  • Ubuntu環境でのSSHの詳細なインストールと使用
  • Jenkins の Publish Over SSH プラグインを使用してプロジェクトをリモート マシンにデプロイする手順
  • CentOS 6.5 の設定 ssh キーフリーログインで pssh コマンドを実行する方法の説明
  • Ubuntuの基本設定: openssh-serverのインストールと使用
  • CentOS VPS に SSH 経由で MySQL をインストールする方法
  • Linux オペレーティング システムで ssh/sftp を構成して権限を設定する方法
  • さまざまなターミナルで Mac が SSH 経由でリモート サーバーに接続する方法の説明

<<:  three.js で 3D ダイナミック テキスト効果を実現する方法

>>:  MySQLバイナリログを介してデータベースデータを復元する方法の詳細な説明

推薦する

CSS3 背景コントロールプロパティと色遷移を使用してグラデーション効果を実現します。

CSS3 背景画像関連互換性: IE9+背景クリップ 背景画像描画領域background-cli...

Ubuntu 20.04 では、隠し録音ノイズ低減機能が有効になります (推奨)

最近、 Ubuntu 20.04でkazamを使用して録音しているときに、問題が見つかりました。シス...

MySQLデータベースが大きすぎる場合にバックアップと復元を行う方法

コマンド: mysqlhotcopyこのコマンドは、ファイルをコピーする前にテーブルをロックし、不完...

MySQLデータベースの基礎知識と操作のまとめ

この記事では、例を使用して、MySQL データベースの基本的な知識と操作について説明します。ご参考ま...

MySQL における引用符とバックティックの違いと使い方の詳細な説明

序文そこでこのブログを書きました。このブログでは大物の記事からいくつかの知識も推奨しています。侵害が...

2時間のDocker入門チュートリアル

目次1.0 はじめに2.0 Dockerのインストール3.0基本的なDockerコマンド4.0 Do...

JavaScriptでよく使われる配列重複排除実戦ソースコード

アレイの重複排除は、通常、就職面接中に遭遇し、アレイの重複排除方法のコードを手動で記述することが求め...

MySQL のインストール方法と設定に関するいくつかの問題の概要

1. MySQL rpm パッケージのインストール # インストールソースをダウンロードします [r...

jsを使用してシンプルな弾幕スクリーンシステムを実装する

この記事では、弾幕効果を実現するためのネイティブjsの具体的なコードを参考までに共有します。具体的な...

Linux での Python のアップグレードと pip のインストールの詳細な説明

Linuxバージョンのアップグレード: 1. まず、Linuxオペレーティングシステムに付属するPy...

JS でカルーセル画像を実装するいくつかの方法

カルーセル主なアイデアは次のとおりです。大きなコンテナには、コンテナの幅の整数倍の非常に長いテーブル...

Docker、Nginx、Jenkins をベースにした自動フロントエンド デプロイメント

目次事前準備展開ターゲットDocker環境構築クラウドサーバーに接続Docker環境をインストールす...

MySql5.7.21 インストールポイント記録メモ

ダウンロードしたバージョンは、Zip 解凍版、Windows システムです。長い間 Windows ...

MySQL Innodb インデックス メカニズムの詳細な紹介

1. インデックスとは何ですか?インデックスは、ストレージ エンジンがレコードをすばやく検索するため...

Element-ui アップロードファイルのアップロード制限の解決策

質問アップロードするファイルのタイプを accept に追加することは、「表面的な」役割しか果たしま...