Битбукет конвейер - как настроить ssh - PullRequest
0 голосов
/ 11 января 2019

Когда мой конвейер работает, я получаю следующие ошибки:

debug1: Next authentication method: publickey
debug1: Trying private key: /root/.ssh/config
debug1: key_load_private_type: incorrect passphrase supplied to decrypt private key
debug1: Next authentication method: password
debug1: read_passphrase: can't open /dev/tty: No such device or address
debug1: Authentications that can continue: publickey,gssapi-keyex,gssapi-with-mic,password
Permission denied, please try again.
debug1: read_passphrase: can't open /dev/tty: No such device or address
debug1: Authentications that can continue: publickey,gssapi-keyex,gssapi-with-mic,password
Permission denied, please try again.
debug1: read_passphrase: can't open /dev/tty: No such device or address
debug1: Authentications that can continue: publickey,gssapi-keyex,gssapi-with-mic,password
lost connection

Это мой файл .yml:

image: maven:3.3.9

pipelines:
  default:
    - step:
        caches:
          - maven
        name: Build
        script: # Modify the commands below to build your repository.
          - echo "Build Start"
          - mvn package
          - echo $BUILD_DIR
          - mv target/**.jar target/transpoDirect.jar
        artifacts:
          - target/**.jar
    - step:
        name: Deploy
        image: maven:3.3.9
        script:
           - ls -la .
           - scp -i ~/.ssh/config -P 7822 -v -o StrictHostKeyChecking=no target/*.jar root@$hostName:/var/transpoDirect/.
           - ssh -p 7822 -i ~/.ssh/config -v -o StrictHostKeyChecking=no root@$hostName sudo service transpoDirect restart

Что я пробовал, так это chmod для папки ~ / .ssh и файлов там 777

Переменная hostName установлена ​​в настройках репозитория.

Повторно сгенерирован ключ. Вставлен в файл authorize_keys на удаленном сервере, но я все еще получаю ту же ошибку

Расположение авторизованных ключей:

enter image description here

=============================================== =================

Вот что работает:

  1. Удалены ключи SSH из конвейера битбакета.
  2. Сгенерировал ключ SSH на удаленном сервере с помощью: ssh-keygen
  3. Используется по умолчанию для вышеуказанной команды и не устанавливает пароль.
  4. Местоположение по умолчанию, где генерируются ключи: /root/.ssh
  5. .ssh папка скрыта. Используя winSCP, вы можете отобразить скрытые папки.
  6. Скопировал содержимое id_rsa.pub с удаленного сервера и вставил в SSH bitbucket.
  7. Создал авторизованные ключи с содержимым id_rsa.pub внутри /root/.ssh
  8. Скопировал содержимое id_rsa с удаленного сервера и вставил в SSH bitbucket.
  9. Копирует банку на удаленный сервер:

    • scp -i /root/.ssh -4 -P 7822 -v -o StrictHostKeyChecking = нет цели / *. Jar root @ $ hostName: / var / transpoDirect /.
  10. Это перезапускает службу, как описано здесь: https://docs.spring.io/spring-boot/docs/current/reference/html/deployment-install.html

    • ssh -4 -p 7822 -i /root/.ssh -v -o StrictHostKeyChecking = без корня @ $ hostName sudo service transpoDirect restart

Ответы [ 2 ]

0 голосов
/ 14 января 2019

Вот что работает:

  1. Удалены ключи SSH из конвейера битбакета.
  2. Сгенерировал ключ SSH на удаленном сервере с помощью: ssh-keygen
  3. Используется по умолчанию для вышеуказанной команды и не устанавливает пароль.
  4. Местоположение по умолчанию, где генерируются ключи: /root/.ssh
  5. .ssh папка скрыта. Используя winSCP, вы можете отобразить скрытые папки.
  6. Скопировал содержимое id_rsa.pub с удаленного сервера и вставил в SSH битбакета.
  7. Создал авторизованные ключи с содержимым id_rsa.pub внутри /root/.ssh
  8. Скопировал содержимое id_rsa с удаленного сервера и вставил в SSH bitbucket.
  9. Копирует банку на удаленный сервер:

    scp -i /root/.ssh -4 -P 7822 -v -o StrictHostKeyChecking = нет цели / *. Jar root @ $ hostName: / var / transpoDirect /.

  10. Это перезапускает службу, как описано здесь: https://docs.spring.io/spring-boot/docs/current/reference/html/deployment-install.html

    ssh -4 -p 7822 -i /root/.ssh -v -o StrictHostKeyChecking = без корня @ $ hostName sudo service transpoDirect restart

0 голосов
/ 11 января 2019

Закрытый ключ, который вы используете с этим ключом SSH, имеет парольную фразу, но вы нигде не задаете парольную фразу в своем YAML. Вы можете либо сгенерировать новый ключ для исключительного использования Pipelines, либо вы можете загрузить копию этого существующего ключа, который не имеет парольной фразы, или вы могли бы использовать переменные окружения для предоставления парольной фразы.

...