web-dev-qa-db-ja.com

Apt-GetインストールインストールのJenkinsユーザー

Debianインストール手順(apt-get installを使用)を介してUbuntuサーバーにJenkinsをインストールしました。 GitHubのプライベートgitリポジトリからビルドをプルしたいです。それで、SSHアクセスを使用してリポジトリにアクセスする必要があります。

私の検索結果のほとんどは、JenkinsユーザーとしてログインしてGitHubアカウントのSSHキーを生成するように言っていますが、debianパッケージマネージャーを使用してインストールするため、Jenkinsユーザーのパスワードはありません。

Jenkinsサーバーが使用するSSHキーを生成するにはどうすればよいですか?

55
Dave Long

時々、他のタスクを実行するためにジェンキンとしてログインできるようにしたいと思うので、より一般的な問題を解決します。質問に対する厳密な回答が最後に含まれています。

それを知らずにジェンキンスのパスワードを変更する

Sudo 権限を持つアカウントから、jenkinsのパスワードを選択したものにリセットできます。

Sudo passwd jenkins

Sudoを使用するために、最初に自分のパスワードを求められる場合があります。次に、ジェンキンに設定する新しいパスワードの入力を求められ、最後にその新しいパスワードの確認が求められます。

Sudo権限を持つユーザーがjoeと呼ばれる場合、セッションは次のようになります。

joe $ Sudo passwd jenkins
[Sudo] password for joe:     **you enter joe's passwd**
Enter new UNIX password:     ** you enter new jenkins passwd**
Retype new UNIX password:    ** you enter new jenkins passwd**
passwd: password updated successfully

代替案:パスワードなしでジェンキンズとしてログインする

または、適切な他のアカウントから再びSudoを使用して、パスワードを求められることなくジェンキンとしてログインできます。

Sudo su - jenkins

余談:パスワードを避けるプロンプトの混乱

Sudo passwd jenkinsを発行する前に、Sudoで個別に認証して、「今、誰のパスワードを要求されていますか?」という質問に関する混乱を避けることができます。

Sudo -v
Sudo passwd jenkins

Sudoによる認証に成功すると、ウィンドウ(たとえば15分)があり、そこで再度認証するように求められることはありません。 (実験する場合は、Sudo -kでこのセッションをすぐに無効化(強制終了)できることに注意してください。)

約束された厳密な答え

Sudo -u jenkins ssh-keygen

次に、catを使用して、githubに渡される公開キーの内容を表示します(ただし、パスは単なる例です)。

  Sudo cat ~jenkins/.ssh/id_rsa.pub

公開キーファイルの正確な場所と名前は、上記のssh-keygenのプロンプトに入力した内容によって異なります。 jenkinsのホームディレクトリ~jenkinsへのショートカットを使用しました。

関連リンク

94
neillb