본문 바로가기

분류 전체보기86

Webflux & SCG - Grafana uri Path Metrics "UNKNOWN" 노출 Webflux & SCG - Grafana uri Metrics "UNKNOWN"본문 제목만 보면 어떤문제인지 잘 감이 안온다. 쉽게 말해보자면 아래와 같은 Grafana 모니터링 Dashboard 가 있을때 Http URI Path 가 사용자가 요청한 Path 가 나오는게 아닌"UNKNOWN" 으로 표시되는 문제이다. 해당 문제는 Spring Cloud Gateway - Grafana 환경에서 발생하였다.Spring Cloud Gateway(SCG) 는 reactive 프레임워크를 사용하고 있으며(반대는 mvc) SCG 에서는 둘중 어떤 프레임워크를 사용하던동일한 문제가 발생중인것으로 확인되었다.   사진이 자세히 보이지 않으니 더 자세하게 보자면, 우리가 원하는 Metric 수집은 아래 처럼 path.. 2025. 4. 3.
[Spring] Gateway - 해외 IP 차단(필터링) Spring Cloud Gateway - 해외 IP 차단이전 포스팅에서 홈서버로 들어오는 Request 중 해외 IP 로 요청한 경우는 차단(Block) 했었다고 언급만 했었다. 도메인과 Reverse Proxy Server 를 연결 한 이후부터 서버 IP 가 공격자들에게 노출되었는지 매시간 수많은 공격들이 들어오고 있던 상황이었다. (SQL Injection, Brute Force, IDOR(Insecure Direct Object Reference 등등 ....)나의 서버의 경우 해외에서 수요가 있는것도 아니고, 국내에서만 유효하면 됬기에 해외 IP 차단을 계획했다.  홈서버 아키텍처 확인하기  GeoIP2 라는 국가별 IP 를 확인할 수 있는 오픈소스솔루션을 사용할 예정이다.Reverse  Prox.. 2025. 4. 2.
홈서버 구축 - 보안, 관리, 아키텍처(2) 홈서버 구축 - 보안, 관리, 아키텍처(2)홈서버에 관한 보안, 관리, Application 아키텍처에 대해서 포스팅을 이어 나가도록 하겠다.이전글에 이어서 서버의 보안 및 애플리케이션 레벨 아키텍처, 사용 까지 포스팅하도록 하겠다.홈서버에 관한 개요는 아래의 링크에서 확인하도록 하자! 홈서버 구축 시리즈홈서버 구축 - 개요, 설계, 네트워크(1)홈서버 구축 - 보안, 관리, 아키텍처(2) 목차보안관리최종 아키텍처  1. 보안이전글에서 보안을 설정을 해도 무차별적인 공격(Brute force)이 들어온다는것을 확인했을것이다.서버를 관리하는 직무, Linux 에 익숙한 사람들은 이미 알고있을만한 내용이고, 더 좋은 보안 방법들을 가지고 있을것이다.필자또한 관리가 너무 복잡하지 않은선에서 계속해서 보안요소를.. 2025. 4. 1.
홈서버 구축 - 개요, 설계, 네트워크(1) 홈서버 구축 - 개요개발자 혹은 IT 에 관심이 많은 사람이라면 한번쯤은 생각해보는 홈서버 구축에 대해서 포스팅 해보려고 한다.우선 필자는 홈서버를 구축한지 거의 2년가까이 되었느데 이제서야 포스팅 하게되었다.많은 블로그들을 보면 OS 설치, 각 통신사별 포트포워딩 정도만 포스팅이 많이 되어있는것 같다해당 글에서는 자세한 설치 과정보다는 홈서버 구축시 하드웨어 선정, 아키텍처, 보안, 네트워크 구성 등 더 큰그림에서 포스팅할 예정이다. 생각보다 긴 글이 될것 같다,, 다만 홈서버 구축을 생각하는 사람들에게 대략적인 아키텍처 구상을 제공하고자 노력해보겠다.하나의 칼럼처럼 가볍게 슥슥 읽으면 좋을것 같다.  홈서버 구축 시리즈홈서버 구축 - 개요, 설계, 네트워크(1)홈서버 구축 - 보안, 관리, 아키텍처(.. 2025. 3. 28.
[Docker] Docker Registry(Private Repository, Http) Docker Private Registry사내에서 사용되는 Docker Image 같은 경우, Public 하게 관리되어서는 안되는 경우들이 존재한다. 백엔드 서버 라던지 OS정보, 네트워크, 설정 정보와 같은것들이 Image 파일안에 전부 들어가 있기 때문이다.Docker Hub 에도 Private 하게 image push 할 수 있지만, 무료계정의 경우 제한이 존재한다(용량, 횟수)  Docker Registry는 사내 서버, 혹은 서버중 하나에 프라이빗한 자체 Docker Hub 를 구축한다고 생각하면 될것 같다.외부에 공개되지 않으면서, 사내에서 자체적으로 제한 없이 관리할 수 있기에 자체적인 Infra 를 구축하는데 있어서 좋은 선택지 인것 같다.필자의 경우, 홈서버에서 테스트할 서버들 Imag.. 2025. 3. 26.
Nginx SSL(HTTPS) 적용 - Certbot(Let's encrypt) Nginx SSL(HTTPS) 적용 - Certbot(Let's encrypt)기존에 사용하던 도메인이 저번달부로 만료되어, 새로운 도메인을 구입했다. 새로운 도메인 연결할겸 ,,, 미뤄왔던 작업을 하려고 하던중 기록해둘겸 포스팅한다.. 어떤 작업들을 계속 진행할건지는 추후 포스팅 작성후 링크를 걸어두도록 하겠다. 일단 제목대로 Oracle Cloud 서버에 기동중인 Nginx 에 SSL 을 적용하여 HTTPS 로 통신할 수 있도록 하겠다.  1. 개념 확인우선 알고 넘어가면 좋은 개념들에 대해서 간략하게 설명 이후 진행하도록 하겠다. 굳이 왜 HTTPS 로 전환하려고 하는가?필자의 경우는 Nginx 를 Reverse Proxy 로 사용중이다. 목적지는 홈서버이기에 중간에 공격자로부터 데이터를 보호하기 .. 2025. 3. 26.
[Spring Cloud] Spring Cloud Gateway - 개념 & 예제(로깅, 모니터링) Spring Cloud GatewaySpring Cloud Gateway 의 기본 개념과, 간단한 예제로 사용해보도록하자.  1. Gateway 란?Gateway, 단어 그대로의 의미로 '관문', '통로' 라는 의미를 가지고 있다. 네트워크 개념에서의 Gateway 란데이터(패킷)이 지나가는 통로이며, 출발지 Network 에서 도착지 Network 에 도달하기 까지 거쳐야하는 필수적인 통로(관문)이다.즉 서로다른 네트워크간 통로의 역할을 수행하는것이다. 일상생활에서 흔하게 볼 수 있는 Wifi 공유기를 보자면 이는 Router 라고 하며, Gateway 의 개념과는 조금 다른 부분이다.Gateway 는 특정 장비, 기기가 아닌 IP 주소를 기반으로 찾아가며Router 는 외부 네트워크(WAN)를 내부 .. 2025. 3. 18.
[Redis] (STOMP + pub/sub) 채팅 기능(서버 다중화) Redis - STOMP + Redis Pub/Sub 채팅 기능(서버 다중화)채팅 기능에서 많이 사용하는 프로토콜인 STOMP 와 Redis 의 pub/sub 기능을 활용해 보는 포스팅입니다.평소에 채팅 기능에 대한 많은 호기심은 가지고 있지만, 실제 애플리케이션에서 사용할만한 채팅 기능은 고도화를 해본적이 없었다.그러던 와중 우아한기술블로그 포스팅을 접하게 되었고, 평소 궁금했던 영역의 비지니스에 대해서 생각해보면서 구현하게 되었다(해당 블로그는 2021년 작성이다,, 꽤나 늦게 봤다) https://lucas-owner.tistory.com/68 [Redis] Spring Boot - Redis Pub, Sub 구현&응용목차 Spring Boot - Redis 환경 구성 테스트 개요 서버간 데이터를 .. 2025. 3. 4.
[Linux] iPad 로 서버 콘솔 접속(Termius), ssh key 인증 접속방법 iPad 로 서버 콘솔 접속, ssh key 접근 방법서버를 관리하거나, 급하게 대응이 필요한 경우가 종종 생기고는 한다.(이런 대응이 급하게 필요한 사람들의 경우 노트북을 들고다니는 분들도 존재한다. 필자또한 그러했다..)하지만 노트북을 두고 나온경우 급하게 재기동 및 간단한 작업을 아이패드에서 할 수 있는 앱이 존재한다. Termius 라는 앱이다.https://termius.com/ Termius – Modern SSH Client for Desktop and Mobile devicesConnect with one click from any mobile and desktop device. No re-entering IP addresses, ports, and passwords.termius.com이.. 2025. 2. 13.