OS X, SSH: використовувати різні файли приватних ключів для різних серверів


3

Я хочу використовувати різні файли приватних ключів для підключення до різних серверів SSH ( ssh://git-server:port/repository). Як це впоратися? Схоже, SSH передбачає файл приватного ключа в ~/.ssh/id_rsa.

Відповіді:


5

Ось чому є -iваріант:

-i identity_file

Вибирає файл, з якого зчитується ідентифікація (приватний ключ) для аутентифікації RSA або DSA. За замовчуванням ~/.ssh/identityдля протоколу версії 1, а ~/.ssh/id_rsaі ~/.ssh/id_dsaдля протоколу версії 2.

Файли ідентичності також можуть бути вказані на основі хоста у файлі конфігурації. Можливо мати декілька -iваріантів (і декілька ідентичностей, вказаних у файлах конфігурації).

Якщо ви хочете зробити це постійним, вам потрібно встановити файл конфігурації SSH і встановити відповідний IdentityFileпараметр .

IdentityFile

Вказує файл, з якого зчитується ідентифікація користувача DSA, ECDSA або DSA. […]

Якщо ви бачите подібне до цього діалогове вікно:

введіть тут опис зображення

Потрібно ввести пароль користувача для свого облікового запису OS X. Не ваша ключова парольна фраза чи пароль віддаленого SSH. Це тому, що їх особистість не зберігається в брелоку.

Відповідно до цього підручника , наступна команда повинна додати їх належним чином:

ssh-add -K

Гаразд, я це зробив зараз, але, намагаючись увійти, OS X запитує в окремому діалоговому вікні пароль замість парольної фрази . Я ввожу правильну парольну фразу для файлів приватного ключа, але вона все ще не може увійти. Будь-які подальші ідеї?
Майк Л.

Якщо він запитає вас про пароль , це SSH-пароль на віддаленій машині, а не парольна фраза для ключа.
slhck

Ні, ні, він запитує у мене пароль для мого файлу з приватним ключем - принаймні, так говорить діалог. До речі, без парольної фрази SSH нічого не вдалося зробити на віддаленій машині.
Майк Л.

Гм. Я не фахівець з СШ, мушу визнати. Що саме говорить цей діалог?
slhck

Я налаштував IdentityFile = ~/secret/pk-fileв ~/.ssh/configі викликати ssh myserver. Діалогове вікно, що виникає Enter your password for the SSH key "pk-file"., показує Passwordполе введення та два прапорці ( Show passwordі Remember passwod in my keychain). Я ввожу правильну парольну фразу, але мене запитують ще 2 рази, а потім SSH перериває з RSA host key for IP address '1.2.3.4' not in list of known hosts. Permission denied (publickey).(1.2.3.4 - манекен).
Майк Л.

1

Найпростіший спосіб досягти цього - за допомогою файлу ssh config.

cat ~ / .ssh / config

HOST *  
     USER root

Ви також можете вказати певні субдомени, які використовують певні користувачі. Корисно, якщо ваш ноутбук подорожує між мережами.

HOST 192.168.*.*
     USER homeuser

HOST 10.2.*.*
     USER workuser

Ви навіть можете налаштувати домени та використовувати різні клавіші ssh для різних доменів.

HOST *.microsoft.com
     USER bill
     IdentityFile ~/.ssh/microsoft/id_rsa

HOST *.apple.com
     USER steve
     IdentityFile ~/.ssh/apple/id_rsa
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.