GNU/Linux >> Linux の 問題 >  >> Ubuntu

ssh-keygenを使用してパスワードなしのSSHログインを設定する方法は?

Secure Shell(SSH)は、リモートサーバーのログインとコマンドの実行に使用される信頼できるオープンソースのネットワークプロトコルです。 SSHは、SCP(セキュアコピー)プロトコルを使用して、あるコンピューターから別のコンピューターにファイルを転送したり、リモートサーバーからローカルコンピューターにファイルをダウンロードしたりするためにも使用されます。

SSHは2つの方法で有効にできます

  1. キーベースの認証
  2. パスワードベースの認証

キーベースの認証は、一般にパスワードなしのログインとして知られています。

この記事では、ssh-keygenとssh-copy-idを使用してパスワードなしのログインを有効にする方法について説明します。

ssh-keygenは秘密鍵と公開鍵を生成し、ssh-copy-idはローカルホストの公開鍵をリモートサーバーのauthorized_keysファイルにコピーします。 Ssh-copy-idは、適切な権限をリモートホストに自動的に割り当てます。

ssh-keygenを使用してsshキーペアを生成し、リモートホストにコピーします

次のコマンドを実行して、公開鍵と秘密鍵を生成します。

$ ssh-keygen

キーファイルとパスフレーズを保存するディレクトリを設定するように求められます。 Enterキーを押すだけで、各ステップのデフォルトを設定して続行できます。

ユーザーのホームディレクトリで次のコマンドを実行して、生成されたファイルを一覧表示します。

$ cd ~/.ssh

id_rsaおよびid_rsa.pubファイルを見ることができます。 Id_rsaは秘密鍵ファイルであり、秘密にしておく必要があります。一方、id_rsa.pubは公開鍵ファイルであり、リモートサーバーにコピーする必要があります。

次に、次のコマンドを実行して、公開鍵をリモートホストにコピーします。

構文

$ ssh-copy-id [email protected]_host_ip

$ ssh-copy-id [email protected]

パスワードを入力せずにログインしてみてください

$ ssh [email protected]_host_ip

$ ssh [email protected]

出力は、パスワードなしのログインが成功したことを示しています。パスワードを入力する必要はありません。

id_rsaの内容を手動でコピーして、リモートサーバーのauthorized_keysファイル内に貼り付けることもできます。これはssh-copy-idがあなたのために行うことです。

結論

この記事では、ssh-keygenとssh-copy-idを使用してsshパスワードなしのログインを有効にする方法を学びました。提案やフィードバックがある場合は、下にコメントをドロップしてください。


Ubuntu
  1. Ssh –遅すぎるSshログインを高速化する方法は?

  2. Linux で「パスワードなし」の ssh ログイン用に SSH キーをセットアップする方法

  3. ssh コマンドを使用してリモート ホストに接続する方法

  1. MegaCLIを使用してハードウェアRAIDをセットアップする方法

  2. BMCリモートコンソール機能を使用してサーバーに接続する方法

  3. Linux でパスワードなしの SSH ログインをセットアップする方法

  1. パスワードなしのSSHログインを設定する方法

  2. Ubuntu18.04でSSHキーを設定する方法

  3. Ubuntu20.04でSSHキーを設定する方法