Я настраиваю сервер для поддержки SSH с аутентификацией ключа хоста, которая в настоящее время обрабатывается старым умирающим сервером. На данный момент я могу успешно соединиться с SSH и взаимодействовать в терминале, как обычно. Однако, если я включаю команду или помещаю SSH в команду RSync, я получаю ошибку "Ошибка проверки ключа хоста".
Итак, эта команда работает:
ssh -o StrictHostKeyChecking=no -i /cygdrive/C/keys/id_rsa user@192.168.0.2
Пока следующего нет:
ssh -o StrictHostKeyChecking=no -T -i /cygdrive/C/keys/id_rsa user@192.168.0.2 ssh 192.168.0.2 mkdir -p /mnt/storage/new_folder
Однако они оба работают при указании на старый сервер, поэтому сами команды должны быть в порядке. Кроме того, если мне удастся не изменять команды, это позволит нам быть обратно совместимыми.
Я включаю настройки sshd_config на новом сервере (которые были настроены для имитации старого сервера) ниже, на случай, если они помогут, единственные элементы здесь - это те, которые не были закомментированы.
HostbasedAuthentication нет
RhostsRSAАутентификация нет
PermitEmptyPasswords нет
ChallengeResponseAuthentication no
UsePAM да
X11 переадресация да
PrintMotd нет
РаспечататьLastLog да
TCPKeepAlive да
AcceptEnv LANG LC_ *
Подсистема sftp /usr /lib /openssh /sftp-server
PubkeyAuthentication да
RSAАутентификация да
LoginGraceTime 2м
PermitRootLogin да
StrictModes да
Новый сервер - Ubuntu 17.10 (будет обновлен до LTS, когда следующий выйдет в ближайшее время). Старый сервер - Debian 6.0.6.
Изменить: Забыл упомянуть, эта ошибка также происходит, когда я использую RSync с '-e'. Однако я обнаружил, что в команде RSync я могу решить эту проблему, используя username@192.168.0.2:/mnt/storage/new_folder
в параметре удаленного пути. Если я удалю «username @», то получу ошибку снова. Опять же, сбойная версия отлично работает на старой подаче, но только с новым сервером. Также имейте в виду, что это устаревший код, поэтому, если я смогу заставить старые команды работать как есть, это сэкономит мне кучу времени на загрузку обновлений.