전체 글 262

Nmap 자가 스캔 :: 불필요한 포트 찾아서 줄이기

Nmap 자가 스캔 :: 불필요한 포트 찾아서 줄이기* Nmap: 네트워크에 열려있는 포트와 서비스를 한 번에 스캔해주는 도구지금까지 nc -zv로 포트 하나씩 확인했던 걸, Nmap은 지정한 범위 전체를 한 번에 스캔해줌필요성: 서버를 운영하다 보면 테스트로 켰다가 안 끈 서비스, 설치 과정에서 자동으로 열린 포트가 남아있는 경우가 흔함공격자 입장에서 정찰(Reconnaissance) 단계에 Nmap을 쓰는 것과 똑같은 방식으로, 방어자 입장에서 먼저 스캔해서 불필요한 노출을 줄이는 게 목적설치sudo apt install nmap -y기본 포트 스캔nmap localhost Starting Nmap 7.98 ... at 2026-08-14 16:19스캔 시작 시각과 사용한 Nmap 버전Nmap sca..

보안 2026.09.15

Wireshark로 눈으로 확인하는 HTTP와 HTTPS 차이

Wireshark로 눈으로 확인하는 HTTP와 HTTPS 차이Wireshark란네트워크를 지나가는 패킷을 실시간으로 캡처하고 내용을 들여다볼 수 있는 패킷 분석 도구스니핑을 이론이 아니라 직접 눈으로 확인해볼 수 있는 도구설치sudo apt install wireshark -y설치 중 일반 사용자도 캡처 권한을 줄지 묻는 창이 뜨면 Yes 선택설치 후 권한 그룹 추가sudo usermod -aG wireshark $USER재로그인 또는 재부팅 후 적용기본 캡처 시작GUI로 켜려면 wireshark, CLI로 캡처하려면 tshark 사용sudo tshark -i eth33인터페이스명은 ip addr로 미리 확인실행하면 실시간으로 오가는 패킷들이 프로토콜, 출발지, 목적지와 함께 출력됨HTTP(평문) 통신 ..

Network 2026.09.14

SMTP/POP3/IMAP 정리 :: 이메일 프로토콜의 차이

SMTP/POP3/IMAP 정리 :: 이메일 프로토콜의 차이SMTP (Simple Mail Transfer Protocol)이메일 발신 전용 프로토콜발신자 → 메일 서버, 서버 → 서버 전달에 사용포트 25(기본), 587(암호화 전송, 실무 표준)받는 기능은 없음POP3 (Post Office Protocol version 3)이메일 수신용 프로토콜서버의 메일을 클라이언트로 다운로드다운로드 후 서버에서 삭제되는 방식이 기본값 (설정으로 유지 가능)단일 기기 중심 사용에 적합포트 110(기본), 995(암호화)IMAP (Internet Message Access Protocol)이메일 수신용 프로토콜, POP3와 달리 서버에 메일 그대로 유지클라이언트는 서버와 동기화하는 방식여러 기기에서 동일한 메일함 ..

운영체제/Linux 2026.09.13

네트워크 기초 정리 :: NAT와 포트포워딩

네트워크 기초 정리 :: NAT와 포트포워딩NAT(Network Address Translation)란사설 IP 주소를 공인 IP 주소로 바꿔주는 기술전 세계에서 쓸 수 있는 공인 IP는 한정되어 있어서, 내부에서는 사설 IP(192.168.x.x, 10.x.x.x 등)를 쓰고 외부로 나갈 때만 공유기나 서버가 공인 IP 하나로 대신 변환해서 내보냄기본 동작 원리내부 기기들이 각자 사설 IP를 가짐기기가 인터넷에 요청을 보내면, 공유기(라우터)가 출발지 IP를 자신의 공인 IP로 바꿔서 내보냄응답이 돌아오면, 공유기가 원래 요청한 내부 기기를 기억해뒀다가 다시 사설 IP로 돌려줌외부에서는 공인 IP 하나만 보이고, 내부에 몇 대가 있는지는 안 보임지금 VM 환경에서 확인하기VM 내부 IP 확인ip a외부..

