Сгенерировать открытый/закрытый ключ SSH на локальном сервере

Сгенерировать открытый/закрытый ключ SSH на локальном сервере

Сегодня я настроил 3 сервера (4 из которых включают сервер, отправляющий команды SSH) с открытым ключом SSH, чтобы я мог автоматизировать некоторые скрипты.

Работает на первых двух системах, но не на третьей. 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

Поскольку на двух удаленных серверах используется одинаковая версия Unix/OpenSSH, проблема может заключаться в permissionфайлах в .sshпапке.

Пожалуйста, подтвердите, что:

  • .sshразрешения на запись в каталоге не доступны для группы/других (например, 700 (drwx------) или 755)(drwxr-xr-x)
  • открытый ключ (файл .pub) и authorized_keys644(-rw-r--r--)
  • закрытый ключ (id_rsa) — 600(-rw-------)

Если вы пытаетесь войти на rootудаленный сервер, вам следует также подтвердить, что он /etc/ssh/sshd_configсодержит PermitRootLogin yesили PermitRootLogin without-password.

Связанный контент