안녕하세요 이번에는 제가 WebRTC 를 이용해 무언가?를 만드는 과정에서
peer 간에 네트워크 상에서 연결을 중계시켜주는 역할을 하는 turnserver를
구축하여 동작하는 것까지 포스팅을 해보았습니다.
우분투 환경 기준으로 작성을 하였습니다.
- coturn을 설치합니다. (sudo apt install coturn)
- /etc/turnserver.conf 파일을 수정하여 서버환경을 셋팅합니다.
- turnadmin으로 사용자 계정을 추가해 줍니다.
- coturn을 서버상에서 실행합니다. 끝~
turnserver.conf 는 제가 셋팅한 파일의 내용을 올리겠습니다. (네트워크 환경에 따라 조금씩 수정하셔야 합니다.)
아래의 설정을 하기 전에 포트포워딩 또는 방화벽을 통해 tcp 3478 & tcp 5349 포트를 허용해 주셔야 합니다.
# turnserver의 포트입니다. listening-port=3478 # tls 포트입니다. tls-listening-port=5349 # 외부IP를 넣어줍니다.(공유기 사용시 WAN상의 외부IP를 넣어줍니다.) external-ip=123.123.126.123 # 로그를 뽑을 수 있으니 주석을 해제하였습니다. verbose # 이것도 주석해제 fingerprint # 인증방식 주석해제 lt-cred-mech # turnserver 도메인 네임입니다. server-name=test.com # 릴름은 원하는 네임명으로 해줍니다. realm=testname
위의 /etc/turnserver.conf 를 수정한 뒤에 저장을 해줍니다.
그 다음에는 turnadmin 을 통해 turnserver를 사용할 수 있는 계정을 생성해 줍니다.
turnadmin -a -u 계정이름 -p 계정패스워드 -r 릴름명
위의 방식으로 turnadmin을 통해 계정을 추가하면 거의 끝!
마지막으로 turnserver 실행~
sudo service coturn start
turnserver에 유저가 접속하여 중계 상태가 되면
/var/log/turn_14545_2019-01-27.log 같은 형식을 log 파일의 용량이 늘어나면서 로그가 쌓이게 됩니다.
여기까지 우분투서버에 turn 서버 설치하기 였습니다.
끝~!