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バイナリログを介してデータベースデータを復元する方法の詳細な説明

推薦する

Linux アカウントのパスワードを変更する詳細な例

個人アカウントのパスワードを変更する一般ユーザーが個人アカウントのパスワードを変更する場合は、他のコ...

Navicat を仮想マシン MySQL に接続する際によくあるエラーと解決策

質問1 解決するサービスを開始します: service mysqld start; /sbin/ip...

MySQLのインストールと設定に関する詳細なチュートリアル

目次インストール不要のMySQLバージョン1. インストール パッケージをダウンロードします。 2....

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

この記事では、MySQL 5.7.20のインストールと設定方法を参考までに紹介します。具体的な内容は...

Tudou.com フロントエンドの概要

1. 分業とプロセス<br />Tudou.comでは、プロジェクト開発が中核であり、誰...

均一なアニメーション効果を実現するJavaScript

この記事の例では、JavaScriptで等速アニメーションを実装するための具体的なコードを参考までに...

jQueryはシンプルなコメントエリアを実装します

この記事では、参考までに、簡単なコメントエリアを実装するためのjQueryの具体的なコードを紹介しま...

LinuxでVIMエディタを使う方法

豊富なオプションを備えた強力なエディターとして、Vim は多くのユーザーに愛されています。この記事で...

HTMLタグの説明

HTMLタグの説明1. HTMLタグタグ: !DOCTYPE説明: HTML ドキュメントが準拠する...

Vueパンくずコンポーネントのカプセル化方法

Vueはパンくずコンポーネントをカプセル化して参照します。具体的な内容は次のとおりです。効果を達成す...

ページスピードの最適化の概要

インターネットは人々の生活にますます欠かせないものになってきていると思います。 Ajax や fle...

MySQLクエリ結果をCSVにエクスポートする方法

MySQL クエリ結果をcsvにエクスポートするには、通常、php を使用して mysql に接続し...

パーティクルダイナミックボタン効果を実現するCSS

オリジナルリンクhttps://github.com/XboxYan/no…ボタンは、おそらく We...

dl、dt、dd リスト ラベルの例

dd タグと dt タグはリストに使用されます。通常は <ul><li> タ...

Linux カーネル デバイス ドライバー システム コールに関する注意事項

/**************************** * システムコール**********...