4 min read

BitTorrent (Transmission)

비트토렌트는 BitTorrent Inc.에서 공개하고 있는 파일공유 프로토콜이며, 이를 오픈소스로 구현한게 Transmission이다.

NAS에서 굴러가는 Transmission 또한 서비스 데몬 형태로 구동된다.

데몬 설정

Services-BitTorrent 로 진입한다.

Transmission

다른 서비스와 동일하게, 우상단의 Enable을 체크하여 서비스를 활성화 해 준다. 다운로드 디렉터리를 제외하면 나머지는 기본값으로 둬도 된다.

  • Peer port : 토렌트 데이터가 오가는 포트이다. 기본값으로 둔다.
  • Download directory : 파일을 다운로드 받게 되는 기본값 경로이다. 여기는 transmission 사용자가 쓰기 권한이 있어야 한다.
  • Configuration directory : 트랜스미션 데몬이 설정파일을 저장하는 공간인데, 설정파일을 직접 변경하지 않는다면 빈 칸으로 둬도 된다.
  • Port forwarding : 공유기를 사용하는 환경에서 UPnP를 이용해서 자동 포트포워딩을 사용한다.
  • Peer exchange, Distributed hash table : 토렌트 공유 기능이다. 활성화 해 둔다.
  • Encryption : 토렌트 전송할 때 암호화 사용 여부를 결정한다. Required 설정시 상대방이 암호화를 사용하지 않는다면 연결이 차단된다.
  • Upload/Download bandwidth : 업/다운로드에 사용할 최대 대역폭을 설정한다.
  • Watch directory : 해당 디렉터리에 .torrent 파일을 저장하면 자동으로 다운로드 목록에 추가된다. 스크립트 연동하여 자동 다운로드르 돌리는 경우 필요하다.
  • Incomplete directory : 다운로드가 끝나지 않은 임시 파일을 일괄 저장해 둘 디렉터리이다. 빈 칸으로 두면 다운로드 폴더에 임시 파일이 생성된다.
  • User mask : 파일 생성시 권한 마스크이다. 기본값 0002로 두면 파일 권한은 0664로 생성되어 소유자(트랜스미션) 및 그룹 읽기/쓰기 권한이 부여된다.

Administrative WebGUI 에서는 토렌트 관리 페이지 로그인 설정을 해 준다.

  • Port : 토렌트 관리 페이지 접속용 포트이다. 하단 URL에 영향을 준다.
  • Authentication : 관리 페이지 로그인시 인증을 사용한다. 암호화 안 되므로 타 사이트와 다른 비밀번호를 사용한다.

설정후 Save & Restart 를 선택하면 데몬이 활성화된다.

이후 WebGUI URL을 클릭하면 관리 페이지에 접속하여 토렌트를 사용할 수 있다.
또는 RPC 프로토콜을 이용하여 관리할 수도 있다. Transmission Remote GUI 같은걸 쓰면 좀 더 편하게 쓸 수 있다.


transmission 유저 권한 변경

트랜스미션 서비스 데몬은 transmission:transmission 계정 및 그룹으로 실행되며, 소유권 문제가 발생한다.
다운로드 디렉터리의 퍼미션 0777 줘도 해결할 수 있지만 썩 내키지는 않을 것이다. Transmission 유저의 그룹을 변경하면 된다.

설정 메뉴에서 직접 조작은 안 되고, 설정 파일 xml을 다운로드 받아서 편집해야 한다.
System-Backup/Restore 메뉴에서 설정파일을 다운로드 받는다. 이 때 Encryption은 체크 해제한다.

다운로드 받은 xml파일을 텍스트 편집기에서 열고, transmission 을 검색하면 다음과 같은 블럭이 나올 것이다. UUID값은 다를 수 있다.

60c4bfb1-7c3c-4535-800c-2b17eeae9369 transmission 999 999 50 -m -w random -c "Transmission Daemon"

PrimaryGroup 항목을 nasusers의 GID로 변경한다. GID 확인은 Access-Users&Groups에서 확인한다.
그리고 group 항목을 하나 더 추가하고, 999를 넣어 transmission 그룹 권한 또한 추가해 준다.

설정파일을 저장하고, System-Backup/Restore 메뉴에서 설정파일을 복원한다.
시스템이 자동으로 재부팅 되며, 권한 문제가 해결될 것이다.

이제 트랜스미션으로 다운로드 받는 파일은 transmission:nasusers 소유권으로 생성된다.
umsak=0002로 그룹 읽기/쓰기 권한을 주면 간단히 다른 사용자들도 파일을 관리할 수 있게 된다.