0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

Jenkinsのジョブが動かない時の対処法

Posted at

経緯

Jenkinsでジョブを作成し実行したところ、エラーが発生してジョブが上手く動かなかった。
本記事はその備忘録として記す

前提

サーバAからサーバBへ接続し、ジョブを実行させたいと思っている。
しかしJenkinsでの実行ログを見ると、どうもサーバAとサーバBの接続が上手くいっていないようだ。
その対処法としていくつか試している状況である。
初めに遭遇したエラーは以下だった。

# ssh danbo@ServerB.co.jp
Host key verification failed.

試したこと

その①

サーバBにknown_hosts情報の削除

# ssh keygen -R danbo@ServerB.co.jp

[-R]オプションは、「指定したホストに属する鍵を全て取り除く」と資料にあり、サーバBに接続する際のknown_hostsに指定された鍵を一度削除するのに有効だと考え、実行。しかし、上手くいかない。しかも別エラーが発生

## 発生したエラー文
Pseudo-terminal will not be allocated because stdin is not a terminal.

その②

更に変なエラーが出てきてしまったので、そちらの対処をすることにした。
以下参考資料にもあるように、オプションを付与することでの接続を試みた

# ssh -t -t danbo@ServerB.co.jp

しかし、付随して発生したエラーは解消されても、本来詰まっていたエラーへの対処にはならなかった。

その③

以下コマンドにて実施

# ssh -o StrictHostKeyChecking=no danbo@ServerB.co.jp

ホストキーの認証をしない設定をオプションとして指定し、実行することでログインすることが出来ました!
参考資料にはファイルに記載するとありましたが、sshの場合オプションで指定してホストキー認証を飛ばすことも可能でした。
※上記オプションの場合、ホストキーが無い場合でもsshによる接続を行うことが出来ます。

まとめ

ホストキー認証で詰まったら、一度認証を飛ばす設定をすると、接続ができる。
また、一度接続さえ出来てしまえば2回目からはホストキーを無視する設定を入れなくてもセッションが出来ているので
2回目以降はオプションを外して接続することも可能だった。

参考資料

ssh-keygen コマンドーーSSHの公開鍵と秘密鍵を作成する
Jenkins CLI
JenkinsJobでssh接続先でコマンドを実行する方法
[Linux] 特定SSHホストのフィンガープリントのチェックを省略する

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?