GNU/Linux >> Linux の 問題 >  >> Debian

Debian 9システムでSSHキーを設定する-その方法は?

SSH(Secure Shell)は、クライアントシステムがサーバーと安全に通信できるようにする暗号化されたプロトコルです。システムにリモートで接続し、管理タスクを実行し、ファイルにアクセスできます。 SSHキーを使用したサーバーとの通信は、パスワード認証よりも安全で便利な方法です。

ここLinuxAPTでは、サーバー管理サービスの一環として、お客様が関連するSSHクエリを実行するのを定期的に支援しています。

このコンテキストでは、Debian 9システムでSSHキーを作成する方法と、さまざまな方法を使用してサーバーにSSHキーをコピーする方法を検討します。


DebianでキーをSSH接続する方法は?

この手順を実行する前に、sudo権限を持つユーザーを使用していることを確認してください。

私。まず、以下のコマンドを使用して、クライアントシステムにキーペアを作成します。

$ ssh-keygen

ii。デフォルトでは、ssh-keygenは2048ビットのRSAキーペアを生成します。より大きな4096ビットのキーを作成する場合は、次のようにフラグに-b4096を渡すことができます。

$ ssh-keygen -t rsa -b 4096

以下のような出力が表示されます:

Output
Generating public/private rsa key pair.
Enter file in which to save the key (/home/yourusername/.ssh/id_rsa):

iii。 Enterキーを押して、キーペアを./s​​shディレクトリに保存するか、選択に応じて場所を指定できます。

その後、以下のように安全なパスフレーズを入力するように求められます。パスフレーズは、キーにセキュリティレイヤーを追加します。オプションです。設定したくない場合は、Enterキーを押すだけでスキップできます。

Output
Enter passphrase (empty for no passphrase):

次に、次のような出力が表示されます。

Your identification has been saved in /home/yourusername/.ssh/id_rsa.
Your public key has been saved in /home/yourusername/.ssh/id_rsa.pub.
The key fingerprint is:
SHA256:+cxkUbcUyFc7jXMHnQNlm/2O8rj+yDyP5Rnt29ov8Bc [email protected]
The key's randomart image is:
+---[RSA 2048]----+
|           ..oB*o|
|           .ooo*B|
|          .  .+=*|
|         . .   o+|
|        S o     .|
|         *  .  E |
|          + .o+ +|
|           o.Oo=o|
|           .O=B=B|
+----[SHA256]-----+

これで、Debianサーバーでの認証に使用できる公開鍵と秘密鍵ができました。

iv。次のように入力して、ファイルが生成されているかどうかを確認することもできます。

ls ~/.ssh/id_*

次のような出力が表示されます:

/home/yourusername/.ssh/id_rsa /home/yourusername/.ssh/id_rsa.pub


公開鍵をDebianサーバーにコピーする方法は?

次のステップは、Debianサーバーに公開鍵を配置することです。 publicをコピーする簡単で高速な方法は、ssh-copy-idユーティリティを使用することです。

次のコマンドを実行します:

$ ssh-copy-id username@server_ip_address

ユーザー名のパスワードを入力するように求められます:

Output
username@server_ip_address's password:

ユーザーが正常に認証されると、公開鍵がリモートユーザーの〜/ .ssh / authorized_keysファイルに追加され、接続が切断されます。

Output
Number of key(s) added: 1

これで、コマンドssh username @ server_ip_addressを使用してマシンにログインし、追加するキーのみが追加されていることを確認できます。

ローカルシステムにssh-copy-idユーティリティがインストールされていない場合は、次のコマンドを使用して公開鍵をコピーできます。

cat ~/.ssh/id_rsa.pub | ssh remote_username@server_ip_address "mkdir -p ~/.ssh && cat >> ~/.ssh/authorized_keys"

サーバーへのパスワードベースのSSHアクセスがあることを確認してください。そうすれば、上記の方法を使用できるのは自分だけです。


SSHキーを使用してサーバーにログインする方法は?

これで、リモートユーザーのパスワードなしでリモートマシンにログインできるようになります。

SSHコマンドを使用して接続を試みることができます:

$ ssh username@server_ip_address

初めてログインする場合は、次のように表示される場合があります。

yesと入力し、Enterキーを押して続行します:

Output
The authenticity of host '192.168.27.18 (192.168.27.18)' can't be established.
ECDSA key fingerprint is ed:ed:f4:g9:66:ge:53:48:e1:55:00:fd:6d:d7:22:fe.
Are you sure you want to continue connecting (yes/no)? yes

これで、キーにパスフレーズを設定していない場合は、パスフレーズを要求せずにすぐにログインできます。それ以外の場合は、パスフレーズの入力を求められます。認証が成功すると、新しいシェルセッションでDebianサーバーでユーザーアカウントが開きます。


SSHパスワード認証を無効にする方法は?

SSHのパスワード認証を無効にすることで、セキュリティレイヤーをもう1つ追加できます。プロセスを開始する前に、パスワードを入力せずにサーバーに対して認証できること、およびsudoが有効なユーザーアカウントを持っていることを確認してください。

私。 sshを使用してサーバーにログインしましょう:

$ ssh username@server_ip_address

ii。次に、/ etc / ssh/sshd_configにあるSSH構成ファイルを編集します。

$ sudo nano /etc/ssh/sshd_config

iii。 PasswordAuthenticationディレクティブを見つけ、行がコメントアウトされている場合は、その行のコメントを解除し、以下に示すように値を「no」に設定します。

PasswordAuthentication no

iv。ファイルを保存して閉じます。以下のコマンドを使用してSSHサービスを再起動する必要があります:

$ sudo systemctl restart ssh

現在、Debianサーバーでパスワードベースの認証が無効になっています。



Debian
  1. cPanelを使用してSSHキーを設定する方法

  2. Debian9でシステムロケールを設定する

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

  1. PleskでSSHキーを使用する方法

  2. LinuxでSSHキーベースの認証を構成する方法

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

  1. Ssh – Debian 8.0でDiffie-hellman-group1-sha1キー交換を有効にする方法は?

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

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