>운영 및 유지보수 >엔진스 >Nginx 역방향 프록시 SSL 구성, 암호화된 웹사이트 데이터 전송

Nginx 역방향 프록시 SSL 구성, 암호화된 웹사이트 데이터 전송

WBOY
WBOY원래의
2023-07-05 17:29:112550검색

Nginx 역방향 프록시 SSL 구성, 암호화된 웹사이트 데이터 전송

인터넷이 발전하면서 네트워크 보안 문제가 점점 더 많은 사람들의 관심을 끌고 있습니다. 웹사이트 데이터 전송의 보안을 보호하기 위해 웹사이트 관리자는 일반적으로 SSL 암호화를 사용하여 데이터 보호를 강화합니다. Nginx는 SSL 구성 시 매우 유연하고 편리한 고성능 웹 서버이자 역방향 프록시 서버입니다.

이 글에서는 웹사이트 데이터 전송의 보안을 보장하기 위해 Nginx에서 역방향 프록시 및 SSL 암호화를 구성하는 방법을 소개합니다.

먼저 Nginx가 서버에 설치되어 있는지 확인하세요. 그런 다음 SSL 인증서 파일을 준비해야 합니다. 일반적으로 SSL 인증서는 타사 조직을 통해 구입하거나 자체 서명된 인증서를 직접 만들 수 있습니다. 여기서는 구성 단계를 설명하기 위해 자체 서명된 인증서를 예로 들어 보겠습니다.

1단계: 개인 키 파일 생성

먼저 서버와 클라이언트 간의 암호화된 통신을 위해 개인 키 파일을 생성해야 합니다. 다음 명령을 사용하여 생성할 수 있습니다:

$ openssl genrsa -out private.key 2048

이렇게 하면 private.key라는 개인 키 파일이 생성됩니다.

2단계: 인증서 서명 요청 파일 생성

다음으로 인증 기관(CA, CA)에 인증서를 신청하기 위한 인증서 서명 요청(CSR) 파일을 생성해야 합니다. 이는 다음 명령을 사용하여 생성할 수 있습니다.

$ openssl req -new -key private.key -out csr.csr

이렇게 하면 csr.csr이라는 인증서 서명 요청 파일이 생성됩니다.

3단계: 자체 서명 인증서 생성

인증서를 구매하고 싶지 않은 경우 자체 서명 인증서를 직접 만들 수 있습니다. 이는 다음 명령을 사용하여 생성할 수 있습니다:

$ openssl x509 -req -days 365 -in csr.csr -signkey private.key -out certificate.crt

그러면 Certificate.crt라는 자체 서명된 인증서 파일이 생성됩니다.

4단계: Nginx 서버 구성

Nginx 구성 파일에서 역방향 프록시 및 SSL 구성을 위해 다음 콘텐츠를 추가합니다.

server {
    listen       80;
    server_name  example.com;
    
    location / {
        proxy_pass https://backend_server;
        proxy_set_header Host $host;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    }
}

server {
    listen       443 ssl;
    server_name  example.com;
    
    ssl_certificate     /path/to/certificate.crt;
    ssl_certificate_key /path/to/private.key;
    
    location / {
        proxy_pass https://backend_server;
        proxy_set_header Host $host;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    }
}

위 구성에서 example.com为想要配置SSL的网站域名,backend_server는 백엔드 서버의 주소입니다.

구성이 완료된 후 Nginx 서버를 다시 시작하여 구성을 적용하세요. 이러한 방식으로 Nginx는 SSL 암호화 전송을 달성하기 위해 사용자의 요청을 포트 80(암호화되지 않음)에서 포트 443(암호화됨)으로 전달합니다.

요약

역방향 프록시 및 SSL 구성에 Nginx를 사용하면 보다 안전한 데이터 전송을 제공할 수 있습니다. 자체 서명된 인증서를 생성하고 Nginx 서버를 구성함으로써 웹사이트 데이터의 전송 프로세스를 보호할 수 있습니다. 물론, 더 높은 신뢰성을 얻으려면 가능하다면 공식 SSL 인증서를 구입하는 것이 좋습니다.

이 글이 Nginx 역방향 프록시 SSL 구성 단계를 이해하고 웹사이트 데이터 전송 보안을 강화하는 데 도움이 되기를 바랍니다. 질문이 있으시면 토론을 위해 메시지를 남겨주세요.

위 내용은 Nginx 역방향 프록시 SSL 구성, 암호화된 웹사이트 데이터 전송의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.