diff --git a/src/docs/agent-bsm-lab-postgres/cert/dfxagent-bsm-lab-postgres.p12 b/src/docs/agent-bsm-lab-postgres/cert/dfxagent-bsm-lab-postgres.p12 index 56310e5..2ef90bd 100644 Binary files a/src/docs/agent-bsm-lab-postgres/cert/dfxagent-bsm-lab-postgres.p12 and b/src/docs/agent-bsm-lab-postgres/cert/dfxagent-bsm-lab-postgres.p12 differ diff --git a/src/docs/agent-bsm-lab-postgres/cert/truststore-bsm-lab-postgres.jks b/src/docs/agent-bsm-lab-postgres/cert/truststore-bsm-lab-postgres.jks deleted file mode 100644 index 466f954..0000000 Binary files a/src/docs/agent-bsm-lab-postgres/cert/truststore-bsm-lab-postgres.jks and /dev/null differ diff --git a/src/docs/agent-bsm-lab-postgres/cert/truststore-merged.jks b/src/docs/agent-bsm-lab-postgres/cert/truststore-merged.jks new file mode 100644 index 0000000..e2b9b12 Binary files /dev/null and b/src/docs/agent-bsm-lab-postgres/cert/truststore-merged.jks differ diff --git a/src/docs/agent-bsm-lab-postgres/conf/dfxagent-bsm-lab-postgres.json b/src/docs/agent-bsm-lab-postgres/conf/dfxagent-bsm-lab-postgres.json index 01db109..ddcc879 100644 --- a/src/docs/agent-bsm-lab-postgres/conf/dfxagent-bsm-lab-postgres.json +++ b/src/docs/agent-bsm-lab-postgres/conf/dfxagent-bsm-lab-postgres.json @@ -1,18 +1,18 @@ { "description": "bsm-lab 서버에서 실행함. postgres 연결.", "myHostId": "agent-bsm-lab-postgres", - "myHostName": "192.168.0.41", + "myHostName": "agent-bsm-lab-postgres", "myListenPort": 17801, "sslEnabled": true, - "keyStorePath": "D:/projects/bsm-lab/dfx/dfxagent/src/docs/agent-bsm-lab-postgres/cert/dfxagent-bsm-lab-postgres.p12", + "keyStorePath": "file:/D:/projects/bsm-lab/dfx/dfxagent/src/docs/agent-bsm-lab-postgres/cert/dfxagent-bsm-lab-postgres.p12", "keyStorePassword": "qortpals1!", "keyStoreAlias": "agent-bsm-lab-postgres", - "trustStorePath": "D:/projects/bsm-lab/dfx/dfxagent/src/docs/agent-bsm-lab-postgres/cert/truststore-bsm-lab-postgres.jks", + "trustStorePath": "file:/D:/projects/bsm-lab/dfx/dfxagent/src/docs/agent-bsm-lab-postgres/cert/truststore-merged.jks", "trustStorePassword": "qortpals1!", "knownAgentList": [ { "hostId": "agent-tuf-a15-defree-oracle", - "hostName": "192.168.0.41", + "hostName": "agent-tuf-a15-defree-oracle", "listenPort": 63801, "sslEnabled": true, "dropBoxIdList": [ diff --git a/src/docs/agent-bsm-lab-postgres/startup.cmd b/src/docs/agent-bsm-lab-postgres/startup.cmd index 7255086..73b0e30 100644 --- a/src/docs/agent-bsm-lab-postgres/startup.cmd +++ b/src/docs/agent-bsm-lab-postgres/startup.cmd @@ -4,10 +4,12 @@ setlocal REM Update this path for your Windows environment. set "JAVA_HOME=C:\Program Files\Java\jdk-17" set "AGENT_HOME=D:\projects\bsm-lab\dfx\dfxagent\src\docs\agent-bsm-lab-postgres" +set "JAVA_OPTS= -Dfile.encoding=UTF-8 -Xms2048m -Xmx8192m -XshowSettings:properties" +set "TLS_OPTS= -Djavax.net.debug=ssl,handshake,trustmanager -Djavax.net.ssl.trustStore="%AGENT_HOME%\cert\truststore-merged.jks" -Djavax.net.ssl.trustStorePassword=qortpals1! -Djavax.net.ssl.keyStore="%AGENT_HOME%\cert\dfxagent-bsm-lab-postgres.p12" -Djavax.net.ssl.keyStorePassword=qortpals1! -Djavax.net.ssl.keyStoreType=PKCS12" for /f %%i in ('powershell -NoProfile -Command "Get-Date -Format yyyyMMdd"') do set "TODAY=%%i" chcp 65001 -start "" "%JAVA_HOME%\bin\java.exe" -Dfile.encoding=UTF-8 -jar "%AGENT_HOME%\..\..\..\build\libs\dfxagent-1.0.9.jar" -Xms2048m -Xmx8192m --setting.file="%AGENT_HOME%\conf\dfxagent-bsm-lab-postgres.json" +start "" cmd /c ""%JAVA_HOME%\bin\java.exe" %JAVA_OPTS% %TLS_OPTS% -jar "%AGENT_HOME%\..\..\..\build\libs\dfxagent-1.0.9.jar" --setting.file="%AGENT_HOME%\conf\dfxagent-bsm-lab-postgres.json" 1>>"dfxagent-bsm-lab-postgres-console-debug-%TODAY%.log" 2>&1" endlocal diff --git a/src/docs/agent-tuf-a15-defree-oracle/cert/dfxagent-tuf-a15-defree-oracle.p12 b/src/docs/agent-tuf-a15-defree-oracle/cert/dfxagent-tuf-a15-defree-oracle.p12 new file mode 100644 index 0000000..98ab265 Binary files /dev/null and b/src/docs/agent-tuf-a15-defree-oracle/cert/dfxagent-tuf-a15-defree-oracle.p12 differ diff --git a/src/docs/agent-tuf-a15-defree-oracle/cert/truststore-merged.jks b/src/docs/agent-tuf-a15-defree-oracle/cert/truststore-merged.jks new file mode 100644 index 0000000..e2b9b12 Binary files /dev/null and b/src/docs/agent-tuf-a15-defree-oracle/cert/truststore-merged.jks differ diff --git a/src/docs/agent-tuf-a15-defree-oracle/conf/dfxagent-tuf-a15-defree-oracle.json b/src/docs/agent-tuf-a15-defree-oracle/conf/dfxagent-tuf-a15-defree-oracle.json index c51b3d5..f5ef21d 100644 --- a/src/docs/agent-tuf-a15-defree-oracle/conf/dfxagent-tuf-a15-defree-oracle.json +++ b/src/docs/agent-tuf-a15-defree-oracle/conf/dfxagent-tuf-a15-defree-oracle.json @@ -1,18 +1,18 @@ { "description": "로컬에서 실행함. defree.ddns.net의 oracle 연결", "myHostId": "agent-tuf-a15-defree-oracle", - "myHostName": "192.168.0.41", + "myHostName": "agent-tuf-a15-defree-oracle", "myListenPort": 63801, "sslEnabled": true, - "keyStorePath": "D:/projects/bsm-lab/dfx/dfxagent/src/docs/agent-tuf-a15-defree-oracle/cert/dfxagent-tuf-a15-defree-oracle.p12", + "keyStorePath": "file:/D:/projects/bsm-lab/dfx/dfxagent/src/docs/agent-tuf-a15-defree-oracle/cert/dfxagent-tuf-a15-defree-oracle.p12", "keyStorePassword": "qortpals1!", "keyStoreAlias": "agent-tuf-a15-defree-oracle", - "trustStorePath": "D:/projects/bsm-lab/dfx/dfxagent/src/docs/agent-tuf-a15-defree-oracle/cert/truststore-tuf-a15-defree-oracle.jks", + "trustStorePath": "file:/D:/projects/bsm-lab/dfx/dfxagent/src/docs/agent-tuf-a15-defree-oracle/cert/truststore-merged.jks", "trustStorePassword": "qortpals1!", "knownAgentList": [ { "hostId": "agent-bsm-lab-postgres", - "hostName": "192.168.0.41", + "hostName": "agent-bsm-lab-postgres", "listenPort": 17801, "sslEnabled": true, "dropBoxIdList": [ diff --git a/src/docs/agent-tuf-a15-defree-oracle/startup.cmd b/src/docs/agent-tuf-a15-defree-oracle/startup.cmd index ba30180..a1f271f 100644 --- a/src/docs/agent-tuf-a15-defree-oracle/startup.cmd +++ b/src/docs/agent-tuf-a15-defree-oracle/startup.cmd @@ -4,10 +4,12 @@ setlocal REM Update this path for your Windows environment. set "JAVA_HOME=C:\Program Files\Java\jdk-17" set "AGENT_HOME=D:\projects\bsm-lab\dfx\dfxagent\src\docs\agent-tuf-a15-defree-oracle" +set "JAVA_OPTS= -Dfile.encoding=UTF-8 -Xms2048m -Xmx8192m -XshowSettings:properties" +set "TLS_OPTS= -Djavax.net.debug=ssl,handshake,trustmanager -Djavax.net.ssl.trustStore="%AGENT_HOME%\cert\truststore-merged.jks" -Djavax.net.ssl.trustStorePassword=qortpals1! -Djavax.net.ssl.keyStore="%AGENT_HOME%\cert\dfxagent-tuf-a15-defree-oracle.p12" -Djavax.net.ssl.keyStorePassword=qortpals1! -Djavax.net.ssl.keyStoreType=PKCS12" for /f %%i in ('powershell -NoProfile -Command "Get-Date -Format yyyyMMdd"') do set "TODAY=%%i" chcp 65001 -start "" "%JAVA_HOME%\bin\java.exe" -Dfile.encoding=UTF-8 -jar "%AGENT_HOME%\..\..\..\build\libs\dfxagent-1.0.8.jar" -Xms2048m -Xmx8192m --setting.file="%AGENT_HOME%\conf\dfxagent-tuf-a15-defree-oracle.json" +start "" cmd /c ""%JAVA_HOME%\bin\java.exe" %JAVA_OPTS% %TLS_OPTS% -jar "%AGENT_HOME%\..\..\..\build\libs\dfxagent-1.0.9.jar" --setting.file="%AGENT_HOME%\conf\dfxagent-tuf-a15-defree-oracle.json" 1>>"dfxagent-tuf-a15-defree-oracle-console-debug-%TODAY%.log" 2>&1" endlocal diff --git a/src/main/java/com/bsmlab/dfx/agent/DfxAgentApplication.java b/src/main/java/com/bsmlab/dfx/agent/DfxAgentApplication.java index 92a64c5..94277e8 100644 --- a/src/main/java/com/bsmlab/dfx/agent/DfxAgentApplication.java +++ b/src/main/java/com/bsmlab/dfx/agent/DfxAgentApplication.java @@ -54,10 +54,28 @@ public class DfxAgentApplication { props.put("server.port", agentConfigDto.getMyListenPort()); props.put("server.ssl.enabled", agentConfigDto.isSslEnabled()); props.put("server.ssl.key-store", agentConfigDto.getKeyStorePath()); + String keyStoreFilePath = agentConfigDto.getKeyStorePath(); + if(keyStoreFilePath.startsWith("file:")) { + keyStoreFilePath = keyStoreFilePath.substring(5); + } + File keyStoreFile = new File(keyStoreFilePath); + if(!keyStoreFile.exists()) { + System.out.println("cannot find a keystore file: " + keyStoreFilePath); + System.exit(0); + } props.put("server.ssl.key-store-password", agentConfigDto.getKeyStorePassword()); props.put("server.ssl.key-alias", agentConfigDto.getKeyStoreAlias()); props.put("server.ssl.key-store-type", "PKCS12"); props.put("server.ssl.trust-store", agentConfigDto.getTrustStorePath()); + String trustStoreFilePath = agentConfigDto.getTrustStorePath(); + if(trustStoreFilePath.startsWith("file:")) { + trustStoreFilePath = trustStoreFilePath.substring(5); + } + File trustStoreFile = new File(trustStoreFilePath); + if(!trustStoreFile.exists()) { + System.out.println("cannot find a truststore file: " + trustStoreFilePath); + System.exit(0); + } props.put("server.ssl.trust-store-password", agentConfigDto.getTrustStorePassword()); props.put("server.ssl.trust-store-type", "JKS"); props.put("server.ssl.client-auth", "need"); diff --git a/src/main/java/com/bsmlab/dfx/agent/support/MessageUtils.java b/src/main/java/com/bsmlab/dfx/agent/support/MessageUtils.java index f714ecb..3ab5549 100644 --- a/src/main/java/com/bsmlab/dfx/agent/support/MessageUtils.java +++ b/src/main/java/com/bsmlab/dfx/agent/support/MessageUtils.java @@ -286,7 +286,12 @@ public class MessageUtils { log.debug("StatusChecker to {} send a message UUID {}", knownAgent.getHostName(), messageUuid); String response = ""; AckDto ackDto = null; - response = restTemplate.postForObject(url, bodyEntity, String.class); + try { + response = restTemplate.postForObject(url, bodyEntity, String.class); + } + catch(Exception e) { + log.error("send a alive message: response = restTemplate.postForObject(url, bodyEntity, String.class);", e); + } ackDto = objectMapper.readValue(response, new TypeReference() {}); return ackDto; }