본문 바로가기

Infra/NGINX4

[Nginx] Nginx에 SSL를 적용해보자(SSL 개념) 이번 포스팅에서는 Nginx에 SSL 인증서를 적용해보는 법을 알아보려 한다. 우선 시작하기에 앞서 SSL/TLS는 뭘까? SSL/TLSSSL(Secure Socket Layer) 또는 TLS(Transport Layer Security)은 전송계층 상에서클라이언트, 서버에 관한 인증 및 데이터 암호화를 수행한다. 즉, 클라이언트와 서버 양단 간 응용계층 및 TCP 전송계층 사이에서 안전한 보안 채널을 형성해주는 역할을 하는 보안용 프로토콜이다.이 둘은 보통 버전의 차이이며, 보통 SSL이라 통칭한다.(엄밀히 말하면 SSL을 좀 더 정교한게 만든 것이 TLS 라고 한다.) 기본적으로 HTTP/2 프로토콜을 통해 동작한다. 응용계층 및 전송계층 사이에 위치하나 전송계층 보다 응용계층에 밀접하게 동작한다.운.. 2024. 3. 17.
[Nginx] Nginx의 5가지 주요 기능을 nginx.conf 파일과 함께 알아보자 Nginx의 5가지 주요 기능은 뭘까?장애를 대응하는 방법로드 밸런싱으로 부하분산을 수행하기Keep Alive로 자원을 효율적으로 이용Sub-Domain으로 다양한 서버 호스팅캐싱 처리로 더 빠른 속도를 제공그러면 각각의 기능을 nginx.conf 파일로 녹여내보자.장애 대응장애 대응 기능은 Backend 서버에 관한 요청과 응답을 토대로 장애를 판단해준다.장애 대응을 위해서는 Upstream Module을 사용하는데, max_fails, fail_timeout으로 서버의 상태를 확인한다.max_fails=n : n으로 지정된 횟수만큼 연결을 실패하면 서버가 다운된 것으로 판단한다.fail_timout=n : max_fails가 지정된 상태에서 n값으로 설정된 시간만큼 서버가 응답하지 않으면 서버가 다운.. 2024. 3. 16.
[Nginx] Nginx의 핵심 파일인 nginx.conf에 관해 알아보자 지난 포스팅에서 우리는 Nginx가 뭔지 알아보았고 왜 Nginx를 쓰는지에 관해 알아보았다. 이번 포스팅에서는 Nginx의 실제 사용에 대해 알아본다. 필자는 AWS EC2에서 수행했다.Nginx의 디렉토리 구조우선, 제목에도 알 수 있듯이 Nginx의 핵심 파일은 nginx.conf이다. 이건 어디에 있을까?  find 명령어를 사용해서 /(루트 디렉토리) 부터 nginx.conf가 어딨는지 확인할 수 있다.  /etc/nginx 디렉토리의 내부 구성은 다음과 같다. 1. nginx.conf: 메인 설정 파일2. fcgi.conf: Fast CGI 환경설정 파일 Nginx는 알겠는데 Fast CGI는 뭘까? FastCGICGI(Common Gateway Inteface)의 한 형태로, 웹 서버와 애플.. 2024. 3. 16.
[Nginx] Nginx는 뭘까? Nginx 기능에는 어떤 것들이 있을까? Nginx 기본적으로 Nginx는 단순히 정적 파일을 호스팅 해주는 웹서버이다. 하지만 다른 웹서버와 다른 특징이 있다. nginx의 컨셉은 다음과 같다.적은 자원으로 더 빠르게 서비스를 제공Nginx의 컨셉에 적은 자원으로 서비스를 빠르게 제공한다고 했는데, 어떻게 그게 가능할까? 바로 이벤트 처리 방식이다.Event-Driven  Event-Driven 방식이 사용되어 적은 자원으로 빠른 제공이 가능해 진 것이다. Nginx가 아닌 다른 웹 서버는 Thread Programming으로,매 요청당 하나의 Thread를 생성한다. 그렇기 때문에 많은 요청이 있을 때 CPU의 부하를 걱정해야 하지만,Nginx의 비동기 Event-Driven 방식은 요청을 하나의 Event라 보고 Event Handler으.. 2024. 3. 16.