본문 바로가기

반응형

전체 글

[Jenkins] Jenkins란? Jenkins를 사용하는 이유 및 Declarative pipeline 문법 Jenkins Jenkins는 소프트웨어 구축, 테스트, 전달 및 배포와 관련된 모든 종류의 작업을 자동화하는데 사용할 수 있는 오픈 소스 자동화 서버이다. Jenkins는 시스템 패키지, Docker 또는 JRE(Java Runtime Environment)가 설치된 모든 환경에서 실행할 수 있다. 이러한 자동화 시스템은 다양한 플러그인들을 조합하여 일을 처리하는 Pipeline을 통해 CI/CD Pipeline을 구축할 수 있다. 개발자들이 코드 작성 외에 귀찮은 테스트, 빌드, 배포 등의 과정을 Jenkins에 구축해놓으면 대신 이 일들을 처리해 준다. (자동화) 쉽게 말해 그림에서 보이는것과 같이 노예이다. 대표적인 Plugin 대표적인 Plgin으로는 Pipeline, Gradle Plugin,.. 더보기
[Jenkins] Docker Jenkins 이미지 설치 및 기본 설정 환경 ubuntu 20.04 docker 20.10.11 jenkins image lts 같이 읽어보면 도움될 글 Jenkins란? Jenkins를 사용하는 이유 및 Declarative pipeline 문법 [Jenkins] Jenkins란? Jenkins를 사용하는 이유 및 Declarative pipeline 문법 Jenkins Jenkins는 소프트웨어 구축, 테스트, 전달 및 배포와 관련된 모든 종류의 작업을 자동화하는데 사용할 수 있는 오픈 소스 자동화 서버이다. Jenkins는 시스템 패키지, Docker 또는 JRE(Java Runtime Env kanoos-stu.tistory.com Docker Jenkins 이미지 설치 도커 허브 젠킨스 오피셜 이미지 는 더이상 사용되지 않고 lts버.. 더보기
[Spring Boot] log4j2 보안 문제 해결 방안 - CVE-2021-44228 발단 및 문제점 2021년 12월 10일 오전 9시 40분 경, 아파치 소프트웨어 재단의 자바로 제작된 Log4j2 에 보안 문제가 발생하였다. 이 문제는 하트블리드과는 비교도 안 될만큼 역사상 최악의 보안 결함일 수도 있다고 한다. 해당 보안 문제의 이름은 CVE-2021-44228 -> Log4Shell 혹은 LogJam이라고 명명될 예정 Log4j2를 이용하여 원격 코드 실행이 가능한 JNDI 인젝션 취약점으로 사용자의 입력으로 발생한 로그를 기록할 때 해커의 임의코드 실행이 가능하게 된다. 즉 해커가 악용한다면 서버에 접근하는 것 만으로 사용자의 컴퓨터를 사실상 원격 조정할 수 있다고 한다. 이러한 취약점으로인해 Log4j 프로젝트를 맡는 아파치 소프트웨어 재단은 Log4Shell에 CVSS 점수.. 더보기
[Nginx] Websocket 일정시간 후 끊기는 문제 문제 nginx 리버스 프록시를 통해 websocket을 연결하고 메세지를 주고 받다가 일정 시간동안 메세지를 수신 또는 송신하지 않으면 연결이 끊기는 문제가 발생하였다. 원인 nginx에서는 기본적으로 수신 또는 송신을 일정시간 하지 않으면 연결을 끊게 설정되어있다. 이 시간은 60초로 설정되어있다. 해결 그래서 이 시간 설정을 바꿔주면 되는데 설정은 아래와같이 websocket server 부분에 코드를 넣어주면된다. 단위는 ms이다. server { ... proxy_read_timeout 21600000; # 6 * 60 * 60 * 1000 proxy_send_timeout 21600000; # 6 * 60 * 60 * 1000 ... } nginx 공식문서 더보기
SSL이란?, SSL과 TLS 정의 및 차이 SSL 원래 웹에서의 데이터는 가로채면 누구나 읽을 수 있는 일반 텍스트 형태로 전송 되었다. 이러한 문제때문에 인터넷 통신의 개인정보 보호, 인증, 데이터 무결성을 보장하기 위해 Netscape가 1995년 처음으로 SSL을 개발하였다. SSL(Secure Scokets Layer)은 암호화 기반 인터넷 보안 프로토콜이다. 전달되는 모든 데이터를 암호화하고 특정한 유형의 사이버 공격도 차단한다. SSL은 TLS(Transport Layer Security) 암호화의 전신이기도 한다. SSl/TLS 를 사용하는 웹사이트 URL은 HTTP 대신 HTTPS가 사용된다. SSL은 1996년 SSL 3.0 이후 업데이트되지 않았으며, 앞으로 사라지게 될 것으로 여기지고 있다. 또한 알려진 취약성이 여러가지 있으.. 더보기
[Nginx] Nginx Websocket 리버스 프록시 설정 문제점 https, http 연결 모두 테스트 되었지만 wss로는 연결이 되지 않는 에러가 발생한다. Error during WebSocket handshake: Unexpected response code: 504 원인 클라이언트와 서버간의 연결을 http -> websocket 으로 전환하기 위해서는 프로토콜 전환 메커니즘이 사용된다. 하지만 upgrade는 hop-by-hop 헤더이기때문에 클라이언트에서 서버로 다시 전달되지 않는다. hop - 네트워크의 출발지와 목적지 사이에 위치한 경로 내에서 양 끝단을 포함한 모든 네트워크들의 다음 장비로 패킷이 이동하는것, 홉이 발생하는 수를 홉 카운트 라고 한다. hop-by-hop - 프록시의해 재전송 되거나 캐시되지 않으며 다음 전달에 삭제되는 헤더 해.. 더보기
[Nginx-ssl] 간단하게 Nginx에 SSL 인증 적용하기(with certbot) Ubuntu 20.04 (LTS) 환경에서 진행되었음. certbot 이란?certbot은 LetsEncrypt 인증서를 자동으로 사용하여 HTTPS를 활성화 오픈소스 소프트웨어 도구이다. 무료로 HTTPS를 적용하기 정말 간단하고, 자동으로 갱신할 수 있어 여러가지 이점이 있다. certbot 설치$ sudo apt-get update $ sudo apt-get install software-properties-common $ sudo add-apt-repository universe $ sudo apt-get update $ sudo apt-get install certbot python3-certbot-nginx apt-get update - 설치된 모든 패키지를 업데이트 (참고)apt-get in.. 더보기
[AWS - Route53] Route53 이란? 쉽게 도메인 등록 및 EC2연결 Route 53 AWS에서 제공하는 DNS이다. 다른 도메인 등록 기관(가비아, 후이즈 등) 에 비해 가격이 비슷하거나 저렴하고, 등록 외에 부가적인 기능 제공 및 안정성, GUI를 제공해 관리가 수월하다. Route 53은 Public host zone 과 Private host zone이 존재한다. Public host zone 은 일반 DNS와 같이 동작하고, Private host zone 은 AWS 내부에서만 동작된다. Route 53 기능 1. 모니터링 - 특정 포트에 대해 모니터링이 가능하다. 2. L4 기능 3. GSLB(global server load balancing) - 지역에 상관없이 부하를 분산 및 속도 개선이 가능함 (참고) Route 53 으로 도메인 등록 먼저 Route 5.. 더보기

반응형