내가 필요해서 내가 적는 블로그

JAVA 백엔드 개발자의 기록들

반응형

분류 전체보기 34

Log4j 취약점 (긴급조치)

비상!!!!! 비상!!!!! 전세계 Log4j 취약점이 터졌다. 아파치소프트웨어재단에서 보안위협단계 1~10단계중 10단계에 해당하는 긴급조치가 필요한 취약점이라고 발표가 나왔다. 13억개 이상의 Java로 된 어플리케이션이 돌아가고 있고, 현실적으로 이미 배포된 폐쇄망, 버려진 오래된 소스 등 버전업을 하여 재배포하기란 쉽지 않다. 어쩔수 없다면, 아래와 같이 보안취약점에 해당하는 class 파일을 제거하는 방법을 고려해보자. 일단 내 로컬에 log4j-1.2.x 대 버전을 두고 zip -d log4j-1.2.12.jar org/apache/log4j/net/JMSAppender.class 혹은 zip -d log4j-1.2.*.jar org/apache/log4j/net/JMSAppender.clas..

JAVA 2021.12.21

컴퓨터 경고음(비프음) 스피커 제거

데스크탑에서 삐삐삐삐~~ 경고음이 발생했다면, 문제가 생긴것이다. 물론 비프음 짧게/길게 횟수에 따라 상황이 다르겠지만 오래된 데스크탑이라 교체할 예정이므로 비프음이 발생하는 스피커를 제거했다. 끄읏! 본문 내용이 도움이 되셨다면, 아래의 공감버튼을 눌러주세요. 정보 공유를 위한 포스팅에 큰 힘이 됩니다. 만약 틀린 정보가 있으면 댓글 달아주세요. 수정하도록 하겠습니다. 읽어주셔서 감사합니다. 오늘도 좋은 하루 보내세요.

DEVOPS 2021.12.17

시놀로지 (DSM), NAS서버에 SVN 설치하기

DSM? DiskStation Manager 대용량 파일들을 효율적으로 운영할 수 있게 해주는 OS 인 것 같다. (사실 오늘 처음봤다.) 시스템 정보를 찾아보니 CPU / 메모리 / 등등 물리적인 정보들이 나왔고, OS 버전이 따로 없이 DSM 버전이라고 나왔다. 이게 그냥 OS 인가보다 어쨋든 SVN 이전이 필요하여 설치를 알아보려고 했으니 SVN을 설치해보자. 1. 설치하기 패키지 센터 - SVN 검색 - SVN 설치 - SVN 열기 * 기존 패키지에 있는걸 설치하면 된다. 2. SVN Server 설정하기 2-1. SVN의 Repository 이름 추가 (* 필자는 svn 으로 예시) 2-2. Repository 의 세부 설정(일반 탭) * 익명 권한은 사용자 계정 없이 접근 하였을 때 읽기 쓰지..

DEVOPS 2021.12.17

지정된 서비스가 설치된 서비스로는 없습니다. 톰캣 서비스 설치하기

CMD를 관리자권한실행으로 열고, 설치된 톰캣의 경로로 가보자. 나같은 경우엔 D 드라이브 아래에 톰캣을 놔두었다. 각자 경로가 다르겠지만, 설치된 톰캣경로의 bin 아래에서 # service.bat install tomcat8 명령어를 입력하자. 위와 같이 service installed가 뜬다. * 삭제는 service.bat remove tomcat8 서비스 설치가 완료된 후 tomcat.exe나 tomcatw.exe 를 실행시킨 뒤 브라우저에 localhost:8080을 쳐보면 잘 되는것을 확인할 수 있다. * tomcat8.exe * tomcat8w.exe 끄읏! 본문 내용이 도움이 되셨다면, 아래의 공감버튼을 눌러주세요. 정보 공유를 위한 포스팅에 큰 힘이 됩니다. 만약 틀린 정보가 있으면 댓..

DEVOPS 2021.12.16

[Maven] Missing artifact net.sf.json-lib:json-lib:jar.2.4

pom.xml 에 라이브러리 추가시 아래와 같은 에러가 발생하였다. 서치해보니 classifier가 뭔지, jdk15가 뭔지는 따로 내용이 나오지 않았다. stack overflow 에는 repository에서 찾을 수 있게 dependency에 분류값을 지정해야 한다고 나와있었다. ??? Maven 공식 사이트에 에 대한 설명이 잘 나와있었다. 아래에 보면 type scope 등 dependency 설정에 필요한 속성들이 잘 나와 있으니 시간 여유 있으신 분들은 꼭 읽어 봤으면 좋겠다. https://maven.apache.org/pom.html Maven – POM Reference POM Reference Introduction What is the POM? Quick Overview The Bas..

