Відповіді:
Відредаговано: Якщо ви володієте обома машинами, ви можете поділитися своїм приватним ключем. Але це рішення не є безпечним для випадків викраденого ноутбука або для машин, якими ви не володієте.
Ви можете скопіювати свої приватні ключі з H1 в H2, якщо ви хочете використовувати той самий приватний ключ, щоб мати змогу входити з H2 в S1. Коли ви на H1 виконуєте команди:
H1$ ssh H2 mkdir ~/.ssh
H1$ scp ~/.ssh/id_rsa ~/.ssh/id_dsa H2:~/.ssh/
Увага! Це видалить і замінить будь-який приватний ключ, який ви мали у H2.
Кращий спосіб - генерувати нові приватні ключі на H2 ( ssh-keygen
) та встановлювати їх публічну частину на S1 за допомогою ssh-copy-id
утиліти. У цьому безпечнішому випадку у вас буде два набори ключів; один для входу в H1-S1, а другий для входу в H1-S1. У S1 будуть два авторизовані відкриті ключі. І ви зможете відкликати будь-який з них або обидва (наприклад, коли ваш ноутбук викрадений або власник машини вирішить вимкнути ваш обліковий запис і повторно використовувати всі ваші файли).
Використовуйте ssh-copy-id
СИНОПИС
ssh-copy-id [-i [ident_file]] [користувач @] машина
ОПИС
ssh-copy-id - це скрипт, який використовує ssh для входу у віддалену машину та додає вказаний файл ідентичності до файлу ~ / .ssh / autoriziran_keys цієї машини.
Налаштуйте H2, використовуючи той самий процес (але не той самий приватний ключ), що ви робили під час налаштування H1:
тип: ssh-keygen -t rsa
тип: ssh-copy-id username@S1.net
(але використовуйте власне ім’я користувача на ім'я хоста S1 та S1, а пізніше введіть свій пароль на S1, коли він вимагатиме цього).
При цьому встановлюється відкритий ключ вашої робочої станції у ~/.ssh/authorized_keys
файл для цього користувача на сервері.
Я припускаю, що ви насправді просите
Який правильний спосіб зробити це?
Людям забито в голову, що один обліковий запис на сервері має одне ім’я користувача та, звичайно, єдиний авторизований пароль.
Системи з відкритим ключем, такі як ssh, краще, ніж система паролів: Один обліковий запис на сервері має одне ім’я користувача та будь-яку кількість авторизованих відкритих ключів , усі вони вказані у ~/.ssh/authorized_keys
файлі.
( детальніше ).
Чи зробить ssh-copy-id роботу за вас: http://linux.die.net/man/1/ssh-copy-id ?
Для переміщення ключів SSH з одного комп'ютера на інший. Просто скопіюйте всю папку з ~ / .ssh з H1 (стара машина) в папку вмісту ~ / .ssh нової машини H2.
Тепер спробуйте:
ssh ubuntu@13.123.43.26 (ваш S1 ip)
Найімовірніше, ви отримаєте попередження про дозвіл на виправлення запуску:
chmod 400 ~ / .ssh / id_rsa
Тепер знову:
ssh ubuntu@13.123.43.26 (ваш S1 ip)
Зараз це буде добре працювати.
ssh-copy-id
є більш неправомірним (відсутність перезапису існуючих ключів або випадкове копіювання приватного ключа замість відкритого ключа) і менш відомим рішенням, будь ласка, розглянути можливість прийняти одну з цих відповідей як прийняту відповідь.