Tag: Security

0

EC2 를 이용한 WireGuard Full Tunnel 구성

✅ VPN 서버 설정 WireGuard 내부 대역: 10.100.0.0/24 EC2 VPC 대역: 10.1.0.0/16 EC2 설정EC2 를 VPN 서버로 사용하기 위해서는 일단 Client 와 연결하기 위한 Port 가 오픈이 돼 있어야 합니다. Wireguard 는 51820 UDP 포트를 사용하므로 해당 포트를 통해 Client 가 접속할 수 있도록 보안 그룹 허용 목록에 추가해줍니다. EC2 에 WireGuard 설치Debian 계열 리눅스# 패키지 목록 업데이트sudo apt update# WireGuard 설치sudo apt install wireguard -y# WireGuard 버전 확인wg --version RHEL 계열 리눅스

0

Ubuntu Linux에 OpenVPN 설치 및 설정 가이드

OpenVPN 개요OpenVPN은 오픈소스 VPN 솔루션으로, 안전한 원격 접속과 네트워크 간 통신을 제공합니다. SSL/TLS를 사용하여 강력한 암호화를 지원하며, 방화벽을 통과하기 쉬운 구조로 설계되어 있습니다. 1. OpenVPN 서버 설치# 패키지 목록 업데이트sudo apt updatesudo apt upgrade -y# OpenVPN 설치sudo apt install openvpn -y# Easy-RSA 설치 (인증서 관리 도구)sudo apt install easy-rsa -y# OpenVPN 버전 확인openvpn --version# 설치된 파일 확인dpkg -L openvpn | grep bin 2. PKI (Public Key Infrastructure) 설정Easy-RSA 디렉토리 설정# Easy-RSA 디렉토리 생성make-cadir ~/openvpn-ca# 디렉토리 이동cd ~/openvpn-ca CA (Certificate Authority) 설정# vars 파일 편집nano vars# 다음 내용 수정 (예시)set_var EASYRSA_REQ_COUNTRY "KR"set_var EASYRSA_REQ_PROVINCE "Seoul"set_var EASYRSA_REQ_CITY "Seoul"set_var EASYRSA_REQ_ORG "MyCompany"set_var EASYRSA_REQ_EMAIL "admin@example.com"set_var EASYRSA_REQ_OU "IT Department"

0

Fail2ban 설치 및 사용 가이드

Fail2ban 개요Fail2ban은 로그 파일을 모니터링하여 악의적인 활동(무차별 대입 공격, 포트 스캔 등)을 탐지하고 자동으로 차단하는 침입 방지 소프트웨어입니다. 주요 기능 로그 파일 실시간 모니터링 정규표현식 기반 패턴 매칭 자동 IP 차단 (iptables, firewalld, ufw 등) 시간 기반 자동 차단 해제 이메일 알림 기능 다양한 서비스 지원 (SSH, Apache, Nginx, MySQL 등) 작동 원리 로그 모니터링: Fail2ban은 지정된 로그 파일을 실시간으로 감시합니다. 패턴 매칭: 설정된 정규표현식 패턴(filter)과 로그를 비교합니다. 실패 횟수 카운트: 특정 IP에서 실패가 발생할 때마다 카운트를 증가시킵니다. 차단 실행: 설정된 임계값(maxretry)을 초과하면 해당 IP를 차단합니다. 자동 해제: 설정된 시간(bantime) 후 자동으로 차단을 해제합니다. 1. 설치Ubuntu/Debian# 패키지 업데이트sudo apt update# Fail2ban 설치sudo apt install fail2ban -y# 서비스 시작 및 자동 시작 설정sudo systemctl start fail2bansudo systemctl enable fail2ban# 상태 확인sudo systemctl status fail2ban

0

Git - Gitleaks로 민감정보 탐지하기

Gitleaks란?Gitleaks는 Git 저장소에서 비밀번호, API 키, 토큰과 같은 민감한 정보(secrets)를 탐지하는 오픈소스 보안 도구입니다. 코드를 커밋하기 전이나 CI/CD 파이프라인에서 실행하여 실수로 민감정보가 코드 저장소에 포함되는 것을 방지할 수 있습니다. 주요 특징 빠른 스캔: Go 언어로 작성되어 빠른 성능 제공 다양한 탐지 규칙: 100개 이상의 내장 규칙으로 주요 서비스의 비밀정보 탐지 커스터마이징 가능: 사용자 정의 규칙 추가 가능 Git 통합: pre-commit hook으로 설정 가능 CI/CD 통합: GitHub Actions, GitLab CI 등과 쉽게 통합 설치macOS (Homebrew)brew install gitleaks Linux# Binary 다운로드wget https://github.com/gitleaks/gitleaks/releases/download/v8.18.0/gitleaks_8.18.0_linux_x64.tar.gztar -xzf gitleaks_8.18.0_linux_x64.tar.gzsudo mv gitleaks /usr/local/bin/

0

Nginx SSL/TLS 적용하기

SSL/TLS란?SSL (Secure Sockets Layer) 과 TLS (Transport Layer Security) 는 인터넷 통신을 암호화하는 프로토콜입니다. 1994년 넷스케이프에서 SSL 1.0을 개발한 이후, SSL은 웹 보안의 표준으로 자리잡았습니다. 그러나 여러 보안 취약점이 발견되면서 1999년 IETF(Internet Engineering Task Force)는 SSL 3.0을 기반으로 한 TLS 1.0을 발표했습니다. 현재 SSL 3.0과 TLS 1.0, 1.1은 보안상의 이유로 폐기되었으며, TLS 1.2(2008년 발표)와 TLS 1.3(2018년 발표)만 사용해야 합니다. 그럼에도 불구하고 역사적 이유와 관례상 “SSL 인증서” 또는 “SSL/TLS”라는 용어를 계속 사용하고 있습니다. SSL/TLS의 작동 원리SSL/TLS는 비대칭 암호화와 대칭 암호화를 조합하여 안전한 통신을 제공합니다: 핸드셰이크 단계: 클라이언트와 서버가 비대칭 암호화(공개키/개인키)를 사용하여 안전하게 세션키를 교환합니다. 데이터 전송 단계: 교환된 세션키를 사용하여 대칭 암호화로 빠르게 데이터를 암호화/복호화합니다. 검증 단계: 인증서를 통해 서버의 신원을 확인하고, 메시지 인증 코드(MAC)로 데이터 무결성을 보장합니다. 이러한 구조 덕분에 SSL/TLS는 높은 보안성과 효율성을 동시에 제공할 수 있습니다. 왜 SSL/TLS가 필수인가?1. 데이터 암호화 - 도청 방지