본문 바로가기

전체 글40

[Subdomain] 하나의 도메인으로 여러 서비스 운영하기: 개발 및 운영 서버 분리 전략 웹 서비스를 개발하다 보면, 새로운 기능을 배포하기 전에 실제 서버와 동일한 환경에서 미리 테스트해 볼 공간이 필요합니다. 이때 기존 도메인을 활용하여 dev나 test 같은 머리말을 붙인 서브도메인을 생성하면 비용 추가 없이 독립적인 환경을 구축할 수 있습니다.오늘은 Route 53과 Nginx를 활용하여 하나의 도메인으로 여러 개의 서비스를 스마트하게 관리하는 방법을 알아보겠습니다.1. 서브도메인이란 무엇인가?서브도메인은 루트 도메인(Root Domain, 예: example.com)의 왼쪽에 마침표로 구분하여 추가하는 이름입니다.운영 서버 (Production): www.example.com 또는 example.com개발 서버 (Development): dev.example.comAPI 서버 (AP.. 2026. 4. 13.
[Route 53] 외부 도메인 연결 및 AWS 호스팅 영역 설정 완벽 가이드 도메인을 구매하는 곳(가비아, 고대디 등)과 서버가 위치한 곳(AWS)이 다를 때, 초보 개발자들은 어떻게 이 둘을 연결해야 할지 막막해하곤 합니다. 단순히 IP만 연결할 수도 있지만, AWS의 Route 53을 활용하면 DNS 응답 속도가 빨라질 뿐만 아니라 SSL 인증서 발급이나 로드 밸런싱 연동이 훨씬 간편해집니다.오늘은 외부에서 구매한 도메인을 AWS Route 53으로 가져와 내 EC2 서버와 연결하는 전 과정을 상세히 알아보겠습니다.1. Route 53 호스팅 영역(Hosted Zone) 생성먼저 AWS가 내 도메인 정보를 관리할 수 있도록 '방'을 만들어주어야 합니다.AWS 콘솔에서 Route 53 서비스로 접속합니다.[호스팅 영역 생성] 버튼을 클릭합니다.도메인 이름: 본인이 구매한 도메인.. 2026. 4. 12.
[AWS] 프리티어 유저를 위한 EC2 인스턴스 과금 방지 및 효율적 관리법 클라우드 서비스의 대명사인 AWS(Amazon Web Services)는 신규 가입자에게 12개월간 프리티어(Free Tier) 혜택을 제공합니다. 하지만 '무료'라는 말만 믿고 설정을 소홀히 했다가는 예상치 못한 과금 고지서를 받을 수 있습니다.오늘은 내 소중한 지갑을 지키면서 AWS EC2 인스턴스를 스마트하게 운영하는 5가지 핵심 전략을 정리해 보겠습니다.1. 프리티어 한도 정확히 이해하기가장 먼저 내가 쓸 수 있는 자원의 양을 알아야 합니다. EC2 프리티어의 핵심 조건은 다음과 같습니다.인스턴스 사용 시간: 매달 750시간 무료 (t2.micro 또는 t3.micro 기준).저장 공간(EBS): 총 30GB까지 무료.데이터 전송(Outbound): 인터넷으로 나가는 데이터 매달 100GB까지 무.. 2026. 4. 11.
[Fail2Ban] 무차별 대입 공격(Brute-force)을 자동으로 차단하는 보안 도구 설치 리눅스 서버를 운영하며 로그를 살펴보면, 전 세계에서 수많은 IP가 내 서버의 SSH 포트(22번 등)로 접속하기 위해 끊임없이 로그인을 시도하는 것을 볼 수 있습니다. 이를 **무차별 대입 공격(Brute-force Attack)**이라고 합니다.비밀번호를 아무리 어렵게 설정해도 수만 번의 시도가 반복되면 서버 자원이 낭비되고 보안 위협이 커집니다. 오늘은 이러한 공격을 실시간으로 감시하고, 일정 횟수 이상 실패하면 해당 IP를 자동으로 차단해 주는 든든한 파수꾼, Fail2Ban의 설치 및 설정법을 알아보겠습니다.1. Fail2Ban이란 무엇인가?Fail2Ban은 로그 파일을 분석하여 악의적인 활동을 하는 IP를 찾아내고, 방화벽(UFW, iptables 등)을 통해 해당 IP의 접속을 일정 시간 동.. 2026. 4. 10.
[Cron] 서버 자동화를 위한 크론탭(Crontab) 사용법과 주기 설정 팁 서버를 운영하다 보면 매일 특정 시간에 데이터베이스를 백업하거나, 매주 월요일마다 임시 파일을 정리해야 하는 상황이 생깁니다. 이런 반복적인 작업을 사람이 일일이 수동으로 하는 것은 비효율적일 뿐만 아니라 실수할 위험도 큽니다.리눅스 시스템에는 이러한 작업을 예약하고 자동으로 실행해 주는 **크론(Cron)**이라는 강력한 도구가 있습니다. 오늘은 크론의 설정 파일인 **크론탭(Crontab)**의 문법부터 실전 활용 사례까지 상세히 알아보겠습니다.1. 크론탭(Crontab)이란 무엇인가?**크론(Cron)**은 리눅스용 시간 기반 잡 스케줄러입니다. 그리고 **크론탭(Crontab)**은 크론 작업(Cron Job)을 설정하는 테이블(Table) 형태의 파일을 말합니다.사용자가 크론탭에 특정 시간과 실.. 2026. 4. 9.
[Database] 외부 접속 차단 및 안전한 원격 DB 연결을 위한 SSH 터널링 기법 데이터베이스(DB)에는 서비스의 가장 소중한 자산인 사용자 정보와 비즈니스 데이터가 담겨 있습니다. 하지만 로컬 개발 환경에서 서버의 DB에 접속하기 위해 3306(MySQL)이나 5432(PostgreSQL) 포트를 전 세계에 개방하는 것은 매우 위험한 행동입니다.오늘은 DB 포트를 외부에 노출하지 않고도, 마치 내 컴퓨터에 있는 DB처럼 안전하게 접속할 수 있게 해주는 SSH 터널링(SSH Tunneling) 기법을 상세히 알아보겠습니다.1. 왜 DB 포트를 직접 열면 안 되는가?대부분의 DB 엔진은 보안 취약점이 발견될 수 있으며, 기본 포트가 널리 알려져 있어 무차별 대입 공격(Brute-force)의 주 타겟이 됩니다.보안 위험: 포트가 열려 있다는 것만으로도 해커는 공격의 실마리를 찾습니다.데.. 2026. 4. 8.