前提・実現したいこと
Windows 10のPCからRundeckを用いて、Windows Server 2019(AWSのEC2インスタンス)上でジョブを実行しようとしています。
RundeckはChocolateyを使用して最新版をインストールし、ローカルPC(Windows10)上でのジョブの実行ができることを確認しています。
Windows Server 2019ではOpenSSHをインストールし、Windows10のPCから、PowerShell上でSSH接続(公開鍵接続)が出来ることを確認しています。
発生している問題・エラーメッセージ
プロジェクトtest222
上でノードにWindowsServer2019(ノード名:winnode2019)を指定し、コマンドecho %time%
を実行すると以下の3つのエラーが出ます。
Failed to read SSH Private key stored at path: keys/rundeck/id_rsa: org.rundeck.storage.api.StorageException: Converter Plugin builtin:ssh-storage threw exception during READ: null
Failed: ConfigurationFailure: Failed to read SSH Private key stored at path: keys/rundeck/id_rsa
Execution failed: 417 in project test2: [Workflow result: , step failures: {1=Dispatch failed on 1 nodes: [winnode2019: ConfigurationFailure: Failed to read SSH Private key stored at path: keys/rundeck/id_rsa + {dataContext=MultiDataContextImpl(map={}, base=null)} ]}, Node failures: {winnode2019=[ConfigurationFailure: Failed to read SSH Private key stored at path: keys/rundeck/id_rsa + {dataContext=MultiDataContextImpl(map={}, base=null)} ]}, status: failed]
該当のソースコード
C:\rundeck\projects\<PROJECTNAME>\etc\resource.xml
を以下のように設定しています。<>書きの欄は実際の入力内容を伏せている部分です。
XML
1<?xml version="1.0" encoding="UTF-8"?> 2 3<project> 4 <node name=<localhost> 5 description="Rundeck server node" 6 tags="" 7 hostname=<HOSTNAME> 8 osArch="amd64" 9 osFamily="windows" 10 osName="Windows 10" 11 osVersion="10.0" 12 username=<USERNAME> 13 /> 14 <node name="winnode2019" 15 osFamily="windows" 16 username="Administrator" 17 hostname=<Elastic IP> 18 osArch="amd64" 19 ssh-authentication="privateKey" 20 ssh-key-storage-path="keys/rundeck/id_rsa" 21 /> 22</project>
秘密鍵はC:\rundeck\var\storage\content\keys\rundeck\id_rsa
に配置しており、PowerShell上で
ssh Administrator@<Elastic IP> -i C:\rundeck\var\storage\content\keys\rundeck\id_rsa
として、鍵を指定してSSH実行すると接続できる状態です。
また、作成した秘密鍵はRundeckのGUI(Key Strage)からも存在が確認できる状態です。
試したこと
- セキュリティグループの確認
接続先EC2インスタンスのセキュリティグループ(インバウンドルール)において、ポート22を全てのアドレスからの受信OKとしています
- ファイアウォールの確認
接続先EC2インスタンスのファイアウォール設定において、ポート22の受信規則を「接続を許可する」にしています
- privateKeyの配置場所の確認
配置場所は上記のパスです
- privateKeyのセキュリティ設定の確認
公開鍵認証をしようとすると「too open」という警告が出たため、
この鍵へのアクセスは「SYSTEM」とログインユーザのみにしています。
補足情報(FW/ツールのバージョンなど)
- Rundeckサーバ
OS:Windows10
Rundeck:3.3.12
- 接続先
OS:Windows Server 2019
エラーメッセージを読む限りは秘密鍵の設定が間違っているようなのですが、Windows向けの情報があまり出てこず、困っています。
よろしくお願いいたします。
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2021/06/14 08:52
2021/06/14 09:03
2021/06/14 10:28
2021/06/15 00:57