본문 바로가기

IT관련 팁

haugene/transmission-openvpn 설치를 위한 가이드

728x90

DSM 7.2에서 haugene/transmission-openvpn 최신버전(작성기준) 이미지를 기준으로 테스트 되었습니다

이 가이드는 portainer.io를 사용하여 실행되었습니다

시놀로지의 Container Manager를 이용하더라도 알맞은 환경 변수를 입력하면 아마 구동 가능하지만 직접 테스트하지는 않았습니다.

 

 

 

 

Stacks - Add stack

 

 

 

##Docker Compose## (--- 아래부터 붙여넣으세요)

 

---

version: '3.3'
services:
    transmission-openvpn:
        cap_add:
            - NET_ADMIN
        volumes:
            - '/개인의/storage/경로/:/data'
            - '/개인의/config/경로/:/config'
            - '/개인의/ovpn파일이/저장된/경로/:/etc/openvpn/custom/'
        environment:
            - OPENVPN_PROVIDER=자신이 쓰는 VPN
            - OPENVPN_CONFIG=자신이 쓰는 VPN파일
            - OPENVPN_USERNAME=자신이 쓰는 VPN 아이디
            - OPENVPN_PASSWORD=자신이 쓰는 VPN 비밀번호
            - PUID=트랜스미션 관련 접근 권한을 허용한 시놀로지 계정

            - OPENVPN_OPTS=--inactive 3600 --ping 10 --ping-exit 60
            - TZ=시간대지정
            - TRANSMISSION_WEB_UI=트랜스미션 웹 UI 설정
        logging:
            driver: json-file
            options:
                max-size: 10m
        ports:
            - '9091:9091'
        sysctls:
            - net.ipv6.conf.all.disable_ipv6=0
        image: haugene/transmission-openvpn

---

 

 

 

##붙여넣은 Docker Compose 문서를 기반으로 편집할 내용들##

volumes:  
- '/개인의/storage/경로/:/data' 트랜스미션을 통해 다운받은 파일 등이 저장되는 공간입니다.
트랜스미션을 실행하면 최초 지정한 경로 아래에 completed, incomplete, watch폴더는 알아서 생성됩니다.

/개인의/storage/경로/ 부분을 변경
- '/개인의/config/경로/:/config' 트랜스미션 기본 구동 등에 사용되는 경로입니다.

/개인의/config/경로/ 부분을 변경
- '/개인의/ovpn파일이/저장된/경로/:/etc/openvpn/custom/' https://haugene.github.io/docker-transmission-openvpn/supported-providers/
1. 위 사이트에서 자신이 사용중인 VPN 공급자가 있다면
- '/개인의/ovpn파일이/저장된/경로/:/etc/openvpn/custom/' 이 줄은 필요 없습니다 지워버려도 됩니다

2. ovpn파일을 따로 저장해 설정할 경우에 필요한 옵션입니다
사용할 경우 /개인의/ovpn파일이/저장된/경로/ 를 수정하면 됩니다


하단추가설명참고

 

environment:  
- OPENVPN_PROVIDER=자신이 쓰는 VPN https://haugene.github.io/docker-transmission-openvpn/supported-providers/
위 사이트에서 자신이 사용중인 VPN 공급자가 있다면 그 회사 이름을 써주면 됩니다

예시
- OPENVPN_PROVIDER=EXPRESSVPN



ovpn파일을 직접 받아 설정할 경우에는 CUSTOM 입니다
- OPENVPN_PROVIDER=CUSTOM


하단추가설명참고
- OPENVPN_CONFIG=자신이 쓰는 VPN파일 https://github.com/haugene/vpn-configs-contrib/tree/main/openvpn

자신이 사용할 VPN 파일명을 확장자.ovpn을 제외하고 작성하면 됩니다

예시
- OPENVPN_CONFIG=my_expressvpn_albania_udp


하단추가설명참고
- OPENVPN_USERNAME=자신이 쓰는 VPN 아이디 사용하는 VPN회사의 계정정보


하단추가설명참고
- OPENVPN_PASSWORD=자신이 쓰는 VPN 비밀번호  사용하는 VPN회사의 계정정보


하단추가설명참고
- PUID=트랜스미션 관련 접근 권한을 허용한 시놀로지 계정 권한을 가진 시놀로지 계정 PUID


하단추가설명참고

