ローカルサーバーでSSH公開/秘密鍵を生成する

ローカルサーバーでSSH公開/秘密鍵を生成する

今日では、一部のスクリプトを自動化できるように、公開SSHキーを使用して3台のサーバー(SSHコマンドを送信するサーバーを含む4台)を設定しました。

最初の2つのシステムでは機能しますが、3番目のシステムでは機能しません。 SSH コマンドを送信すると、SSH はまだパスワードの入力を求められます。

ローカルサーバーでSSH公開/秘密鍵を生成する

root@local # ssh-keygen -t rsa
file > /var/.ssh_keys/id_rsa
passphrase > (empty)
root@local # ln -s /var/.ssh_keys/id_rsa /root/.ssh/id_rsa

ローカルサーバーのキーをリモートホストに接続する

root@local # cat /var/.ssh_keys/id_rsa.pub | ssh root@host 'path="/var/.ssh_remote_key" && mkdir -p $path && cat >> $path/authorized_keys && ln -s $path/authorized_keys /root/.ssh/authorized_keys'

ローカルサーバー

# uname -a
Linux 3.16.0-4-amd64 #1 SMP Debian 3.16.7-ckt11-1+deb8u3 (2015-08-04) x86_64 GNU/Linux

# sshd -V
OpenSSH_6.7p1 Debian-5, OpenSSL 1.0.1k 8 Jan 2015

リモートサーバー(稼働中)

# uname -a
Linux 3.16.0-4-amd64 #1 SMP Debian 3.16.39-1+deb8u2 (2017-03-07) x86_64 GNU/Linux

# sshd -V
OpenSSH_6.7p1 Debian-5+deb8u3, OpenSSL 1.0.1t  3 May 2016

リモートサーバー(まだパスワードの入力を求められます)

# uname -a
Linux 3.16.0-4-amd64 #1 SMP Debian 3.16.7-ckt25-2 (2016-04-08) x86_64 GNU/Linux

# sshd -V
OpenSSH_6.7p1 Debian-5+deb8u2, OpenSSL 1.0.1k 8 Jan 2015

CHMOD /root/.ssh = 0700
CHMOD /root/.ssh/authorized_keys = 0644

ベストアンサー1

permissionどちらのリモートサーバーも同じバージョンのUnix / OpenSSHを共有しているため、フォルダ内のファイルに問題がある可能性があります.ssh

確認してください:

  • .ssh(drwx------) ディレクトリ権限はグループ/その他(700や755など)に書き込むことはできません。(drwxr-xr-x)
  • 公開鍵(.pubファイル)で、authorized_keys644です。(-rw-r--r--)
  • 秘密鍵(id_rsa)は600です。(-rw-------)

rootリモートサーバーにログインしたい場合、/etc/ssh/sshd_configまたはPermitRootLogin yesPermitRootLogin without-password

おすすめ記事