CentOS は SSH パスワード不要のログインを可能にします
SSH パスワードなしのログインを実装するには、まず公開鍵と秘密鍵のセットを準備する必要があります。公開鍵をサーバーに、秘密鍵をクライアントに配置します。クライアント コンピューターがサーバーに接続すると、サーバーは自身の公開キーに従ってクライアント コンピューターの秘密キーを検証し、検証に合格すると接続が許可されます。
1. キーを作成する
クライアント マシンで次のコマンドを入力して、公開鍵と秘密鍵のセットを作成します。
ssh-keygen
- キーの生成場所: デフォルトでは、キーは現在ログインしているユーザーのホーム ディレクトリの下にある .ssh フォルダー (C:\Users\Master.ssh など) に生成されます。
- 秘密鍵パスワード: デフォルトではパスワードはありません. 秘密鍵パスワードを設定した場合, シークレットなしでログインするときに秘密鍵パスワードを入力する必要があります.
- 秘密鍵パスワードの確認: デフォルトではパスワードなし
コマンドが正常に実行されると、指定した場所にキーが生成されます
- 上記の id_rsa は秘密鍵であり、クライアントに保持する必要があります。SSH 接続時に自動的に使用されるデフォルトの保存場所とデフォルトのファイル名を保持することをお勧めします. 別の場所に保存されているか、別のファイル名に変更されている場合は、SSH 中に秘密鍵の場所を手動で指定する必要があります.繋がり。
- 次の id_rsa.pub は公開鍵であり、サーバーにアップロードする必要があります。パスワードなしでログインする必要があるユーザーのホーム ディレクトリの下にある .ssh フォルダーにアップロードし、/root/.ssh/authorized_keys のように、authorized_keys に名前を変更します。
2.公開鍵をアップロードする
サーバーにリモートでログインし、/root などのパスワードなしでログインする必要があるユーザーのホーム ディレクトリに .ssh という名前のフォルダーを作成し、作成が成功したら接続を終了します。
mkdir .ssh
- mkdir - ディレクトリを作成する
- .ssh - 作成するディレクトリの名前。先頭にドットがあることに注意してください。これは省略できません。
scp コマンドを使用して、公開鍵を以前に作成したディレクトリにアップロードし、その名前をauthorized_keysに変更します
scp .ssh/id_rsa.pub root@centos:/root/.ssh/authorized_keys
- scp - リモートファイルコピー
- .ssh/id_rsa.pub - 公開鍵がある場所
- root - パスワードなしでログインするためのリモート ホスト アカウント。デフォルトは、ローカル ホストの現在のログイン アカウントです。
- centos - リモートホストアドレス
- /root/.ssh/authorized_keys - 公開鍵のアップロード場所
3.ログインテスト
クライアントで次のコマンドを入力して、リモート サーバーにログインします。
ssh root@centos
- ssh - リモート アカウント ログイン
- root - パスワードなしでログインするためのリモート ホスト アカウント。デフォルトは、ローカル ホストの現在のログイン アカウントです。
- centos - リモートホストアドレス
サーバーに接続すると、パスワードを入力せずに正常に接続されていることがわかります
秘密鍵は、現在ログインしているユーザーのホーム ディレクトリの下の .ssh フォルダーに保存する必要があり、ファイル名は id_rsa に設定されます。秘密鍵が別の場所に保存されているか、別のファイル名を使用している場合、-リモートでログインする場合は、i パラメータを使用して秘密鍵を指定する必要があります。
秘密鍵にパスワードが設定されている場合、リモートログイン時に秘密鍵のパスワードを入力する必要があります。