- OPENVPN_OPTS=--inactive 3600 --ping 10 --ping-exit 60
일종의 킬 스위치입니다(해도되고 안해도됨)
VPN과 연결이 끊어지면 사용이 중지됩니다

필요 없으면 지우기
- TZ=시간대지정 TimeZone 설정

https://en.wikipedia.org/wiki/List_of_tz_database_time_zones   참고
- TRANSMISSION_WEB_UI=트랜스미션 웹 UI 설정 트랜스미션 웹 UI 설정(해도되고 안 해도됨)

https://haugene.github.io/docker-transmission-openvpn/config-options/#alternative_web_uis   참고

필요 없으면 지우기

하단추가설명참고

 

 

 

##추가설명##

 

우선,

https://haugene.github.io/docker-transmission-openvpn/supported-providers/

에서 자신이 사용하는 VPN이 있는지 확인해주세요

 

1. 리스트에 VPN회사가 있을 경우

 

리스트에 있는 VPN회사는 .ovpn 파일을 내가 따로 저장해둘 필요 없이 알아서 다운로드 받고 설정합니다

 

예를들어 제가 사용하는 VPN이 ExpressVPN이라고 가정하겠습니다.

https://github.com/haugene/vpn-configs-contrib/tree/main/openvpn/expressvpn

에서 사용할 .ovpn파일명을 확인해주세요

여기에서는 예시로 my_expressvpn_albania_udp.ovpn을 사용할겁니다

 

자기가 알아서 내려받아 사용하기 때문에 volumes: 세번째 줄의 - '/개인의/ovpn파일이/저장된/경로/:/etc/openvpn/custom/' 는 필요가 없습니다 지워버리세요

 

내가 사용하는 회사가 ExpressVPN이고 사용할 ovpn파일은 my_expressvpn_albania_udp(.ovpn확장자 빼기) 입니다

 

volumes:

- '/개인의/ovpn파일이/저장된/경로/:/etc/openvpn/custom/' (지웠다는 뜻 실제로는 입력 X)

environment:

- OPENVPN_PROVIDER=EXPRESSVPN

- OPENVPN_CONFIG=my_expressvpn_albania_udp

 

이런식으로 작성됩니다

 

 

2. 리스트에 VPN회사가 없을 경우, 또는 ovpn파일을 내가 따로 내려받아 설정하고 싶을 경우

 

사용하는 VPN 회사의 웹사이트에 들어가서 .ovpn파일을 내려받아 줍니다.

내 시놀로지에 임의의 폴더를 만들고 다운받은 .ovpn파일을 저장합니다

 

예를 들어 저같은 경우 volume1/openvpn/config 경로에 jp.udp.ovpn을 저장했습니다

 

volumes:

- 'volume1/openvpn/config/:/etc/openvpn/custom/'

environment:

- OPENVPN_PROVIDER=CUSTOM

- OPENVPN_CONFIG=jp.udp

 

이런식으로 작성됩니다

 

 

##계정 설정법##

OPENVPN_PASSWORD, OPENVPN_PASSWORD 부분에 대한 설명입니다

보통 사용중인 VPN회사의 로그인에 사용하는 계정을 입력하면 됩니다

 

일부 VPN회사는 OpenVPN에 사용하는 계정 정보를 따로 부여하는 경우가 있습니다

 

예를들면, 이 사진은 protonVPN회사의 설명인데 .ovpn파일을 사용하기 위해서는 사이트에 로그인하는 계정이 아니라 account내에서 확인 가능한 따로 부여된 정보를 사용합니다

 

자신이 사용하는 VPN회사가 .ovpn에 별도의 정보를 사용한다면, 각 회사의 안내 페이지를 확인하시기 바랍니다

 

 

##PUID 확인방법##

https://ithun.tistory.com/108

참고하세요

 

 

##TRANSMISSION_WEB_UI  설정방법##

https://haugene.github.io/docker-transmission-openvpn/config-options/#alternative_web_uis

 

5가지 옵션이 존재합니다

간단히 말해, 트랜스미션 web ui를 다른 디자인으로 사용하는 옵션입니다

설정없이 기본으로 쓰려면 '- TRANSMISSION_WEB_UI=트랜스미션 웹 UI 설정' 줄을 지워버리면 됩니다

 

 

설정하면 웹 디자인이 이런 저런걸로 바뀌는 겁니다

 

 

 

그럼,

    공유합니다.