自宅に Ubuntu サーバーがあり、SSH キーを使用してラップトップからターミナル経由でログインしています。まれに、主に仕事からこのサーバーにアクセスする必要がありますが、仕事用のラップトップにキーをコピーしたくありません。そのためには、単純なパスワードを使用したいのです。
つまり、SSH 構成ファイルからパスワード ログインを有効にすると、キーが含まれていてもラップトップでもパスワードを要求されることになりますか?
この動作を止める方法はありますか?
ありがとう。
答え1
2つの秘密鍵を使用する
同じ手順でワークステーションをセットアップします(ただしないノートパソコンをセットアップしたときと同じ秘密鍵を使用します。
- 他のマシンから秘密鍵をコピーする理由はありません。ワークステーションで新しい秘密鍵をまだ生成していない場合は、今すぐ生成してください。また、対応する公開鍵も生成してください。ワークステーションのターミナルで、
タイプ:ssh-keygen -t rsa
- ワークステーションの公開鍵をサーバーにコピーします。ワークステーションのターミナルで、
タイプ:ssh-copy-id [email protected]
(ただし、実際のユーザー名とホスト名を使用し、後でパスワードを求められた場合はそれを入力します)。
これにより、ワークステーションの公開キーが~/.ssh/authorized_keys
サーバー上のそのユーザーのファイルにインストールされます。
- ステップ 3 はありません。これからは、ワークステーションからサーバーにログインできます。ラップトップからラップトップの秘密のプライベート キーをコピーすることはありません。
詳細
あなたが本当に尋ねているのは
- Ubuntuサーバー(「ホーム」)があります
- 私は自分のラップトップ(「ラップトップ」)からUbuntuサーバーにログインします
- 仕事用のコンピューター (「ワークステーション」) から Ubuntu サーバーにログインすることもできます。
それを実行する正しい方法は何ですか?
- 両方の場所から同じパスワードでログインするだけでよいと思います。公開鍵認証はパスワードよりもはるかに優れていると誰もが言っているので、これは正しい方法ではないでしょう。(ア)
- 秘密鍵をラップトップからワークステーションにコピーするだけでよいと思います。秘密鍵はクライアント マシンから出るべきではないと誰もが言っているので、これは正しい方法ではありません。
サーバー上の 1 つのアカウントには 1 つのユーザー名と、当然ながら 1 つの承認済みパスワードがあるということを、人々はよく理解しています。
sshのような公開鍵システムはパスワードシステムよりも優れています。サーバー上の1つのアカウントには1つのユーザー名があり、任意の数の承認された公開鍵、それらはすべて~/.ssh/authorized_keys
ファイルにリストされています。
(詳細はこちら)。
答え2
パスワードとキーベースの両方のアプローチが利用可能な場合でも、ラップトップでキーファイルを使用するように強制することができます。現在 で接続している場合は、以下を編集して追加します。ssh [email protected] -p 22
~/.ssh/config
Host your.host.tld
PreferredAuthentications publickey
この設定ファイルを使用すると、入力をさらに減らすことができます。
Host home
Hostname your.host.tld
User user
PreferredAuthentications publickey
Port 22
この構成では、 だけが必要ですssh home
。
パスワードベースのログインを特定の IP アドレスに制限することができます。 では/etc/ssh/sshd_config
、パスワードベースの認証を無効にする行があります: PasswordAuthentication no
。特定の IP からのログインに対してこれを有効にするには、次を使用します:
Match Address 12.34.56.78
PasswordAuthentication yes
仕事中でもキーベースの認証を使用することをお勧めします。これは、簡単にブルートフォース攻撃を受けることができないため、パスワードベースの認証よりもはるかに安全です。同じアカウントに複数のキーを持つことができますが、問題にはなりません。
より高度な設定ディレクティブについては、次のマニュアルページを参照してください。ssh_config(5)(サーバー側については、sshd_config(5))
答え3
いいえ、少なくとも私の設定では、パスワード認証を有効にすると、キーがない場合にのみパスワードの入力を求められます。
そうは言っても、インターネットに公開されているサーバーでパスワード認証を有効にすることは決してありません。