{"id":706,"date":"2021-01-28T06:20:40","date_gmt":"2021-01-28T06:20:40","guid":{"rendered":"http:\/\/bullyrooks.com\/?p=706"},"modified":"2021-02-13T15:54:20","modified_gmt":"2021-02-13T15:54:20","slug":"installing-transmission-with-openvpn","status":"publish","type":"post","link":"https:\/\/bullyrooks.com\/index.php\/2021\/01\/28\/installing-transmission-with-openvpn\/","title":{"rendered":"Installing Transmission with OpenVPN"},"content":{"rendered":"\n<p>Now we&#8217;re going to setup a bittorrent client as well as an OpenVPN client to keep our traffic secure.  This is another straightforward docker-compose modification.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Get an OpenVPN Provider<\/h2>\n\n\n\n<p>You&#8217;ll need a VPN provider.  <a href=\"https:\/\/www.privateinternetaccess.com\/pages\/hide-my-ip\/bullyrooks\">I highly recommend private internet access because I&#8217;ve been using them for years<\/a>.  They have good servers that are fast and they keep your information private.  Additionally, the image we&#8217;re going to use works extremely well with PIA and does some really useful things like automatically configuring port forwarding.<\/p>\n\n\n\n<blockquote class=\"wp-block-quote is-layout-flow wp-block-quote-is-layout-flow\"><p>I do use affiliate marketing to help pay for keeping the site up.  I am not currently using ad based revenue generation and I only market the services I actually use.  If you sign up for PIA using the link above, I do get minor compensation which helps me out and I appreciate your patronage.<\/p><\/blockquote>\n\n\n\n<h2 class=\"wp-block-heading\">Update Docker-Compose<\/h2>\n\n\n\n<p>The project page is located <a href=\"https:\/\/github.com\/haugene\/docker-transmission-openvpn\" data-type=\"URL\" data-id=\"https:\/\/github.com\/haugene\/docker-transmission-openvpn\">here<\/a>.  Additional documentation is located <a href=\"https:\/\/haugene.github.io\/docker-transmission-openvpn\/\">here<\/a>.<\/p>\n\n\n\n<p>SSH into your NAS and open docker-compose.yml for editing.  Add these lines:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>  transmission-openvpn:\n    container_name: transmission\n    image: haugene\/transmission-openvpn\n    cap_add:\n      - NET_ADMIN\n    volumes:\n      - '\/volume1\/docker\/transmission:\/data'\n      - '\/volume1\/video\/transmission\/complete:\/complete'\n      - '\/volume1\/video\/transmission\/incomplete:\/incomplete'\n    environment:\n      - OPENVPN_PROVIDER=PIA\n      - OPENVPN_CONFIG=ca_vancouver\n      - OPENVPN_USERNAME=pxxxxxxx\n      - OPENVPN_PASSWORD=XXXXXXXX\n      - LOCAL_NETWORK=192.168.1.0\/24\n      - TRANSMISSION_INCOMPLETE_DIR=\/incomplete\n      - TRANSMISSION_DOWNLOAD_DIR=\/complete\n      - TRANSMISSION_INCOMPLETE_DIR_ENABLED=true\n    logging:\n      driver: json-file\n      options:\n        max-size: 10m\n    ports:\n      - '32080:9091'\n    restart: unless-stopped\n<\/code><\/pre>\n\n\n\n<p>We want all data related to torrents to be written to the real filesystem which is why I&#8217;m including the complete and incomplete environment configuration.  I also have to mount those internal directories to the corresponding directories on the NAS which is the additional volume configuration.  <\/p>\n\n\n\n<p>Make sure that you replace the OPENVPN environment fields with your correct values.  It appears that they cannot go into the .env file, they must to into the docker-compose file to work correctly.<\/p>\n\n\n\n<p>You should also make a file in \/volume1\/docker\/transmission\/resolv.conf which will contain the PIA DNS server entries so that you don&#8217;t leak your DNS requests out of the VPN.<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>nameserver 209.222.18.222\nnameserver 209.222.18.218<\/code><\/pre>\n\n\n\n<p>You also need to make a tunnel adapter for synology.  Pete&#8217;s tech blog has a good section on <a href=\"https:\/\/petestechblog.com\/2020\/10\/04\/how-to-run-transmission-using-openvpn-in-docker-on-a-synology-nas-dsm-6-0\/\" target=\"_blank\" rel=\"noreferrer noopener\">how to create the script<\/a> and make sure that it gets run if your synology reboots.<\/p>\n\n\n\n<p>Now stop docker compose and restart with the new configuration<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>sudo docker-compose down\nsudo docker-compose up -d<\/code><\/pre>\n\n\n\n<h2 class=\"wp-block-heading\">Testing<\/h2>\n\n\n\n<p>You should be able to see the transmission screen at <code>http:\/\/${your nas ip}:32080<\/code><\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"662\" height=\"286\" src=\"https:\/\/i0.wp.com\/bullyrooks.com\/wp-content\/uploads\/2021\/01\/image-80.png?resize=662%2C286&#038;ssl=1\" alt=\"\" class=\"wp-image-707\" srcset=\"https:\/\/i0.wp.com\/bullyrooks.com\/wp-content\/uploads\/2021\/01\/image-80.png?w=662&amp;ssl=1 662w, https:\/\/i0.wp.com\/bullyrooks.com\/wp-content\/uploads\/2021\/01\/image-80.png?resize=300%2C130&amp;ssl=1 300w\" sizes=\"auto, (max-width: 662px) 100vw, 662px\" data-recalc-dims=\"1\" \/><\/figure>\n\n\n\n<p>Lets confirm that the VPN is working correctly.  Go to this <a href=\"http:\/\/checkmyip.torrentprivacy.com\/\">page<\/a>. Download the test torrent file and upload it into transmission.  Click on the folder.  Click the Choose Files button and then select the file that you just downloaded and hit upload.  When you go back to the checkmyip.torrentprivacy.com site you should see that the IP in Torrent IP is different.<\/p>\n\n\n\n<p>Now lets confirm that torrents download correctly.  Find a torrent via your favorite indexer and load it into transmission the same way we just did for the privacy tracker.  Confirm that it shows up in incomplete directory until it completes and then shows up in the completed folder on the NAS.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"618\" height=\"61\" src=\"https:\/\/i0.wp.com\/bullyrooks.com\/wp-content\/uploads\/2021\/01\/image-81.png?resize=618%2C61&#038;ssl=1\" alt=\"\" class=\"wp-image-708\" srcset=\"https:\/\/i0.wp.com\/bullyrooks.com\/wp-content\/uploads\/2021\/01\/image-81.png?w=618&amp;ssl=1 618w, https:\/\/i0.wp.com\/bullyrooks.com\/wp-content\/uploads\/2021\/01\/image-81.png?resize=300%2C30&amp;ssl=1 300w\" sizes=\"auto, (max-width: 618px) 100vw, 618px\" data-recalc-dims=\"1\" \/><\/figure>\n\n\n\n<p><\/p>\n","protected":false},"excerpt":{"rendered":"<div class=\"entry-summary\">\nNow we&#8217;re going to setup a bittorrent client as well as an&hellip;\n<\/div>\n<div class=\"link-more\"><a href=\"https:\/\/bullyrooks.com\/index.php\/2021\/01\/28\/installing-transmission-with-openvpn\/\" class=\"more-link\">Continue reading<span class=\"screen-reader-text\"> &ldquo;Installing Transmission with OpenVPN&rdquo;<\/span>&hellip;<\/a><\/div>\n","protected":false},"author":2,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[4,18],"tags":[33,35,34,6,22],"course":[17],"class_list":["post-706","post","type-post","status-publish","format-standard","hentry","category-home-networking","category-media","tag-bittorrent","tag-openvpn","tag-private-internet-access","tag-synology","tag-transmission","course-media-server-appliations","entry"],"jetpack_featured_media_url":"","jetpack-related-posts":[{"id":716,"url":"https:\/\/bullyrooks.com\/index.php\/2021\/01\/29\/adding-bittorrent-to-sonarr\/","url_meta":{"origin":706,"position":0},"title":"Adding Bittorrent to Sonarr","author":"Bullyrook","date":"January 29, 2021","format":false,"excerpt":"Lets go back to sonarr configuration for a minute and show how to add bittorrent indexer and download client. Configure an Indexer Open up sonarr (https:\/\/${your nas address}:31080) and got to the Settings\/Indexers page. Click on the big plus. Choose Torznab Custom. Now open up jackett (https:\/\/${your nas address}:9117). Click\u2026","rel":"","context":"In &quot;Home Networking&quot;","block_context":{"text":"Home Networking","link":"https:\/\/bullyrooks.com\/index.php\/category\/technology\/home-networking\/"},"img":{"alt_text":"","src":"https:\/\/i0.wp.com\/bullyrooks.com\/wp-content\/uploads\/2021\/01\/image-88.png?resize=350%2C200&ssl=1","width":350,"height":200,"srcset":"https:\/\/i0.wp.com\/bullyrooks.com\/wp-content\/uploads\/2021\/01\/image-88.png?resize=350%2C200&ssl=1 1x, https:\/\/i0.wp.com\/bullyrooks.com\/wp-content\/uploads\/2021\/01\/image-88.png?resize=700%2C400&ssl=1 2x"},"classes":[]},{"id":630,"url":"https:\/\/bullyrooks.com\/index.php\/2021\/01\/26\/what-are-the-media-server-applications\/","url_meta":{"origin":706,"position":1},"title":"What are the Media Server Applications?","author":"Bullyrook","date":"January 26, 2021","format":false,"excerpt":"In order to retrieve content for your media server, you'll need to install a collection of applications. I'm going to focus on Sonarr (which is used to signal which shows or series you want to retrieve) and Radarr (which is used to signal which movies you want to retrieve). These\u2026","rel":"","context":"In &quot;Home Networking&quot;","block_context":{"text":"Home Networking","link":"https:\/\/bullyrooks.com\/index.php\/category\/technology\/home-networking\/"},"img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]},{"id":733,"url":"https:\/\/bullyrooks.com\/index.php\/2021\/01\/30\/configuring-radarr\/","url_meta":{"origin":706,"position":2},"title":"Configuring Radarr","author":"Bullyrook","date":"January 30, 2021","format":false,"excerpt":"We're almost there! Lets configure Radarr quickly so that we can download movies. General Configuration Settings\/Media Management. Click Show Advanced. Check Rename Movies. Hit Save Changes. Configure Indexers This is almost exactly the same as sonarr. I'm just going to cover this with screenshots. Sabnzbd Bittorrent Configure Download Clients Click\u2026","rel":"","context":"In &quot;Home Networking&quot;","block_context":{"text":"Home Networking","link":"https:\/\/bullyrooks.com\/index.php\/category\/technology\/home-networking\/"},"img":{"alt_text":"","src":"https:\/\/i0.wp.com\/bullyrooks.com\/wp-content\/uploads\/2021\/01\/image-92.png?resize=350%2C200&ssl=1","width":350,"height":200,"srcset":"https:\/\/i0.wp.com\/bullyrooks.com\/wp-content\/uploads\/2021\/01\/image-92.png?resize=350%2C200&ssl=1 1x, https:\/\/i0.wp.com\/bullyrooks.com\/wp-content\/uploads\/2021\/01\/image-92.png?resize=700%2C400&ssl=1 2x"},"classes":[]},{"id":703,"url":"https:\/\/bullyrooks.com\/index.php\/2021\/01\/28\/installing-jackett\/","url_meta":{"origin":706,"position":3},"title":"Installing Jackett","author":"Bullyrook","date":"January 28, 2021","format":false,"excerpt":"Jackett is a database for bittorrent indexers. This allows you to refer to internal resources when configuring radarr and sonarr, which then get mapped to external API. It makes it really easy to add more bittorrent indexers to expand the breadth of your searches. Running Jackett Container The docker project\u2026","rel":"","context":"In &quot;Home Networking&quot;","block_context":{"text":"Home Networking","link":"https:\/\/bullyrooks.com\/index.php\/category\/technology\/home-networking\/"},"img":{"alt_text":"","src":"https:\/\/i0.wp.com\/bullyrooks.com\/wp-content\/uploads\/2021\/01\/image-79.png?resize=350%2C200&ssl=1","width":350,"height":200},"classes":[]},{"id":683,"url":"https:\/\/bullyrooks.com\/index.php\/2021\/01\/27\/install-the-sonarr-container\/","url_meta":{"origin":706,"position":4},"title":"Install the Sonarr Container","author":"Bullyrook","date":"January 27, 2021","format":false,"excerpt":"Sonarr is a tool which will track all of the tv shows (series and documentaries) that you own as well as any content that you're missing from shows that you're interested in. It will use your sabnzbd and bittorrent sources to automatically download content that you're missing. Finally, it uses\u2026","rel":"","context":"In &quot;Home Networking&quot;","block_context":{"text":"Home Networking","link":"https:\/\/bullyrooks.com\/index.php\/category\/technology\/home-networking\/"},"img":{"alt_text":"","src":"https:\/\/i0.wp.com\/bullyrooks.com\/wp-content\/uploads\/2021\/01\/Screen-Shot-2021-01-27-at-1.36.02-PM.png?resize=350%2C200&ssl=1","width":350,"height":200,"srcset":"https:\/\/i0.wp.com\/bullyrooks.com\/wp-content\/uploads\/2021\/01\/Screen-Shot-2021-01-27-at-1.36.02-PM.png?resize=350%2C200&ssl=1 1x, https:\/\/i0.wp.com\/bullyrooks.com\/wp-content\/uploads\/2021\/01\/Screen-Shot-2021-01-27-at-1.36.02-PM.png?resize=700%2C400&ssl=1 2x, https:\/\/i0.wp.com\/bullyrooks.com\/wp-content\/uploads\/2021\/01\/Screen-Shot-2021-01-27-at-1.36.02-PM.png?resize=1050%2C600&ssl=1 3x"},"classes":[]},{"id":632,"url":"https:\/\/bullyrooks.com\/index.php\/2021\/01\/27\/sabnzbd-prerequisites\/","url_meta":{"origin":706,"position":5},"title":"Sabnzbd Prerequisites","author":"Bullyrook","date":"January 27, 2021","format":false,"excerpt":"Before we get started we'll need to setup a usenet host and an nzb indexer. Usenet Host A usenet host is going to keep track of all of the usenet posts. NZB are .rar compressed files that broken into segments that are small enough to post into usenet. So we'll\u2026","rel":"","context":"In &quot;Home Networking&quot;","block_context":{"text":"Home Networking","link":"https:\/\/bullyrooks.com\/index.php\/category\/technology\/home-networking\/"},"img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]}],"_links":{"self":[{"href":"https:\/\/bullyrooks.com\/index.php\/wp-json\/wp\/v2\/posts\/706","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/bullyrooks.com\/index.php\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/bullyrooks.com\/index.php\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/bullyrooks.com\/index.php\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/bullyrooks.com\/index.php\/wp-json\/wp\/v2\/comments?post=706"}],"version-history":[{"count":4,"href":"https:\/\/bullyrooks.com\/index.php\/wp-json\/wp\/v2\/posts\/706\/revisions"}],"predecessor-version":[{"id":981,"href":"https:\/\/bullyrooks.com\/index.php\/wp-json\/wp\/v2\/posts\/706\/revisions\/981"}],"wp:attachment":[{"href":"https:\/\/bullyrooks.com\/index.php\/wp-json\/wp\/v2\/media?parent=706"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/bullyrooks.com\/index.php\/wp-json\/wp\/v2\/categories?post=706"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/bullyrooks.com\/index.php\/wp-json\/wp\/v2\/tags?post=706"},{"taxonomy":"course","embeddable":true,"href":"https:\/\/bullyrooks.com\/index.php\/wp-json\/wp\/v2\/course?post=706"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}