Підключення SSH з ключем OpenSSH


0

У мене є сервер CentOS 6, і я хочу підключитися до нього за допомогою приватного ключа.

У Windows я використовую PuTTY Keygen і вставляю відкритий ключ в свій сервер, в .ssh/authorized_keys2(також намагався authorized_keys, не пам'ятаю, чому я використовую authorized_keys2).

Потім я зберігаю закритий ключ "name.ppk" і використовую його з PuTTY (і конкурсом). Все нормально, поки не буде. З'єднання успішно завершено.

Проблема виникає, коли я намагаюся з'єднатися з іншою системою Linux.

Я використовую опцію експорту puttykeygen для експорту ключа OpenSSH і використання його з моєї іншої системи Linux, але він не працює. Це завжди говорить

Відмовлено в дозволі (відкритий ключ, gssapi-with-mic)

Також спробував створити ключ з інших систем Linux з:

ssh-keygen -t dsa

-t rsa) і вставте відкритий ключ на мій сервер CentOS, де я хочу підключитися. Я спробував вставити його в обидва файли ( authorized_keysі authorized_keys2), але нічого не працює.

Насправді, я намагався підключитися з іншого реального сервера CentOS, один віртуальний сервер CentOS на тій же Windows 7, що може з'єднатися за допомогою PuTTY і одного віртуального сервера Debian на тій самій Windows 7.

Віртуальний сервер CentOS і віртуальний сервер Debian можуть з'єднуватися один з одним за допомогою клавіш.

Крім того, конфіг відрізняється. Обидва віртуальні сервери мають sshd_configтиповим значенням, в той час як головний сервер CentOS 6 має конфіг, який я знайшов багато років тому, намагаючись зробити це безпечніше, відключивши логін без ключа і т.д.

Ось моя конфігурація CentOS 6 (без деяких коментарів):

Port xxxx
Protocol 2

SyslogFacility AUTHPRIV

PermitRootLogin yes
PasswordAuthentication no

ChallengeResponseAuthentication no

GSSAPIAuthentication yes
GSSAPICleanupCredentials yes

UsePAM no

AcceptEnv LANG LC_CTYPE LC_NUMERIC LC_TIME LC_COLLATE LC_MONETARY LC_MESSAGES 
AcceptEnv LC_PAPER LC_NAME LC_ADDRESS LC_TELEPHONE LC_MEASUREMENT 
AcceptEnv LC_IDENTIFICATION LC_ALL
X11Forwarding yes
UseDNS no

Subsystem   sftp    /usr/libexec/openssh/sftp-server

Які дозволи мають файли? Запустіть ls -laу каталозі .ssh перевірку. Див. Мою відповідь у stackoverflow.com/questions/14664723/… за правильні дозволи.
Edu

-rw-r - r-- Якщо дозволу було неправильним, чи працюють вони замазкою? тому що я можу з'єднатися з putty на вікнах, але не можу з ssh на centos або debian

Це правда, що клієнт не повинен мати значення з дозволами. Спробуйте з’єднатися з, ssh -v hostщоб отримати вихід налагодження. Ви можете вказати параметр v кілька разів, щоб бути ще більш детальним. /var/log/auth.log також може допомогти у виведенні того, що неправильно.
Edu

Я нарешті отримав це. Проблема в тому, що я використовую ім'я для кожного закритого ключа (як у вікнах), але ssh завжди намагається використовувати тільки ключ id_dsa
Noogic

Добре, що ви знайшли проблему. Ви можете вказати ключ, який буде використовуватися з опцією -i.
Edu
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.