SPRING 2021.12.02

java.sql.SQLException: Connection org.mariadb.jdbc.MariaDbConnection is closed.

Caused by: java.sql.SQLException: Connection org.mariadb.jdbc.MariaDbConnection@ is closed. at org.apache.commons.dbcp2.DelegatingConnection.checkOpen(DelegatingConnection.java:607) 작업시간이 꽤 소요되는 연동 스케줄러를 하나 돌렸는데, 위와 같이 DbConnection이 닫혔다. 호출은 A 서버에서 -> B 서버로 요청을 하였고 B 서버에서 무거운 로직이 수행되었다. A 서버에서 B 서버의 로직 호출 후, 응답을 받지 못하고 붕뜨는 상태가 되어 유후 세션으로 판단되었으므로 A서버에서 위의 Error 로그가 남았고, A서버의 dataSource 설정을 변경하여 해..

SPRING 2021.12.01

RestTemplate TimeOut 설정

서버간 혹은 모듈간 http 통신시 .postForObject 를 사용하고 있다. Object를 담아서 통신 요청을 할 때 TimeOut 을 길게 설정하고 싶었다. 클래스를 하나 만들자. public class TestRestTemplate extends RestTemplate { public TestRestTemplate(int readTimeout) { SimpleClientHttpRequestFactory factory = new SimpleClientHttpRequestFactory(); factory.setConnectTimeout(1000); factory.setReadTimeout(readTimeout * 1000); setRequestFactory(factory); } } * RestTem..

SPRING 2021.11.30

Cause: java.sql.SQLException: Disk full

### Cause: java.sql.SQLException: Disk full (/tmp/#sql_xxxx_0.MAI); waiting for someone to free some space... (errno: 28 "No space left on device") 어플리케이션 단에서 위와 같은 로그 발견시, Mysql/MariaDB 이 생성하는 Temp file 이 위치한 곳의 Disk 용량이 full 상태가 되었다. TMP? (Oracle PGA와 동일) tmp_table ▶ DB 내부에 위치한 임시 메모리 테이블. 쿼리 실행중 session 혹은 connection이 종료되면 자동으로 삭제가 됨. tmp_file ▶ tmp_table 메모리 설정값을 초과하는 경우 file 로 만들어져서 Disk 로 ..

DB 2021.11.30

jar 파일 만들어서 실행하기(Windows, Linux, crontab, exe) 총 정리(3)

(1) jar 파일 만들고 Windows에서 실행 (2) Linux crontab에 등록 (3) jar 파일을 exe로 만들기 드디어 마무리 단계다! Jar 파일을 만들었다면, Windows에서 exe파일로 실행하여 보자! Jar 파일을 exe 파일로 만드는 방법을 구글에 서치해보면 Launch4j 와 jsmooth 가 많이 사용됨을 알 수 있다. 이중 Launch4j 를 사용하였다. ※ Download 페이지로 이동하여 자신의 OS에 맞는 버전을 다운받으면 된다. Windows 64bit 용 버전은 없으며, 필자는 launch4j-win32.exe를 다운 받았다. (32 비트 프로그램이 돌아가는 이유 아시는분은 댓글 남겨주세요.) 아무튼, 다운로드 후 설치가 완료되면 JAR 파일을 이제 exe 파일로 ..

DEVOPS 2021.11.22

jar 파일 만들어서 실행하기(Windows, Linux, crontab, exe) 총 정리(2)

(1) jar 파일 만들고 Windows에서 실행 (2) Linux crontab에 등록 (3) jar 파일을 exe로 만들기 전편에 JAR 파일을 eclipse에서 생성하여 Windows에서 실행하였다. 이제 리눅스에서 실행하여 보자. .jar 파일이 있는 경로로 이동, Windows와 명령어가 같다. [명령어] java -jar 파일이름.jar 리눅스에서 crontab을 활용하여 자동으로 jar 파일을 실행시키게 하려면 아래 그림과 같이 cron에 등록한다. [명령어] crontab -e (cron 수정) [명령어] crontab -l (cron 확인) ☆중요☆ crontab 등록시 자바 환경변수를 설정하여 주거나, 위 그림 처럼 java가 설치된 경로를 명시해 주어야 jar 파일이 실행된다. cro..

DEVOPS 2021.11.19
반응형