IT Info & Tips/리눅스 & NAS Info

시놀로지 plex 서버에서 SSL (https) 적용하기

PLEX SSL certification On Synology NAS

통합 미디어 서버 Plex는 웹 환경과 모바일 환경을 모두 지원하는만큼 인증서를 통한 SSL 접속 기능을 사용할 수 있다. 이번 글에서는 시놀로지 DS-920+에서 SSL 인증서를 만들고 Plex 서버에 적용하는 방법을 게시하도록 한다.

가장 먼저 할 일은 사용할 인증서를 선택하는 것이다. 시놀로지 NAS를 설치했다면 기본적으로 시놀로지에서 발급한 인증서가 내장되어 있는데 범용성을 위해서는 아무래도 무료로 발급받을수 있고 광범위하게 사용되고 있는 Let's Encrypt 인증서를 새로 하나 받는게 좋을 것이다. 본 글에서는 인증서 발급 방법은 따로 다루지 않으니 시놀로지에서 공식적으로 제공하는 아래 유튜브 링크를 참고하시길 바란다.

 

▲ Synology에서 공식 제공하는 유튜브 설명서

설명대로 발급 받았다면 위와 같이 인증서가 하나 더 생긴다.

위 화면에서 발급 받은 인증서 위에 마우스 커서를 가져다대고 우클릭을 해서 컨텍스트 메뉴를 불러내 "인증서 내보내기"를 클릭해서 인증서를 다운로드하자.

파일을 열어보면 cert.pem, chain.pem, privkey.pem 의 3개 파일이 나오는데 자신의 시놀로지 나스 드라이브에 업로드 하도록 하자. 시놀로지 나스를 쓰고 있다면 드라이브 하나쯤은 smb 네트워크로 탐색기에서 접근하기 쉽게 해놨을테니 가능하면 편하게 루트쪽에 압축을 풀어놓도록 하자.

이는 Plex에서 사용되는 인증서의 확장자가 pfx 파일이기때문에 컨버전해줄 필요가 있기 때문이다.

해당 작업은 본인이 인증서를 발급받은 시놀로지 NAS 의 SSH를 통해서 진행해야하니 ssh를 열어주도록 하자.

보안을 위해서 필요할때만 열고 작업이 끝나면 ssh 는 닫아두록 하자.

Putty 같은 ssh 클라이언트를 이용해 NAS에 접속하면 접속 패스워드를 물어보는데 자신의 시놀로지 계정과 같으니 당황하지말고 입력해서 로그인하도록 하자.

프롬프트가 나오면 cd 명령어를 통해서 위에서 압축을 풀어둔 디렉토리로 이동하면 된다. 디렉토리 구조를 모르겠다면 ls 명령어를 입력하면 된다. 대부분 시놀로지의 드라이브들은 volume1로 시작하는(숫자는 바뀔수 있다.) 디렉토리 아래에 위치하니 참고하자.

압축을 풀어둔 디렉토리로 이동했다면 아래의 명령어를 복사해서 붙여넣으면 된다. 직접 보고 입력해도 된다.

sudo openssl pkcs12 -export -out 인증서도메인.pfx -in cert.pem -inkey privkey.pem -certfile chain.pem -name “인증서도메인“


위 내용 중에서 [ 인증서도메인 ] 이라고 적힌 부분은 앞서 인증서를 발급받을때 입력했던 바로 그 도메인을 뜻한다. 만약 인증서를 발급받을때 aaa.synology.me 라고 입력했다면 위 명령어의 [인증서 도메인] 부분에도 aaa.synology.me.pfx 가 입력되어야 한다. 맨 뒷부분 " " 안에도 동일하게 aaa.synology.me 를 넣어주도록 하자.

sudo 명령어는 관리자 권한을 임시로 따오는것이기에 다시 한번 패스워드를 물어볼테니 역시나 시놀로지 계정의 패스워드를 입력하면 된다. 관리자 패스워드 입력후 명령어가 실행되면 다시 패스워드를 물어보는데 이번에는 새로 만들어내는 인증서의 자체 패스워드 부분이다. 좀 더 강한 보안을 하기 위해서는 입력하는게 맞겠지만 귀찮으니 그냥 엔터키를 입력해서 공백으로 남겨두자. 두번 물어본다. 

이렇게 명령어를 입력하고나면 자신의 인증서도메인이름.pfx 파일이 생성된다. 해당 파일의 위치를 잘 알아두도록 하자. 좀 더 안전하게 하고 싶으면 위치를 옮겨도 된다. 

인증서 파일의 정확한 경로는 DSM의 File Station에서 해당 파일의 속성을 살펴보면 위치 항목을 통해 정확하게 알수 있다.

 

위 작업까지 다 끝냈다면 이제 Plex 서버에 적용을 해야 한다. Plex 서버로 접속하고 (이때 가능하면 로컬 주소로 접근하자. 192.168.1.x:포트넘버) 설정에서 네트워크 메뉴를 찾아서 아래와 같이 세팅한다.

몇가지 옵션이 더 있지만 이정도만해도 충분하다.

제일 아래 변경 저장을 클릭해서 설정을 저장하고 빠져나온다. 확실히 하기 위해서는 시놀로지에서 plex 서버를 한번 껐다켜주는것을 권장한다. 

마지막으로 공유기의 포트 포워딩과 시놀로지 방화벽에 Plex의 접속 포트가 제대로 열려있는지 정도만 체크하면 별다른 문제가 없을 것이다. 이제 주소창에 아름답게 반짝이는 자물쇠 아이콘을 바라보며 흐뭇해하면 모든것이 끝난다.

웹에서 접속했을때 모습. Let's Encrypt가 제대로 적용되어 있음을 볼 수 있다.

 

플레이어 앱에서 접속한 모습. 녹색 표시가 제대로 떠있다.