Русское сообщество разработки на PHP-фреймворке Laravel.
Ты не вошёл. Вход тут.
Страницы 1
Всем привет!
Выполняю run envoy и введя пароль юзера и получаю ошибку доступа ssh publickey
$ envoy run VotesDeploy
lardeployer@NNN.NN.NN.NN's password:
[lardeployer@NNN.NN.NN.NN]: Cloning into '20190314070955'...
[lardeployer@NNN.NN.NN.NN]: git clone git@bitbucket.org: Permission denied (publickey).
[lardeployer@NNN.NN.NN.NN]: fatal: Could not read from remote repository.
[lardeployer@NNN.NN.NN.NN]: Please make sure you have the correct access rights
...
Между тем если на самом сервере(Ubuntu 18 под Digital Ocean) переключиться на пользователя что я использую в envoy
su -l lardeployer
git clone git@bitbucket.org:myaccount/votes.git
проект успешно загружается
В моем envoy файле:
@setup
$server_login_user= 'lardeployer';
...
@endsetup
@servers(['production' => $server_login_user.'@NNN.NN.NN.NN'])
В чем проблема ? Нехватка прав для юзера lardeployer?
Спасибо!
Не в сети
А ты пробовал не переключаться на пользователя через su, а открывать консоль сразу им? Это будет ближе к тому, что происходит через envoy.
Изменено artoodetoo (14.03.2019 11:18:46)
There are two hard things in computer science: cache invalidation, naming things, and off-by-one errors.
Не в сети
То есть заместо
ssh root@N.N.N.N
входить
ssh lardeployer@N.N.N.N
попробовал зашел и нормально загрузил проект через git clone
А чего ж не захотел через envoy ?
Не в сети
На моем локальном компе файлы в .ssh/ имеют права :
$ ls -la
total 36
drwxrwxrwx 2 serge serge 4096 .
drwxr-xr-x 48 serge serge 4096 ..
-rw-r--r-- 1 root root 398 authorized_keys
-rwx------ 1 serge serge 181 config
-rw------- 1 serge serge 1679 id_rsa
-r-------- 1 serge serge 426 id_rsa.pem
-r-------- 1 serge serge 393 id_rsa.pub
-rwxrwxrwx 1 serge serge 5882 known_hosts
и я нормально работаю с git в командной сртоке используя ssh
Не может ли прчина быть в том что нужны друние права этих файлов ?
Не в сети
Ну вроде как приватный ключ должен быть 0400, authorized_keys 0600, а папка .ssh 0700
Ты же проверил, если ты можешь войти как нужный пользователь и от его имени можешь соединиться дальше с bitbucket, то вроде тот удалённый хост принял доступы.
Или таки нет?
There are two hard things in computer science: cache invalidation, naming things, and off-by-one errors.
Не в сети
У тебя почему-то authorized_keys принадлежит не пользователю, а руту. и ты был вынужден выставить больше доступа, это неправильно.
В инструкциях к AWS пишут про 400 для приватного ключа, но реально примет и 600.
Публичный ключ незачем прятать, само наличие его здесь ни на что не влияет.
Изменено artoodetoo (14.03.2019 15:04:45)
There are two hard things in computer science: cache invalidation, naming things, and off-by-one errors.
Не в сети
для уверенности попробуй как супер-пользователь:
chown +R serge:serge .ssh/
chmod 0600 .ssh/*
chmod 0700 .ssh
Изменено artoodetoo (14.03.2019 14:51:22)
There are two hard things in computer science: cache invalidation, naming things, and off-by-one errors.
Не в сети
Это выполнять локально ?
Полчуаю ошибку :
# chown +R serge:serge .ssh/
chown: invalid user: ‘+R’
Не в сети
Блин, это опечатка. Ключ -R, а не +R. Сейчас мне уже не даёт редактировать страницу.
Выполнять на том компе, с которого давал листинг ))) А на том на который деплоишь - то же самое, только пользователь lardeployer, а не serge.
There are two hard things in computer science: cache invalidation, naming things, and off-by-one errors.
Не в сети
Спасибо за помощь !
Я постарался выпонить вышеуказанные команды и перезапустил систему, но та же самая ошибка. Имею доступ локально:
serge@serge:~/.ssh$ ls -la
total 36
drwx------ 2 serge serge 4096 9 16:36 .
drwxr-xr-x 48 serge serge 4096 15 06:10 ..
-rw-r--r-- 1 serge serge 398 26 07:57 authorized_keys
-rwx------ 1 serge serge 181 9 16:33 config
-rw------- 1 serge serge 1679 25 2018 id_rsa
-r-------- 1 serge serge 426 3 10:35 id_rsa.pem
-r-------- 1 serge serge 393 25 2018 id_rsa.pub
-rwxrwxrwx 1 serge serge 5882 6 18:35 known_hosts
И на сервере :
root@nsn-do-lamp:~# cd /home/lardeployer/.ssh/
root@nsn-do-lamp:/home/lardeployer/.ssh# ls -la
total 24
drwx------ 2 lardeployer lardeployer 4096 Mar 10 04:43 .
drwxr-xr-x 7 lardeployer lardeployer 4096 Mar 15 04:32 ..
-rw-r--r-- 1 lardeployer lardeployer 182 Mar 10 04:31 config
-rw-r--r-- 1 lardeployer lardeployer 1680 Mar 10 04:31 id_rsa
-rw-r--r-- 1 lardeployer lardeployer 394 Mar 9 05:57 id_rsa.pub
-rw-r--r-- 1 lardeployer lardeployer 1768 Mar 10 04:40 known_hosts
Я то-то упустил из ваших инструкций?
Но выполнив по вашему совету вход через своего созданного юзера получил ошибку, что на приватный ключ слишком много прав :
ssh lardeployer@NNN.NN.NN.N
$ git clone git@bitbucket.org:sergeynilov/votes.git
Cloning into 'votes'...
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@ WARNING: UNPROTECTED PRIVATE KEY FILE! @
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
Permissions 0644 for '/home/lardeployer/.ssh/id_rsa' are too open.
It is required that your private key files are NOT accessible by others.
This private key will be ignored.
Load key "/home/lardeployer/.ssh/id_rsa": bad permissions
git@bitbucket.org: Permission denied (publickey).
fatal: Could not read from remote repository.
Please make sure you have the correct access rights
and the repository exists.
Непонятно откуда там взялось 0644 и как быть дальше ?
Не в сети
Ты не выполнил / выполнил с недостаточными правами / в неправильном месте. Сам же видишь разницу в правах на локальном и удаленном месте.
Значит изначально там и было 644 и это может объяснить проблему с деплоем. Я только не понял почему ты писал, что всё работает, если зайти как laradeploy.
Извини, я не буду дальше продолжать. Всё, что считал нужным по теме, я уже написал.
There are two hard things in computer science: cache invalidation, naming things, and off-by-one errors.
Не в сети
Страницы 1