본문 바로가기

nginx4

[4] Nginx에 HTTPS/SSL 적용하기 해당 게시글은 이전 게시글과 이어지는 글입니다. 현재 구성된 파일 서버는 http 프로토콜을 이용한다. 사용하다 보면 다음과 같이 주소창에 주의 요함 표시를 확인할 수 있다 . 클릭해보면 HTTPS 프로토콜이 사용되지 않았음을 알 수 있다. HTTP 프로토콜은 전송되는 정보에 대한 암호화가 이루어지지 않고, HTTP 메시지에 평문으로 전달되기 때문에 유출의 위험이 있다. HTTPS 는 HTTP 프로토콜에 SSL/TLS 암호화를 추가하여 메세지를 암호화 및 복호화 한다. 1. Let's Encrypt 에서 인증서 발급받기. HTTPS 프로토콜을 사용하기 위해선 인증서가 필요하다. (엄밀히 말하면, SSL/TLS 프로토콜 영역에서 필요하다) 브라우저에는 여러 인증 기관들의 공개키를 포함한 Root CA 기관.. 2020. 9. 8.
[3] 라즈베리 파이에 정적 파일 서버 띄우기 + 계정 인증 이번 게시글에선 간단한 static file server를 nginx를 이용하여 띄워 볼 계획이다. 이 과정을 통해 다음과 같은 정적 파일 서버를 간단하게 구성할 수 있다. 만약 라즈베리가 포트포워딩이 되어있지 않아 접근하기가 힘들다면 이 글을 먼저 읽어보고 설정한 후에 작업해보자. 1. Nginx 설치 nginx는 매우 가벼운 웹 서버이며, 리버스 프록시로도 이용할 수 있고, 여러 플러그인을 도입해 이용할 수 있다. sudo apt-get install nginx 를 통해 nginx를 설치하고, /etc/nginx의 nginx.conf 파일을 조회해보자. sudo apt-get install nginx SSL, gzip 및 여러 설정들이 있지만, 우린 여기에 주목해보자. nginx에서는 개별 호스트에 .. 2020. 9. 7.
[라이브 스트리밍 서비스] - 2. nginx 설정 및 https 설정 사실 nginx를 이용하면 하나의 서버에서 여러개의 도메인을 서빙할 수 있다. 근데 이 당시엔 그걸 몰라서, hls 서버랑 웹 서버의 도메인을 분리하기 위해 서버를 2개로 구성했던 것이다. 모든 서버는 단순히 route에 A Record를 직접 연결해서 구성했다. 로드밸런서 멀티캐스트 서버 이런거 없다. RTMP / HLS Server RTMP 처음 nginx를 빌드할 때 rtmp-module과 같이 빌드 한 nginx를 사용한다는 전제가 있다. hls_path는 임의로 설정할 수 있는데, 중요한 건 nginx user가 해당 폴더에 대한 소유권이 있어야 한다 nginx default user는 www-data 이니 chown 을 이용하자. latency를 최소화하기 위해서 fragment 크기를 줄이고.. 2020. 7. 4.
[라이브 스트리밍 서비스] - 1. 서비스의 구조 & 실행 방법 이 글은 제가 어떻게 서비스의 구조를 가져갔는지에 대한 기록이라, 몇몇 내용들이 생략될 수 있습니다. 서버를 2개나 잡아먹고 있어서 (사실 nginx를 쓰면 그럴 이유가 없었는데) 어서 내려야해.. (빈 지갑) 자세한 것과 궁금한 부분들은 댓글로 달아주시면 감사하겠습니다. 서비스의 구조 처음 프로젝트 구상을 할 땐 이런 구조를 생각했었다. rtmp와 hls를 동시에 수행하는 컨테이너에, 사용자가 송출한 영상을 multicast하여 각 컨테이너마다 이를 처리하여 hls fragment를 구성한다. user가 많아지면 컨테이너 수를 늘려 요청을 분산하는 식으로.. 근데 multicast를 어떻게 해야 할 지 몰라서 (+ 시간없음크리..) 우선 밑에와 같이 간단하게 구성하였다. 애는 내 TODO 에 포함되어 .. 2020. 7. 4.