2016-10-05 4 views
5

に展開するためのセットアップのsshエージェントに私が達成したいワークフローです どのように私の私有鍵を保存する必要がありますか? sshエージェントでリモートサーバにsshできるようにするには?のBitbucketパイプラインは、どのようにリモートサーバーここで

Pipelineのenv設定に秘密鍵を保存するのはちょっと嫌です。他の誰もがリポジトリへの管理者アクセス権を持っているので、それを見ることができます。

hereと似た質問がありますが、答えはドッカーのキーを設定し、プライベートレポを使用することを示唆しています。これは私とは少し異なります。

答えて

0

私は同様のプロセスを設定し、パイプライン環境変数を使用しました。値を保護するためのチェックボックスがあり、他の人が気にする必要はありません。

は、設定は非常に簡単です:

  • Base64では、秘密鍵をエンコードし、
  • が パブリックSSHを含んで、あなたのコードベースへの「my_known_hosts」ファイルをコミットのBitbucketに環境変数 に格納しリモートホストのキー。あなたのビットバケット-pipelines.ymlファイルで、その後

はknown_hostsファイルを設定し、キー:

- mkdir -p ~/.ssh 
- cat my_known_hosts >> ~/.ssh/known_hosts 
- (umask 077 ; echo $MY_SSH_KEY | base64 --decode > ~/.ssh/id_rsa) 

完全なドキュメントはこちらhttps://confluence.atlassian.com/bitbucket/access-remote-hosts-via-ssh-847452940.html

2

あなたできるようになりましパイプライン設定で設定SSHキーのように環境変数を使用したり、コンテナ内の特定の場所にコピーする必要はありません。秘密鍵はまったく表示されません。

Settings -> Pipelines -> SSH keys

の下であなたは、生産コンテナのknown_hostsファイルに公開鍵を取得する必要があります。

関連する問題