要件:
このチュートリアルの手順を開始する前に、次の手順を完了する必要があります。
以前に有効にしていない場合は、Ubuntu で SSH サービスを有効にします。
リモート サーバーでコマンドを実行するための SSH キー ペアを生成します。次のコマンドを実行して、公開鍵と秘密鍵を作成します。秘密鍵はリモート サーバーに保存され、公開鍵はクライアントに安全に保存されます。
次のコマンドを実行して sshd_config を開きます nano エディターでファイルして、必要な構成をいくつか追加します。
$ 須藤ナノ /Etc/ssh/sshd_config次の行をファイルに追加して、ルート ログインとパスワード ベースの認証を有効にします。
パスワード認証 はい サーPermitRootLogin はい
次のコマンドを実行して、SSH サービスを再起動します。
$ sudo サービス ssh 新たに開始構文:
ssh-copy-id コマンドの構文を以下に示します。後で説明するいくつかのオプションをサポートしています。
ssh-copy-id [-lv] [-i キーファイル] [-o オプション][-p ポート] [ユーザー@]ホスト名ssh-copy-id コマンドのさまざまなオプション:
ssh-copy-id コマンドのさまざまなオプションを使用する目的は、チュートリアルのこの部分で説明されています。
機会 | 目的 |
-i キーファイル | ファイルにある公開鍵をコピーするために使用されます .複数回使用できます。 |
-l | ssh エージェントが現在持っているキーをコピーするために使用されます。 -i オプションが指定されていない場合のデフォルトとして使用されます。 |
-o ssh オプション | オプションを直接参照するために使用されます。 ssh を渡します。複数回使用できます。 |
-p ポート | デフォルトのポート 22 の代わりに、リモート ホストの指定されたポートに接続するために使用されます。 |
-v | -v の値を ssh に渡すために使用されます。 |
キーをサーバーにコピーします:
パスワードを使用せずに SSH 接続を確立するには、サーバー コンピューターで公開キーを認証する必要があります。公開鍵が作成された後、ssh-copy-id コマンドはその鍵を認証済みの鍵としてサーバー コンピューターに追加できます。
サーバー コンピューターで次のコマンドを実行して、新しく作成された公開キーをサーバーの承認済みキーとして追加します。
$ ssh-copy-id fahmida@fahida-VirtualBox公開鍵がリモート サーバーに既に存在する場合は、次の出力が表示されます。それ以外の場合、キーが追加されます。
-i オプションを ssh-copy-id コマンドで使用してファイルから公開鍵を追加することは前述しました。新しく作成した公開鍵をデフォルト ファイルに保存した場合、ファイル名は id_rsa.pub です。 .ただし、キー ペアの作成時に任意のファイル名を指定し、そのファイル名を -i オプションで使用しています。公開鍵をデフォルト ファイルに保存しました。
サーバー コンピューターで次のコマンドを実行して、公開キーをサーバー コンピューターに追加します。このコマンドはキーをサーバーにコピーし、キーを authorized_keys に追加するように構成します サーバーにアクセスするためのファイル。
$ ssh-copy-id -I ~/.ssh/id_rsa fahmida@fahida-VirtualBox公開鍵が以前にサーバー コンピューターに追加されていない場合は、次の出力が表示されます。
接続を確認してください:
キーをサーバーに追加したら、クライアント マシンがサーバーに接続できることを確認する必要があります。ここでは、サーバー コンピューターのユーザー名は「fahmida」、クライアント コンピューターは「yesmin」です。そのため、最初にクライアント コンピューターにログオンして接続をテストしてください。
次のコマンドを実行して、サーバーの ID をクライアント コンピューターに追加します。
$ ssh-追加次の ssh コマンドをオプションなしで実行して、サーバー コンピューターに接続します。サーバー コンピューターでパスワード ベースの認証が有効になっている場合、ユーザーは有効なパスワードを入力してサーバーに接続する必要があります。
$ ssh fahmida@fahida-VirtualBox次の出力は、サーバーの ID がクライアント マシンに追加されたことを示しています。次に、サーバー コンピュータでパスワード ベースの認証が有効になっているため、サーバー ユーザーのパスワードが接続を要求しました。ユーザー名は、コマンド プロンプトで「yesmin」から「fahmida」に変更されます。これは、有効なパスワードを入力した後に接続が適切に確立されたことを示します。
サーバーに接続する場所で公開鍵ファイル名を指定するには、次の ssh コマンドを -i オプションで実行します。公開鍵をカスタム ファイル名で保存するときに必要です。キー生成時にデフォルトのファイル名 id_rsa を使用しました。
$ ssh -I ~/.ssh/id_rsa fahmida@fahida-VirtualBox以前と同様に、サーバーに接続するためにパスワードを求められます。出力は、接続が正しく確立され、プロンプトのユーザー名が変更されたことを示しています。サーバーへの接続時にパスワードを提供したくない場合は、サーバーの構成ファイルを変更して、パスワードベースの認証を無効にすることができます。
卒業証書:
ssh-copy-id コマンドを使用してリモート ホストに接続する方法については、このチュートリアルで 2 つのローカル ホスト ユーザー アカウントを使用して説明し、読者がこのコマンドの仕組みを理解できるようにしています。