Я намагаюся створити ключ ssh для іншого користувача. Я ввійшов як root. Чи можу я просто відредагувати файли, створені ssh-keygen та змінити root на потрібного користувача?
Я намагаюся створити ключ ssh для іншого користувача. Я ввійшов як root. Чи можу я просто відредагувати файли, створені ssh-keygen та змінити root на потрібного користувача?
Відповіді:
Ви можете це зробити ssh-keygen
, однак пам’ятайте, що приватний ключ призначений для приватного користувача, тому вам слід бути дуже обережним, щоб зберегти його так само безпечно, як і пароль користувача. Або навіть безпечніше, оскільки користувач, ймовірно, не вимагатиме змінити його під час першого входу.
ssh-keygen -f anything
створює два файли в поточному каталозі. anything.pub
це відкритий ключ, який ви можете додати користувачеві ~/.ssh/authorized_keys
на будь-якому сервері призначення.
Інший файл, щойно викликаний, anything
- це приватний ключ, і тому його слід безпечно зберігати для користувача. Місце за замовчуванням було б ~username/.ssh/id_rsa
(тут названо id_rsa
, яке є типовим для клавіш rsa). Пам’ятайте, що .ssh
каталог не може читатись або записувати хтось, окрім користувача, а домашній каталог користувача не може бути записаний будь-ким, окрім користувача. Крім того, дозволи повинні бути чіткими і для приватного ключа: Читати / писати тільки для користувача, а каталог .ssh та приватний файл ключів повинні належати користувачеві.
Технічно ви могли зберігати ключ де завгодно. З ssh -i path/to/privatekey
можна вказати , що розташування, при підключенні. Знову-таки, належне право власності та дозволи є критичними, і ssh не працюватиме, якщо ви їх не маєте права.
ssh -i
до приватного ключа для непривілейованого процесу - це те, як я обробляю більше ніж декілька автоматизованих процесів резервного копіювання rsync. :)
users
абоuser's
У ключах SSH немає інформації про користувача .
Останнє поле в відкритому ключі - це коментар (і його можна змінити, виконавши наступну команду ssh-keygen -C newcomment
).
Не потрібно робити нічого особливого, щоб зробити ключ для іншого користувача, просто поставте його в потрібне місце та встановіть дозволи.
Станьте користувачем, використовуючи su та запустіть ключ як цей користувач:
[root@kvm0001 ~]# su - joeuser
[joeuser@kvm0001 ~]$ ssh-keygen -t dsa (or rsa1 or rsa, depending on your security requirements)
Generating public/private dsa key pair.
Enter file in which to save the key (/home/joeuser/.ssh/id_dsa):
joeuser
користувач послуги, тому я не можу ввійти як їх. Як дозволити користувачеві послуги (який просто запускає процеси) мати ключ ssh?