Network 2026.09.10

SSH와 Telnet 정리 :: 원격 접속 프로토콜 비교와 실습 (평문 노출, 키 인증, 포트 포워딩)

SSH와 Telnet 정리 :: 원격 접속 프로토콜 비교와 실습 (평문 노출, 키 인증, 포트 포워딩)SSH와 Telnet: 원격으로 다른 컴퓨터/서버에 접속해서 명령어를 실행하기 위한 프로토콜차이는 암호화 여부* Telnet: 가장 오래된 원격 접속 프로토콜 중 하나로, 포트는 23사용통신 내용이 전부 평문으로 전송 (아이디, 비밀번호, 명령어 전부 노출)패킷 캡처하면 로그인 정보까지 노출되어 보안 문제로 사용하지 않음* SSH (Secure Shell): Telnet을 대체하기 위해 나온 프로토콜로, 22번 포트 사용모든 통신이 암호화 (공개키/개인키 기반 인증 및 대칭키로 세션 암호화)로그인 방식1. 비밀번호 인증: 아이디+비밀번호 입력2. 공개키 인증: 미리 등록한 공개키로 인증해 비밀번호 없이 ..

보안 2026.09.09

네트워크 기초 정리 :: traceroute로 경로 추적하기

네트워크 기초 정리 :: traceroute로 경로 추적하기설치 (없는 경우)sudo apt install traceroute -y정상 경로 확인traceroute 8.8.8.8결과: 목적지까지 거쳐가는 라우터(홉)들이 순서대로, 각 홉의 응답 시간과 함께 출력국내/해외 목적지 비교traceroute 8.8.8.8traceroute naver.com결과: 해외(8.8.8.8)는 국제 게이트웨이, 해저 케이블, 상대국 백본망까지 여러 구간을 거치기 때문에 홉 수가 많고 응답 시간도 긴 경향. 국내(naver.com)는 상대적으로 적은 구간만 거쳐서 홉 수가 적고 빠름응답 없는 구간(* * *) 관찰traceroute 8.8.8.8결과: 중간 홉에서 * * * 로 표시되는 구간이 나타날 수 있음. 해당 라우..

Network 2026.09.04

웹서버 성능 비교 정리 :: nginx vs Apache 응답 속도 실측

웹서버 성능 비교 정리 :: nginx vs Apache 응답 속도 실측nginx vs Apache 응답 속도 비교nginx는 비동기 이벤트 기반, Apache는 프로세스/스레드 기반이라는 구조 차이가 있음* Apache (프로세스/스레드 기반)요청이 하나 들어오면, 그 요청을 전담할 프로세스나 스레드를 하나 배정요청 100개가 동시에 오면 프로세스(또는 스레드) 100개가 각각 하나씩 붙어서 처리* nginx (비동기 이벤트 기반): 적은 수의 워커 프로세스(보통 CPU 코어 수만큼)가, 요청 하나에 매달리지 않고 여러 요청을 번갈아가며 처리어떤 요청이 파일 읽기나 DB 응답을 기다리는 동안 그 워커는 놀지 않고 다른 요청을 처리nginx 설치sudo apt install nginx -yApache 설..

Web Server 2026.09.02

SQL 기초 실습 노트 6편: SQL Injection 직접 검증하기

SQL 기초 실습 노트 6편: SQL Injection 직접 검증하기준비: 실습용 테이블과 계정 데이터 만들기sudo mysqlCREATE DATABASE login_test;USE login_test;CREATE TABLE accounts (id INT PRIMARY KEY AUTO_INCREMENT,username VARCHAR(50),password VARCHAR(50)); >> accounts라는 이름의 테이블을 생성id, username, password라는 세 개의 컬럼 생성id 컬럼은 정수형(INT)으로 저장되며, PRIMARY KEY로 설정되어 각 계정을 구분하는 고유한 값이 된다.또한 AUTO_INCREMENT 옵션을 사용하여 새로운 계정 데이터가 추가될 때마다 번호가 자동으로 1씩 증가..