It is required that your private key files are NOT accessible by others. This private key will be ignored.対処方法
Jenkinsからscp/sshした時、「It is required that your private key files are NOT accessible by others. This private key will be ignored.」が表示した時の対処方法
Jenkinsから以下のコマンドを実行した。
scp -P22 -o 'StrictHostKeyChecking no' -C -i '/var/lib/jenkins/xxxxx_private.key' ./test.txt test@xxxx.com:test
以下のエラー表示されコピー先のホストに対してファイル転送が失敗したので、その時の対処方法を記載しておく。
Started by user xxxx
Building in workspace /var/lib/jenkins/workspace/mysql_backup
[mysql_backup] $ /bin/bash /tmp/jenkinsxxxxxx.sh
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@ WARNING: UNPROTECTED PRIVATE KEY FILE! @
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
Permissions 0444 for '/var/lib/jenkins/xxxxx_private.key' are too open.
It is required that your private key files are NOT accessible by others.
This private key will be ignored.
Load key "/var/lib/jenkins/xxxxx_private.key": bad permissions
Permission denied (publickey,gssapi-keyex,gssapi-with-mic).
lost connection
Finished: SUCCESS
エラーの原因は、秘密鍵ファイルは他からアクセスできないようにしてくださいという警告でした。ファイルのアクセス権を見たところ、
-rw-rw---- 1 jenkins jenkins 1704 Oct 2 17:03 xxxxxx_private.txt
となっていたので、警告をだされていたみたいだ。パーミッションを変更した。
chmod 600 xxxxxx_private.txt
[taro@test jenkins]# chmod 600 xxxxxx_private.txt
[taro@test jenkins]# ls -ls|grep xxxxxx_private.txt
4 -rw------- 1 jenkins jenkins 1704 Oct 2 17:03 xxxxxx_private.txt
[taro@test jenkins]#
無事、scpコマンドでファイルを転送先にコピーできた。