Копіювання ssh-ключів на сервер
Розкажи, як за допомогою команди "ssh-copy-id" скопіювати ssh-ключі на сервер. На моєму локальному комп'ютері в /home/olex/.ssh/ є два публічних ключа: crus.pub olex.pub Перший я хочу використати на сервері для користувача "root", другий для користувача "olex".
Команда ssh-copy-id
спрощує копіювання публічного ключа SSH на віддалений сервер — вона автоматично додає ключ до ~/.ssh/authorized_keys
відповідного користувача.
У твоєму випадку потрібно окремо скопіювати crus.pub
для root
і olex.pub
для olex
. Ось як це зробити:
1. Скопіювати crus.pub
для користувача root
crus.pub
для користувача root
ssh-copy-id -i ~/.ssh/crus.pub root@your.server.ip
Пояснення:
-i ~/.ssh/crus.pub
— вказує конкретний публічний ключ.root@your.server.ip
— адреса і користувач сервера.
🔒 Після цього root
зможе входити по SSH з приватним ключем, який відповідає crus.pub
.
2. Скопіювати olex.pub
для користувача olex
olex.pub
для користувача olex
ssh-copy-id -i ~/.ssh/olex.pub olex@your.server.ip
Примітки:
Перед виконанням команда
ssh-copy-id
підключиться до сервера і попросить пароль відповідного користувача (root
абоolex
).Якщо в користувача ще не існує директорії
~/.ssh
, вона буде створена автоматично.У тебе має бути відповідний приватний ключ до кожного з
*.pub
на локальній машині, наприклад:crus
→ приватний доcrus.pub
olex
→ приватний доolex.pub
Перевірити, що ключ скопійовано:
На сервері (наприклад, через root
), подивись вміст файлу:
cat ~/.ssh/authorized_keys
Аналогічно для olex
:
sudo -u olex cat /home/olex/.ssh/authorized_keys
Готово. Тепер ти можеш входити на сервер як root
або olex
без введення пароля, якщо приватні ключі у тебе в локальному ~/.ssh
і мають права 600
, а директорія ~/.ssh
— права 700
.
Last updated