nginx 썸네일형 리스트형 Nginx 등록되지 않은 가상호스트를 차단 및 제한하는 방법 Nginx 등록되지 않은 가상호스트(Default Server)를 차단 및 제한하는 방법웹 서버를 운영하다 보면 등록하지 않은 도메인이나 IP 주소로 직접 들어오는 정체불명의 공격성 요청을 자주 마주하게 됩니다. Nginx의 default_server 설정과 비표준 응답 코드 444 그리고 더미 인증서를 활용해 이러한 불필요한 트래픽을 원천 봉쇄하고 서버 보안을 강화하는 방법입니다.개념 정리return 444;Nginx 전용 비표준 코드HTTP 응답 헤더조차 보내지 않고 즉시 TCP 연결 종료일반적인 HTTP 상태 코드(403, 404)보다 훨씬 "조용한" 차단 방식입니다.ssl_reject_handshake on;SSL 핸드쉐이크 단계에서 연결 자체를 거부유효하지 않은 도메인 요청에 대해 인증서 정보 .. 더보기 Nginx 환경에서 WordPress 설치하는 방법 Nginx 환경에서 WordPress 설치하는 방법테스트 환경OS : Ubuntu 24.04 LTSWeb : Nginx 1.28PHP : PHP-FPM 8.4WordPress 경로 : /usr/share/nginx/htmlNginx, PHP-FPM 설정PHP extensions 체크 확인php -m | grep -E 'mysqli|gd|curl|mbstring|zip|xml'PHP-FPM 소켓 확인ls /run/php/기본 Nginx 서버블록(HTTP)더보기---### 기본 서버 블록server { listen 80; server_name example.com www.example.com; return 301 https://$host$request_uri;}### HTTPS 서버 블록server {.. 더보기 Nginx에 커스텀 헤더 추가하기 Nginx에 커스텀 헤더 추가하기(add_header 지시어)기본 개념add_header는 nginx가 클라이언트에 응답을 보낼 때 원하는 HTTP 헤더를 추가하는 설정입니다. 형식add_header [always];헤더이름 : X-Served-By값 : 문자열 혹은 nginx 변수 ($hostname, $remote_addr, $server_addr, $NODE_NAME 등)always : 4xx, 5xx 응답에도 항상 헤더를 포함할 때 사용커스텀 헤더 설정고정 문자열 방식서버 이름을 직접 지정하는 가장 단순한 방식입니다.sudo vim /etc/nginx/nginx.confhttp { include /etc/nginx/mime.types; default_type applic.. 더보기 Nginx에서 특정 IP 주소를 차단하는 방법 Nginx에서 특정 IP 주소를 차단하는 방법Nginx에서 특정 IP 주소(예: 190.97.237.68, 203.0.113.55)를 차단하면서 해당 IP의 요청이 로그(액세스 로그 또는 에러 로그)에 기록되지 않도록 설정하려면 access_log off와 deny 지시어를 조합하여 특정 IP에 대해 로깅을 비활성화할 수 있습니다.Nginx 설정sudo vim /etc/nginx/nginx.conf### nginx.confuser nginx;worker_processes auto;error_log /var/log/nginx/error.log notice;pid /run/nginx.pid;events { worker_connections 1024;}http { include .. 더보기 우분투 서버에 NGINX, PHP-FPM, Redis, PostgreSQL을 설치하고 연동하는 방법 우분투 서버에 NGINX, PHP-FPM, Redis, PostgreSQL을 설치하고 연동하는 방법전체 구성도NGINX ↔ PHP-FPM ↔ Redis ↔ PostgreSQL 순서로 데이터가 흐르는 구조더보기---Mermaid Live Editor(Link)graph LR web01[Web Serverweb-01192.168.0.101NGINX] app01[Application Serverapp-01192.168.0.111PHP-FPM] cache01[Cache Servercache-01192.168.0.121Redis] db01[Database Serverdb-01192.168.0.131PostgreSQL] web01 --> app01 app01 --> cache01 .. 더보기 우분투 nginx 설치 명령어(DEBIAN_FRONTEND) 우분투 nginx 설치 명령어(DEBIAN_FRONTEND)sudo DEBIAN_FRONTEND=noninteractive apt-get install -y nginx해당 명령어는 데비안 계열 운영체제에서 Nginx를 설치하기 위한 명령어입니다. sudo는 root 권한으로 실행하겠다는 의미이며,DEBIAN_FRONTEND=noninteractive는 데비안 계열 운영체제에서 패키지를 자동으로 설치할 때 발생할 수 있는 인터랙티브 프롬프트를 무시하고 미리 설정한 기본값으로 패키지를 설치하겠다는 의미입니다.apt-get은 패키지 관리자로,install은 패키지를 설치하는 명령어입니다.-y 옵션은 설치할 때 물어보는 모든 질문에 yes를 자동으로 입력하겠다는 의미이며,nginx는 설치할 패키지 이름입니다. .. 더보기 우분투 24.04에서 Nginx 1.28과 PHP 8.3을 설치하는 방법 우분투 24.04에서 Nginx 1.28과 PHP 8.3을 설치하는 방법테스트 환경$ lsb_release -dDescription: Ubuntu 24.04.1 LTSNginx 설치필수 구성 요소 설치sudo apt updatesudo apt install -y curl gnupg2 ca-certificates lsb-release ubuntu-keyringNginx 저장소 추가curl -fsSL https://nginx.org/keys/nginx_signing.key | gpg --dearmor \ | sudo tee /usr/share/keyrings/nginx-archive-keyring.gpg >/dev/nullecho "deb [signed-by=/usr/share/keyrings/n.. 더보기 웹 서버에서 특정 디렉토리에 대한 접근을 제한하는 방법 웹 서버에서 특정 디렉토리에 대한 접근을 제한하는 방법아래에서는 Apache와 Nginx에서 특정 디렉토리에 대한 접근을 제한하는 방법입니다.Apache에서 디렉토리 접근 제한1. Apache의 설정 파일(httpd.conf 또는 가상 호스트 설정 파일)을 엽니다. 2. 접근을 제한하려는 디렉토리 블록 내에 다음과 같이 Require all denied를 추가합니다. Require all denied/path/to/directory는 접근을 제한하려는 디렉토리 경로로 대체해야 합니다. 3. 설정 파일을 저장합니다.변경 사항을 적용하기 위해 Apache를 다시 시작해야 합니다. Ubuntu에서 Apache를 재시작하는 명령은 다음과 같습니다.sudo service apache2 restart이제 해당.. 더보기 이전 1 2 3 4 ··· 8 다음