Mattermost 서버에 TLS 구성

HTTPS로 사용자가 연결하길 원한다면 두 가지 옵션이 있습니다:

  1. Mattermost 서버에 TLS 설정.

  2. NGINX와 같은 프록시를 설치하고 프록시에 TLS 설정.

가장 쉬운 옵션은 Mattermost 서버에 TLS를 설정하는 것이지만, 200명 이상의 사용자가 예상된다면 성능을 더 향상시키기 위해 프록시를 사용하세요. 프록시 서버는 또한 표준 HTTP 요청 로그를 제공합니다.

Note

도메인 이름을 확인하고 인증서를 발급하기 위해 Let’s Encrypt CA에서 Mattermost 서버에 액세스할 수 있어야 합니다. 방화벽을 열고 역방향 프록시를 구성하여 트래픽을 포트 80과 443으로 전달해야 합니다. 자세한 정보는 Let’s Encrypt 에서 확인할 수 있습니다.

Mattermost 서버에 TLS 구성

  1. 시스템 콘솔 > 환경 > 웹 서버 (버전 5.12 이전의 경우 시스템 콘솔 > 일반 > 구성 )

  1. 수신 주소 설정을 :443 로 변경하십시오.

  2. 연결 보안 설정을 TLS 로 변경하십시오.

  3. 포트 80을 443으로 전달 설정을 true 로 변경하십시오.

  1. Mattermost가 낮은 포트에 바인딩할 수 있도록 CAP_NET_BIND_SERVICE 기능을 활성화하세요.

    sudo setcap cap_net_bind_service=+ep /opt/mattermost/bin/mattermost

  2. 보안 인증서를 설치하세요. Let’s Encrypt 를 사용하여 인증서를 자동으로 설치하고 설정하거나 직접 인증서를 지정할 수 있습니다.

Let’s Encrypt 인증서 사용

인증서는 클라이언트가 Mattermost 서버에 연결을 시도하는 첫 번째 시도에 검색됩니다. 클라이언트가 서버에 접근하려는 모든 호스트 이름에 대해 인증서가 검색됩니다.

  1. Let’s Encrypt 사용 설정을 true 로 변경하세요.

  2. 이러한 변경 사항이 적용되려면 Mattermost 서버를 재시작하세요.

Note

Let’s Encrypt가 활성화된 경우 Forward80To443config.json 설정을 true 로 변경하여 Let’s Encrypt 인증을 완료하기 위해 방화벽을 통해 포트 80을 전달하세요.

자체 인증서 사용

  1. Let’s Encrypt 사용 설정을 false 로 변경하세요.

  2. TLS 인증서 파일 설정을 인증서 파일의 위치로 변경하세요.

  3. TLS 키 파일 설정을 개인 키 파일의 위치로 변경하세요.

  4. 이러한 변경 사항이 적용되려면 Mattermost 서버를 재시작하세요.

Note

암호로 보호된 인증서는 지원되지 않습니다.

NGINX에서 TLS 사용 (프록시로)

Note

NGINX에 대해 TLS를 설정하기 전에 Mattermost에 대해 설정하지 마십시오. TLS는 NGINX가 Mattermost 서버와의 통신을 성공적으로 하는 것을 방해합니다.

  • NGINX는 클라이언트와 Mattermost 서버 간의 트래픽을 암호화하기 위한 전달 프록시로 작동합니다. SSL 인증서를 설치한 후에 들어오는 트래픽은 인터넷에 노출된 포트 443에서 NGINX를 통해 처리되고, 포트 80에서 Mattermost 서버로 프록시됩니다.

  • (선택 사항) NGINX에서 Mattermost 서버로의 상류 암호화가 허용됩니다.

  • NGINX의 TCP 상류 서버에 대한 SSL 종료 설정 안내서 를 따르세요.

기타 유용한 자료: